在阅读敏捷开发过程中,发现一个很有意思的地方,就是敏捷提倡程序员开始预估自己的开发速度,再后来的迭代中得到一个真实的速度,那么下次的迭代计划则根据上次迭代的得到的速度数值来计划。这样就可以使计划始终按照最真实的开发速度来制定。敏捷开发通过这么一个简单的方法就实现了CMMI5的不断优化。我就将这种方法称为自适应。
还有一个印象很深刻的就是他关于计划的确定,计划的时候并不是把整个项目的计划全部列出来,而是详细的计划未来的一个迭代,粗略的计划未来两三个月,对于更长时间以后的事情则是有个大致的规划就可以。因为计划总是赶不上变化。我发现如果一个事情由很多的人来参与主导,而不是机器,那这件事情就有很大的变动性。
对于敏捷这样的计划我认为有以下几个好处:
1。这样的计划可以节约一开始的时间,让大家把时间投入到实实在在的工作中去而不是制定一大堆将来很有可能发生变化的计划。
2。还有一点就是就像上面提高的开发速度自适应,开始大家的计划都是基于估计来得,等真正的行动开始后,我们才会逐渐发现真实的数据,比如开发速度,比如与客户的沟通难度等,根绝实际的情况再进行计划,采取一些措施,这样的计划才不会沦为一张空纸,而是实实在在的指导。
3。最后一点就是对于开发团队的心理影响,你想如果一个团队的计划总是在不断更改,这会对团队造成什么样的影响,大家会想怎么我们的进度一直在delay,是不是现在项目失去控制了。