五、敏捷软件开发
1. 敏捷宣言。
个体和互动高于流程和工具
工作的软件高于详尽的文档
客户合作高于合同谈判
响应变化高于遵循计划
2. 常见的敏捷软件过程,SCRUM和极限编程。
SCRUM:
Scrum是迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管角色负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。
极限编程:
极限编程(XP)是一种全新而快捷的软件开发方法。XP团队使用现场客户、特殊计划方法和持续测试来提供快速的反馈和全面的交流。这可以帮助团队最大化地发挥他们的价值。
SCRUM中每日有站立式会议,有燃尽图
极限编程有多稿需求分析,多次小变更,增量反复试开发
二者的区别:XP的一个Sprint的迭代长度大致为1~2周, 而Scrum的迭代长度一般为 2~ 4周。
在开发中,SCRUM编程不允许修改需求,极限编程允许修改需求