图 1. 敏捷软件开发流程
整个过程中夹杂了很多在敏捷开发前己经出现的软件开发方法,包括极限编程(
!"##$)、(#%$)、特征驱动开发(&),测试
驱动开发(')等。这些方法在敏捷软件开发流程的各个阶段都有充分的体现
和应用。
例如,主要着重于项目管理,团队中的项目经理()需要在每个客户需求到来
的时候制定 的周期,定义每个 的目标、分派任务、进行监督、最后总结得失并开始计划
新的 。
相反,特征驱动开发和测试驱动开发主要被应用于 周期中。如果项目进行于开发新功能时期,
这个阶段主要推行特征驱动开发。所有测试和开发人员都将自己的工作重心放在新的功能上面,从开发和
测试两个方面来完成各自的任务。如果项目进行于测试新功能时期,这个阶段需要将工作的重点挪到测试
上来。所有的测试和开发人员都密切关注着目前版本的缺陷状况。测试人员需要在每天的站立会议
(())上报告前一个工作日发现的新缺陷情况,项目经理根据项目进度和缺陷严
重性来决定是否修复这些问题。需要及时修复的缺陷是目前 中的一个新任务,将由项目经理添加
到 *+上并通知开发人员去修复漏洞。
对于敏捷开发和测试中的审查过程,极限编程中的同行评审()思想得到了充分应用。
代码和文档的审查追求简单而高效。团队成员两两组成一对,互相评审;有时候,一个开发和一个测试人
员也可以组成一对,互相协作。这样能够有助于缺陷和问题在第一时间被抹杀在萌芽中。
敏捷开发还有以下几个关键概念 ,-(./:
迭代过程(.)
用户故事(0)
任务('+)
站立会议(1)
2 持续集成(3)
评论0
最新资源