极限编程开发过程说明

 

极限编程的特点:

多次迭代,并持续集成;短交付周期;对测试的极端重视;结对编程。

 

一个项目周期包括多个交付周期,一个交付周期又包括多个迭代周期, 一个迭代周期包括多个集成,如下所示:


 

每一个迭代周期在24个星期不等。

每一个迭代过程如下:

 

 

过程说明:

1.       迭代计划,确定本次迭代要实现的功能

召开迭代计划会议,参与人员包括团队全体人员。策划确定需要实现的功能,并对需要实现的功能进行优先级排列,挑选出本次迭代要实现的功能,由开发人员来确定功能的实现顺序,随后,将功能分解成若干个小的任务(可以在一到两天内完成的小 <script src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" type="text/javascript"></script> <script src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" type="text/javascript"></script> 功能),让所有的开发人员签订各自的任务,估算任务完成所需的点数,并利用功能卡片在功能卡片上记录相对完成时间,为了估算的准确,可将大的功能分解成更小的任务。

迭代计划会议结束,应该得出如下结果:本次迭代要完成什么;需要完成功能的优先级列表;评估任务并安排任务。

<script src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" type="text/javascript"></script> <script src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" type="text/javascript"></script> ;> 

2. 开发阶段:

在开发阶段是个不断重复的一个开发过程,以每天为单位,它包括:每日站立会议, 采用结对编程的方式,并采用测试驱动开发(TDD)来实现要完成的任务。当开发人员所有待测试清单(to do list)里要测试的任务100%通过的时候,将代码提交到版本控制系统(SVN),这时自动构建系统(CruiseControl)来编译整个项目,运行所有的测试并将测试结果反馈给开发人员,如果有新的集成,测试人员会进行测试并向开发人员反馈bug,,开发人员修正bug。此过程循环往复,直到完成所有功能或到达迭代日期为止。

 

3.       本次迭代结束:

对本次迭代工作进行验收。演示已完成的功能,并获得反馈。将已完成的任务

在迭代指定的日期到来之时,即使没有完成所有的功能,也要结束这次迭代。统计这次迭代完成的功能的估算值,来得出本次迭代的开发速度,这个开发速度会被用于下一次迭代作参考,这样,根据估算值对下一次迭代所需的完成的任务数就会更准确。

花上半个小时到一个小时的时间进行反思与改进,列举哪些工作方法是行之有效的,哪些是无效的,以在下一次迭代中改进。

 

4. 下一次迭代的开始:

对上一次迭代开发出来的可运行的软件进行评估,并确定新的需求(除了新的需求外,可能还有就是系统架构的改进等),然后从1开始继续以上的过程,直到整个项目完成为止。

 

注:在项目最开始时,会对在需求会议上确定所有要实现的功能,并粗略地估计整个项目完成的时间,这个时间可能是不准确的(原因有团队在专业技能与经验上的不断增强, 需求的变化等),不过在几次迭代后, 对于时间的把握会更精确。

 

       以迭代为单元持续集成,较短的发布周期,整个软件系统都在不断地改进,由于是持续地小步地改进,使软件的BUG都会及时发现并由于有测试代码的存在,使得BUG的修复也是在开发者的掌控之中,项目质量得到了提高。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值