- 敏捷过程概述
敏捷强调适应而非预测。
敏捷过程以人为中心,而非以过程为中心。
- 敏捷性软件过程类别:
极限编程(eXtreme Programming,XP)、SCRUM、动态系统开发方法(Dynamic System Development Method, DSDM)、水晶系列方法(Crystal Methodologies)、适配性软件开发(Adaptive Software Development ,ASD)、特征驱动开发(Feature Driven Development, FDD)等
- 敏捷过程的价值观
1) 个体和交互胜过过程和工具
人是软件项目获得成功最为重要的因素
合作、沟通能力以及交互能力比单纯的软件编程能力更为重要
合适的工具对于成功来说非常重要
团队的建构要比环境的建构重要得多,不能期望团队自动凝聚在一起。应该让团队基于需要配置环境。
2) 可以工作的软件胜过面面俱到的文档
过多的面面俱到的文档往往比过少的文档更糟
如何控制和把握软件创建与文档编制
软件开发的主要和中心活动是创建可以工作的软件
直到迫切需要并且意义重大时,才进行文档编制 (Martin’s first law of document)
如何衡量?
编写并维护一份系统原理和结构方面的文档
用户手册
新员工培训手册
编制的内部文档应尽量短小并且主题突出
3) 客户合作胜过合同谈判
客户不可能做到一次性地将他们的需求完整清晰地表述在合同中
为开发团队和客户的协同工作方式提供指导的合同才是最好的合同<