• 为什么项目开发永远缺乏合理的时间?


    在众多软件项目中,缺乏合理的时间进度是造成项目滞后的最主要原因,它比其他所有因素加起来的影响还大。导致这种普遍性灾难的原因是什么呢?

    1.期望一切运转良好

     

    首先,如何进行合理的估算,建立在一种悄无声息,但并不真实的假设之上——一切都将运作良好。但是从来不可能有这种一切运作良好的项目存在,

    因为执行者是人,而人就会犯错,理解偏差,对原有代码的不了解,无效沟通等等诸多问题都会在执行者身上出现。

    毕竟对于各种千奇百怪的需求,除非是之前做过,否则,你永远不知道会遇到什么问题,一句隐藏在需求文档中某个旮旯角的话语,有可能就要耗掉一个技术2天甚至3天的时间。

    而这,往往会在需求评审时被有意无意的忽略掉,毕竟最重要的需求评审在当前的需求开发中

    往往会被要求尽量缩短时间,“产品已经设计完了,你们技术尽快开始,月底上线,没问题吧!”

    2.混淆进度与工作量

     

    第二,我们采用的估算技术隐含地假设人和月可以互换,错误地将进度与工作量相互

    混淆。一个锅蒸一个包子需要3分钟,那么三个锅蒸一个包子呢,难道只需要一分钟么?

    当业务耦合度非常高的时候,某块任务往往只能交给一人来写,不然随之带来的沟通成本

    以及联合调试成本经常使得增加的人力做的更多的是无用功。但是往往上级领导为了表示对项目的重视,通常会向项目中增加人员,而增加的人员往往也是一头雾水,面对大量的代码无从下手,毕竟编程不是垒砖,需要在了解原有项目的基础上进行工作。

    3.估算无法贯穿始终

     

    因为需求工期一般是是估算,不是精确地计算,项目经理通常不会有耐心持续地进行估算这项工作。当项目中某个模块遇到棘手问题时,往往无法估算具体解决时间,即使估算后也无法增加时间,毕竟月底上线的要求犹在耳边回荡,这时候去要时间很可能换来的只有一句话“要时间没有,你们周六日加班吧!”。

    4.进度缺少跟踪和监督

     

    其他工程领域中,经过验证的跟踪技术和常规监督程序,在软件工程中常常被认为是无谓的举动。但是在软件工程方面,跟踪往往也是无效果,毕竟大多数企业加需求就像喝水一样轻松。领导知道不能让玻璃幕墙换成瓷砖,但是提的这个软件功能点需要多少时间,那可就没领导知道了。临到上线,领导打开网站一看,提几个新需求,往往就是几个不眠不休的日子。

    5.错误的解决方案带来的反效果

     

    当项目经理意识到进度的偏移时,下意识(以及传统)的反应是增加人力以及加班。

    方向错了,努力再多也是白费。新加入的人员往往需要一段时间才能形成战斗力,而长时间的加班往往带来的是员工的精神和身体上的疲倦,这两者往往都是饮鸩止渴。

    为什么项目开发永远缺乏合理的时间?上面五点之中有没有你们延期的理由?

  • 相关阅读:
    @responseBody注解的使用
    springmvc下的省市县三级联动
    select 动态添加option函数
    清空select标签中option选项的4种不同方式
    javascript删除option选项的多种方法总结
    js如何获取select下拉框的value以及文本内容
    如何设置select下拉禁止选择
    java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符
    转:通过他人完成任务的艺术
    ***周鸿祎谈创业:很多程序员高智商 但我一看就知道他们不会成功
  • 原文地址:https://www.cnblogs.com/wlzcool/p/14142005.html
Copyright © 2020-2023  润新知