- Level Professional
- Course by Peking University
- Offered by
About
欢迎大家选修北京大学开设的软件工程MOOC课程。 随着信息技术的发展,软件已经深入到人类社会生产和生活的各个方面。软件工程是将工程化的方法运用到软件的开发、运行和维护之中,以达到提高软件质量,降低开发成本的目的。软件工程已经成为当今最活跃、最热门的学科之一。 本次软件工程MOOC课程是一门导论性课程,在11周、21次课的时间里,我们将全面介绍软件工程所涉及的各方面知识,包括软件过程、软件需求、结构化分析和设计方法、面向对象分析和设计方法、敏捷开发方法、软件测试、软件项目管理、软件开发工具和环境。通过课程讲授,让大家初步了解软件开发和维护的方法学,为进一步深入学习各专题打下基础。 课程还包含了实践环节,通过一个小型软件项目,大家可以体验软件开发的各个环节,并形成项目管理的意识。 一、本次课程的安排如下: 第1周 软件工程概论、软件过程 第2周 软件需求 第3周 结构化方法1 第4周 结构化方法2 第5周 面向对象方法1 第6周 面向对象方法2 第7周 面向对象方法3 第8周 面向对象方法4、敏捷开发方法 第9周 软件测试 第10周 软件项目管理 第11周 软件开发工具和环境 二、课程实践 本课程提供了三个实践题目,每个实践题目已列出三点基本需求,可在课程介绍的讲义中查看。请结合自身兴趣爱好从中任选其一,在仔细阅读并思考基本需求的基础之上额外补充一个需求,以此作为系统需求完成本次课程实践。 课程实践分为三个阶段,分别在第4周、第7周和第10周进行结构化方法、面向对象方法、软件测试和项目管理的实践,完成相应的文档报告。 实践成绩由同学互评给出,每位同学需要给其他三位同学的报告评分。 三、课程评分方案 在新的课程版本里,我们将课程实践所占的分数从30%降低到了12%。但我们依然鼓励同学们积极地完成课程实践的练习,加深对课程的理解。 (1)平时Quiz占88% (2)课程实践占12% 祝大家学习愉快!Modules
课程介绍
- 2 Videos
2 Videos
- 课程宣传片
- 课程简介
软件工程概论
- 4 Videos
- 4 Assignment
4 Assignment
- 软件的定义及特点测验
- 软件工程的起源和概念测试
- 软件开发的本质和基本手段测验
- 软件工程框架测验
4 Videos
- 软件的定义及特点
- 软件工程的起源和概念
- 软件开发的本质和基本手段
- 软件工程框架
软件过程
- 4 Videos
- 4 Assignment
4 Assignment
- 软件生存周期过程的概念测验
- 软件生存周期过程的分类测验
- 软件生存周期模型的概念测验
- 常见的软件生存周期模型测验
4 Videos
- 软件生存周期过程的概念
- 软件生存周期过程的分类
- 软件生存周期模型的概念
- 常见的软件生存周期模型
软件需求-1
- 3 Videos
- 3 Assignment
3 Assignment
- 需求的作用测验
- 需求的定义测验
- 需求的分类测验
3 Videos
- 需求的作用
- 需求的定义
- 需求的分类
软件需求-2
- 4 Videos
- 3 Assignment
3 Assignment
- 需求发现测验
- 需求规约的概念和格式测验
- 需求规约的作用测验
4 Videos
- 需求发现
- 需求规约的概念和格式
- 需求规约的作用
- 【补充】项目的需求及需求规约
结构化分析方法
- 6 Videos
- 4 Assignment
4 Assignment
- 结构化分析方法概念的测验
- 结构化分析模型的测验
- 结构化分析过程的测验
- 需求规格说明书测验
6 Videos
- 结构化分析方法的概念
- 结构化分析模型
- 结构化分析过程
- 需求规格说明书
- 【补充】结构化分析案例
- 【补充】需求验证
结构化设计方法-1
- 4 Videos
- 3 Assignment
3 Assignment
- 结构化设计的概念测验
- 初始模块结构图的设计测验
- 初始模块结构图精化的原则测验
4 Videos
- 结构化设计概念
- 初始模块结构图的设计
- 初始模块结构图精化的原则
- 【补充】总体设计案例
结构化设计方法-2
- 3 Videos
- 3 Assignment
3 Assignment
- 初始模块结构图精化的启发式规则测验
- 接口设计测验
- 数据设计测验
3 Videos
- 初始模块结构图精化的启发式规则
- 接口设计
- 数据设计
结构化设计方法-3
- 4 Videos
- 3 Assignment
3 Assignment
- 详细设计工具测验
- 软件设计规约测验
- 结构化设计方法总结测验
4 Videos
- 详细设计工具
- 软件设计规约
- 结构化方法总结
- 【补充】软件设计评审
第一次课程实践
- 2 Readings
- 1 PeerReview
1 Peer Review
- 采用结构化方法对软件进行分析和设计
2 Readings
- 课程实践题目
- 第一次课程实践示例
UML-1
- 3 Videos
- 3 Assignment
3 Assignment
- 面向对象的概念测验
- UML概念测验
- 表达客观事物的术语-类测验
3 Videos
- 面向对象的概念
- UML的概念
- 表达客观事物的术语——类
UML-2
- 4 Videos
- 4 Assignment
4 Assignment
- 表达客观事物的术语-接口和其他测验
- 控制复杂性的术语——包测验
- 表达关系的术语——关联测验
- 表达关系的术语——泛化、细化、依赖及如何使用测验
4 Videos
- 表达客观事物的术语——接口及其他
- 控制复杂性的术语——包
- 表达关系的术语——关联
- 表达关系的术语——泛化、细化、依赖及如何使用
UML-3
- 3 Videos
- 3 Assignment
3 Assignment
- UML的模型表达工具-概述测验
- UML静态建模-类图测验
- UML动态建模-用况图测验
3 Videos
- UML的模型表达工具_概述
- UML的模型表达工具_静态建模——类图
- UML模型表达工具_动态建模——用况图
UML-4
- 3 Videos
- 3 Assignment
3 Assignment
- UML动态建模-顺序图测验
- UML动态建模-状态图测验
- UML总结测验
3 Videos
- 顺序图
- 状态图
- UML总结
面向对象分析
- 4 Videos
- 4 Assignment
4 Assignment
- 面向对象分析概述测验
- 识别类测验
- 识别属性和操作测验
- 识别对象之间的关系测验
4 Videos
- 面向对象分析概述
- 识别类
- 识别属性和操作
- 识别对象之间的关系
面向对象设计-1
- 3 Videos
- 3 Assignment
3 Assignment
- 面向对象设计概述测验
- 问题域的概念测验
- 问题域部分的设计测验
3 Videos
- 面向对象设计概述
- 问题域部分的概念
- 如何进行问题域部分的设计
第二次课程实践
- 2 Readings
- 1 PeerReview
1 Peer Review
- 采用面向对象方法对软件进行分析和设计
2 Readings
- 第二次课程实践题目
- 第二次课程实践示例
面向对象设计-2
- 2 Videos
- 2 Assignment
2 Assignment
- 人机交互部分的设计测验
- 控制驱动部分和数据管理部分的设计测验
2 Videos
- 人机交互部分的设计
- 控制驱动和数据管理部分的设计
面向对象编程
- 2 Videos
- 2 Assignment
2 Assignment
- 程序设计范型和面向对象编程语言的特点及发展测验
- 如何选择编程语言测验
2 Videos
- 程序设计范型和面向对象编程语言的特点发展
- 如何选择编程语言
敏捷开发方法
- 4 Videos
- 4 Assignment
4 Assignment
- 敏捷开发概述测验
- 极限编程测验
- 敏捷设计测验
- Scrum模型
4 Videos
- 敏捷开发概述
- 极限编程
- 敏捷设计
- Scrum模型
软件测试-1
- 3 Videos
- 3 Assignment
3 Assignment
- 软件测试的概念测验
- 软件测试过程模型和原则测验
- 白盒测试技术测验
3 Videos
- 软件测试的概念
- 软件测试过程模型和原则
- 白盒测试技术
软件测试-2
- 2 Videos
- 2 Assignment
2 Assignment
- 黑盒测试技术测验
- 软件测试的步骤测验
2 Videos
- 黑盒测试技术
- 软件测试的步骤
项目管理
- 3 Videos
- 3 Assignment
3 Assignment
- 项目管理的概念测验
- 项目管理的框架和要素测验
- 软件项目管理的概念测验
3 Videos
- 项目管理的概念
- 项目管理框架和要素
- 软件项目管理的概念
CMM
- 4 Videos
- 4 Assignment
4 Assignment
- CMM概念及发展测验
- CMM的基本内容测验
- CMM五级标准测验
- ISO9000标准测验
4 Videos
- CMM概念及发展
- CMM的基本内容
- CMM五级标准
- ISO9000标准
第三次课程实践
- 1 Readings
- 1 PeerReview
1 Peer Review
- 软件测试计划和项目计划的制定
1 Readings
- 软件项目开发计划示例
软件开发工具与环境
- 3 Videos
- 3 Assignment
3 Assignment
- 软件开发工具和环境的定义测验
- 工具集成模型测验
- 常用的软件工程开发工具和环境测验
3 Videos
- 软件开发工具及环境的定义
- 工具集成模型
- 常用的软件开发工具和环境
孙艳春