为什么软件开发周期总是预估的2~3倍?

理想很美好,现实很骨感,这是效率的问题还是能力的缺失,要认真设计出来一个系统进行软件开发是一个漫长且复杂的过程,不仅包含需求分析、设计、编码、测试、实施、维护等不同的过程,还涉及到开发工具、开发人员、项目管理、风险等众多因素,不同因素会对周期预估产生不同的影响。当低估项目周期时,会造成人力低估、成本预算低估、日程过短,最终人力资源耗尽,成本超出预算,为完成项目不得不赶工,影响项目质量。而项目周期估计过长,也会带来成本估计过高,人力资源利用不充分效率低下的后果。所以,过长过短的预估周期都是不好的。我们知道在软件开发的过程中总有可能出现各种各样的问题,比如需求分析中软件的功能可能达不到客户的需求,就像文章中所以提到的:看上去前方道路多曲折啊。走40英里路只能到「月亮湾」的一半。这么一看,整趟路途不是原来的400英里,而是500英里! 又或者是编码时一个小小的错误没有被检查出来,又或者是项目经理没有规划好任务的时间分配,导致有的模块时间太长,有的模块时间完全不够用,计划总是赶不上变化的。这些意外都是不可避免的,我们要做的是尽可能的减少损失,冷静分析我们的遇到的问题,所以,团队之间要相互合作,及时沟通,提高开发的效率;软件开发团队的经验不足,遇到问题时不能快速有效地解决。
根据上述情况:
我觉得产生软件开发周期总是预估的2~3倍的原因:
1.需求的不断变化与理解的差异,用户表达的是这样的,而程序员的理解是这样的,且客户需求不定,增加需求,组织协调不畅。
2.在需求分析阶段出现了错误,构造软件框架时做的东西没有也无法全量覆盖 ,导致与实际落地产品差距甚大。
3.项目经理没有处理好任务的时间分配。有的任务分配时间过长,浪费了时间,有的任务分配时间过短,没时间去完成。
4.开发人员对实现目标的可能出现的问题,估计不足,往往会低估问题的复杂程度。风险意识不足,没有意识到风险或者意识到风险响应错误不及时。
5.程序员大多是乐观的,而事实经常相反。
人的因素,技术因素,管理因素,分配因素等诸多因素的综合影响下,造成了开发周期的推迟。
解决的方法:
1.为系统测试安排足够的时间。
2.重新安排进度,或者重新安排功能优先级,优先级低的排到下一次迭代去做。
3.聘请优秀,能干,有开发经验的工程师,并且开发团队规模不超过10人。 由一个首席程序员完成问题的分解,其他人给予他所需要的支持。
4.内部自研的系统,需要认准一个系统,有专门的一个人在上面负责维护和同步这些信息,其他人跟自己相关的在做完的时候更新一下状态,如果没有更新负责的那个人要能够经常确认并进行更新。定期跟大家同步进度状态。
如此,术业有专攻,使效率和收益达到最大化。

文章地址:

为什么软件开发周期总是预估的2~3倍?https://www.sohu.com/a/132411358_355123

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小熊可可茶+

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值