软件项目交付延期是比较常见的问题,主要的原因包括外部和内部两方面,外部包括客户的原因,或者第三方的原因,这个是比较难预料和控制的,我这里主要探讨内部的原因和相应的对策:
1. 项目估算和项目计划本身的问题。如果项目实际需要100个人月,但是估算只有90个人月,另外10个人月的工作量就需要额外的人力和时间来完成,势必导致项目延期。解决的方法是在项目的执行过程中,对项目的进度进行密切跟踪,及时发现偏差,采取措施补救,比如增加新的人手或者加班完成。
软件项目的过程评审
我们在管理软件项目时,常常会出现在测试阶段和用户验收阶段缺陷率太高,需要投入大量的人去修bug, 但是由于时间紧,往往改好一个bug,又引入新的bug,导致恶性循环,越改bug越多。最后项目延期,成本超出预算,员工对加班意见很大,客户也对交付的软件不满意。造成这样后果的原因很多,比如需求分析没有做好,设计没有做好等等,有一个原因大家往往容易忽视,那就是过程的评审(Review)。