一、软件工程课程概述
1、计算机软件的变化
2、实践准备-协同开发方法与平台
3、实践准备-群体化代码标注平台
4、实践准备-群体化学习平台

二、从程序到软件
1、程序及其质量
2、程序质量保证方法
3、程序质量分析方法
4、软件及其质量
5、开源软件

三、软件工程概述
1、软件工程产生背景
2、软件工程的概念和思想

3、计算机辅助软件工程
4、软件工程视角下的软件开发
四、软件过程模型和开发方法
1、软件过程模型
2、敏捷软件开发方法
3、群体化开发方法
五、软件需求工程基础
1、软件需求
2、需求工程
3、需求分析方法学
4、需求工程的输出和评审
六、获取软件需求
1、获取软件需求的方法和过程
2、明确问题及基于软件的解决方案
3、导出和构思软件需求
4、描述和验证初步的软件需求
七、分析软件需求
1、分析软件需求的任务和过程
2、软件需求模型及UML表示方法
3、分析和确定软件需求的优先级
4、建立和分析软件需求模型
5、文档化、确认和验证软件需求
八、软件设计基础
1、软件设计
2、软件设计的过程和原则
3、结构化软件设计方法学
4、面向对象软件设计方法学
5、软件设计的CASE工具
6、软件设计的输出、评审和管理

7、软件设计管理
