【2020-10-12】通知:项目选题安排
【2020-10-12】通知:本周博客作业 — 深度学习和 pytorch 基础
【2020-10-25】通知:本周代码实战作业 — CNN实战 ,请同学们务必按时完成项目选题
【2020-11-15】通知:Alpha冲刺博客作业
【2020-11-19】通知:11月23日小组汇报安排
【2020-11-23】通知:11月30日小组汇报安排
【2020-12-13】通知:考虑到大家最近在准备六级,beta (2/6) 的作业延迟提交。1214课上安排一次小汇报,各小组在线填写PPT(共享文档),1 到 2页即可,交流下最近项目进展情况: https://kdocs.cn/l/cgk4RSRedyE6
一、课程基本情况
1. 课程的能力培养目标
- 软件能力:按照工程化方法来开发高质量复杂软件系统的能力
- 软件工程基础课程:通过团队协作使用现代软件工具按照软件工程方法来开发高质量并且可用的复杂软件系统的能力
- 复杂软件系统:具有一定复杂性、需要团队协作来完成的软件系统
- 团队协作:4-6人团队协作
- 软件工程方法:构建一个有效协作的功能团队,综合运用极限编程、测试驱动、敏捷等软件工程方法和最佳实践,通过有效项目管理按计划的开发满足典型用户需求的可用软件方法
- 高质量和向可用:能够使用技术性手段来确保所开发软件的质量,能够通过技术性手段来证明软件的可用性并获取用户的反馈
2. 课程的组织结构
- 课堂教学:研讨性教学、课堂练习、作业点评、讨论、团队项目汇报
- 课后作业:博客作业
- 项目实践:团队项目 (15周)、总结回顾 (2周)
- 成绩构成:项目成绩30% + 随堂测验10% + 考试成绩60% + 奖励成绩 - 惩罚成绩 - 缺勤
3. 项目实践说明
4. 项目选题
三、教学日历和课件
周次 | 讲授内容 | 课件 |
1 | 课程简介,第1章 软件工程概述:软件危机,软件工程概念、原理、方法学,生命周期阶段 | 【00-课程概述】 |
2 | 第1章 软件过程:瀑布、螺旋、增量、RUP模型,极限,XP,微软过程 | 【02-软件过程】 |
3 | 第2章 可行性研究:任务,系统流程图,数据流图,数据字典,成本/效益分析方法 | 【03-可行性研究】 |
5 | 第3章 需求分析:任务,获取需求方法,实体-联系图,状态转换图,层次方框图 | |
6 | 第3章 需求分析:IPO图,验证软件需求的方法。项目组介绍需求,点评 | |
7 | 第5章 总体设计:层次图和HIPO图、结构图;面向数据流的设计方法 | |
8 | 第6章 详细设计:程序流程图、盒图、PAD图、判定树、判定表;Jackson图;程序复杂程度的定量度量 | |
9 | 第7章 实现:编码,软件测试的目标、准则、方法、步骤;单元测试;集成测试过程及方法;白盒测试 | |
10 | 第7章 实现:黑盒测试技术;调试过程、途径;软件可靠性的概念及估算方法 | |
11 | 第8章 维护:定义,特点,过程,可维护性 | |
12 | 第9、10章 面向对象方法学引论:对象概念,对象模型、动态模型、功能模型;三种模型之间的关系 | |
13 | 第10、11章 面向对象设计、实现,设计准则,重用,服务,关联,优化 | |
14 | 第12章 项目管理:估算软件规模;工作量估算;估算开发时间、工程进度、关键路径、机动时间 | |
15 | 第12章 项目管理:人员组织,软件质量保证,配置管理,能力成熟度模型 | |
16 | 实践项目分组演示,点评 | |
17 | 实践项目分组演示,点评,课程展望,软件工程未来发展概述 |
四、课程博客作业
博客园班级地址: https://edu.cnblogs.com/campus/ouc/software
- 【20200921】第1周博客作业:“乘风破浪的程序员小哥哥小姐姐” 成团时刻
- 【20201011】第2次作业:深度学习和 pytorch 基础
- 【20201018】第3次作业:卷积神经网络
- 【20201025】第4次作业:CNN实战 给同学们提供一个示例解答:https://www.cnblogs.com/Arsene-W/p/13377011.html
- 【20201102】第5次作业:项目选题
- 【20201115】第6次作业:Alpha冲刺(1/6)
五、相关慕课
六、联系方式
- 高峰 gaofeng@ouc.edu.cn