| 教学单元 |
单元教学内容与目标 |
| 敏捷软件开发概述(3学时) |
敏捷方法是一个思想宝库,它让我们以不同的方式来看待软件开发,从而加深对软件开发的理解。这一部分内容介绍敏捷开发的价值观和原则,指出它能带来哪些改进。 |
| 极限编程(3学时) |
极限编程(XP)是宣传得最多的敏捷开发方法,因为它提出了一些具有争议的实践。这一部分逐个讲解这些实践,探究这些实践的本意是,执行时可能出现什么问题。 |
| Scrum(3学时) |
Scrum是商业开发采用最多的敏捷方法,因为它强调交付客户价值。它的冲刺会议、每日会议、复查反省会议也很有特点。此外,它还具有伸缩性,适合大型项目开发。这一部分精讲Scrum的人员角色和过程,让Scrum真正为客户带来价值。 |
| 特征驱动开发(3学时) |
特征驱动开发以特征为中心,按特征进行设计、实现和测试,按特征来组织开发团队,按特征来监督进度。它还采用了彩色UML图的方式,强调更好的面向对象(OO)设计。这一部分讲解如何将OO方法与敏捷方法结合起来。 |
| 测试驱动开发(3学时) |
让需求可测试,让测试可以自动执行。测试驱动开发是最有影响力的思想之一,它从根本上改变了许多程序员的开发习惯,从而带来更高的质量和开发效率。但这一步转变是困难的。这一部分讲解如何实现测试驱动的转变。 |
| 持续集成(2学时) |
大规模开发项目的集成是很大的问题。现在的软件越来越复杂,构成产品的构件越来越多。要保证这样的产品能够集成在一起,实现预期的功能,需要投入大量的努力。持续集成的思想就是以水滴石穿的力量,实现不可能的任务。这一部分讲解持续集成的概念、方法和工具。 |
| 总结(1学时) |
课程总结,解答学员提问。 |