1,软件开发的过程是十分繁杂的,会遇到很多不可预料的问题,而很多过程是在假设的理想环境中计划的,没有考虑到世纪的突发情况,所以花费时间比预估时间长。
2,软件开发需要整个团队的参与,如果团队里面的开发人员水平不够高,达不到速率要求,开发速度就会相应下降。
3,开发团队的内部成员之间会产生意见矛盾,这个时候就需要时间去调和,统一意见,在这段时间内就会消耗一部分时间。
4,团队的任务分配不科学,可能参与团队设计的人很多,但是编码的人很少,就会严重延长软件开发速度。
5,团队的任务分配时间不科学,比如在软件开发的过程中,编程阶段耗费大量时间,后面测试等时间又不能缩短,所以会延长开发时间。
6,团队资源利用率不足,例如在软件设计过程中就可以开始编译一些代码和布线,但是整个团队并没有这样做 而是按照步骤一个一个进行,所以开发周期会比预估时间长。
7,资源不足,当一个团队的人手资源不足时,就会延长各个模块的开发周期,进而使整个过程周期延长。