目录

1、首先,没有一个很有效的估算方法。

2、我们采用的估算技术隐含的假设人和月都可以互换,错误的将进度与工作量相互混淆。

3、由于对自己的估算缺乏信心,软件经理通常不会有耐心持续的估算这项工作。

4、对进度缺少跟踪和监督。

5、当意识到进度的偏移时,下意识的反应是增加人力。


在众多的项目软件中,缺乏合理的进度安排是造成项目滞后的最主要原因,它比其他所有因素加起来的影响还要大。

1、首先,没有一个很有效的估算方法。

在项目安排的初期,项目管理人员大多数都会秉持一种乐观的态度:一切都将运作良好,每一项任务仅花费它所“应该”花费的时间。但在很多时候这只是一个错误的假设,毕竟项目初期的安排是在信息比较缺乏的时候做出的,带有严重的主观主义色彩。导致项目计划变更的因素有很多。在单个的任务中,“一切都将运转正常”的假设具有可实现性,因为所遇到的延迟是一个概率分布曲线,“不会延迟”具有限定的概率,所以现实情况可能会像计划安排的那样顺利。然而大型的编程工作,或多或少包含了很多任务,某些任务间还有前后的次序,从而一切正常的概率变得非常小,甚至接近于零。

2、我们采用的估算技术隐含的假设人和月都可以互换,错误的将进度与工作量相互混淆。

第二种谬误的思考方式是:用人月作为衡量一项工作的规模是一个危险和带有欺骗性的神话。它暗示着人员数量很时间是可以互相替换的。 人员和时间的互换仅仅适用于以下情况:某个任务可以分解给参与人员,并且他们之间不需要相互的交流。比如CRUD等一些简单重复的工作。

绝大部分情况下,任务之间是需要协作的,所以我们需要考虑沟通成本。沟通所增加的负担有两部分组成:培训和相互的交流。如果使用成熟的微服务技术,那么业务培训相对于技术培训会花费较多的时间,而从需求梳理到概念设计,再到系统设计,再到编码,再到测试,这整个流程在沟通上花费的时间更多,并很快会消耗任务分解所节省下来的个人时间。这时项目管理人员会考虑添加更多的人手,但实际上有可能会延长了而不是缩短了时间进度。

对于测试人员而言, 由于系统的复杂程度不断增加,以及我们的乐观主义,每迭代一个大的版本(小版本更容易控制,所以提倡敏捷开发),通常实际出现的缺陷数量比预料的要多得多,因此,测试进度的安排常常是编程中最不合理的部分。

3、由于对自己的估算缺乏信心,软件经理通常不会有耐心持续的估算这项工作。

受限于客户的需求紧迫程度,会不断的调整任务的优先级(尤其是纯外包类的项目,公司内部平台类型项目相对变化较小),导致项目计划不断变更。

这时有两种解决方案。

(1)开发并推行生产率图表、缺陷率图表、估算规则等,而整个组织最终会从这些数据的共享上获益。

(2)或者,在基于可靠的基础的估算出现之前,项目经理需要挺直腰杆,坚持他们的估计,确信自己的经验和直觉总比从期望派生出的结果要强的多。

但是无论怎样项目经理都会疲于应对,需要极强的耐心和勇气。

4、对进度缺少跟踪和监督。

5、当意识到进度的偏移时,下意识的反应是增加人力。

项目进度严重落后的情况下,增加人手需要慎重。很多时候向进度落后的项目中增加人手,只会使进度更加落后。首先应该考虑的解决方法是

(1)重新安排进度。在新的进度中分配充分的时间(通常加班是一个选项)以确保工作能仔细、彻底完成,从而无需重新确定时间进度表,这要求项目经理有非常丰富经验的项目管理经验。

(2)消减任务。根据优先级或者重要程度调整项目计划,是一个简单且可操作性非常强的选项。

最后 ,如果项目进度严重落后是因为需求增加,任务模块变多,那么就非常需要添加响应的人手。

合理的进度安排--人月相关推荐

  1. 焦油坑和人月神话--人月笔记1

    焦油坑的意思说明了即使你足够强大,也无法摆脱束搏而沉到坑底.感觉用这个比喻来形容软件开发再合适不过了.当软件产品的规模增加的时候,复杂度成倍增长,从而导致这些要素之间不是单纯的线性关系,这是人月神话的 ...

  2. 《人月神话》(P11)为舍弃而计划

    实验性工厂和增大规模 化学工程师很早就意识到:在某个化学反应大规模投产之前必须进行实验性的生产. 软件系统的构建人员也面临同样的问题,但似乎从来没有吸取教训.总是设计.应用.然后把第一次开发的产品交付 ...

  3. 《人月神话》---1

    早就听说过这本书的大名了.在课上的时候老师就推荐我们去看这本书,这可是软件书中的战斗机,但是很惭愧,一直没有去了解这本书,甚至有时候碰到这本书,只是感觉很熟悉的样子,但是还是不知道到里面说的是啥.有一 ...

  4. 人月神话阅读笔记(二)

    今天对人月神话的正文部分进行了阅读,从人月神话这一部分中了解到缺乏合理的时间进度控制是造成滞后的主要原因,比其他任何事情影响的和还大,书中也对造成这种这种普遍灾难的原因进行了并进行了详细列举. 首先, ...

  5. 人月神话:微软开发模式和原则[转]

    原则一:将大项目分成若干里程碑式的重要阶段,各阶段之间有缓冲时间,但不进行单独的产品维护. 微软通常采用"同步-稳定产品开发法".典型项目的生命周期包括三个阶段: 计划阶段:完成功 ...

  6. 05人月神话阅读笔记

    人月神话这本书中主要在项目管理方面开刀的项目估算,组织结构和人员角色安排,团队建设和沟通,历史数据积累和建模,软件开发的方法论,风险和问题管理等相关的内容:在软件工程方面可以看到构架设计保证概念完整性 ...

  7. 人月神话贯彻执行_《人月神话》读后感与读书笔记

    <人月神话>讲了什么 一开始我觉得这本书重点是在软件工程,但后来我觉得更准确的说法是,<人月神话>是讲软件工程中人与团队关系的. 一个由个人完成的"小"程序 ...

  8. 人月神话(七)没有银弹-软件工程中的根本和次要问题、20 年后的人月神话

    第16章 没有银弹-软件工程中的根本和次要问题 没有任何技术或管理上的进展,能够独立地许诺十年内使生产率.可靠性或简洁性获得数量级上的进步. Part 1 摘要 所有软件活动包括根本任务-打造由抽象软 ...

  9. 软件工程毕业,在北京工作两年后再来理解《人月神话》

    软件工程毕业,在北京工作两年后再来理解<人月神话>, 高中很向往信息技术,在高考填报志愿时,就以第一志愿,报考了成都一所高校的软件工程专业,幸运录取.<人月神话>这本软件工程领 ...

最新文章

  1. 2020 图算法工程师面试基础、要点
  2. 1111B - Average Superhero Gang Power
  3. 快速配置MPLS ×××
  4. 教育机构如何提升在线教育技术能力? | 云+社区技术沙龙
  5. STM8L芯片启动时钟分频问题及发现(转)
  6. string转为char数组_StringBuilder的区别是什么?String是不可变?一点课堂(多岸学院)...
  7. Linux使用FlowScan
  8. linux环境下redis安装
  9. 踏踏实实学javascript--javascript中的变量
  10. javaScript中简单数据类型和复杂数据类型赋值拷贝的理解
  11. Rufus刻录大于4G系统镜像
  12. jenkins Process leaked file descriptors
  13. mac下用mysql执行sql文件完整
  14. 入网许可证_入网许可证查询
  15. 量化投资可转债策略--源代码
  16. asp.net的aspx页面<% %>、<%@ %>、<%# %>、<%= %>、<%$ %>的用法
  17. fabric sdk java_Hyperledger Fabric Java SDK最新教程
  18. 上海星尚传媒主持人刘彦池
  19. H323Client-2 H323视频会议开源生态
  20. linux之小技巧netstat

热门文章

  1. 测试: 如果一个方法的返回值类型是父类,那么能否返回一个子类对象.(该父类不管是类,抽象类还是接口)?
  2. MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理
  3. 六年级下册计算机电子板报教案,电子工业出版社六年级下册信息技术全册教案.doc...
  4. 智能硬件创业者的失败经历和感悟
  5. 2020年中国5G手机“期中摸底考试”:到底哪款是你的爱?
  6. android 揭示动画_有史以来最好的策略来揭示出色的想法
  7. Entity、PO、VO、BO、DTO用法
  8. 京东如何打造K8s全球最大集群支撑万亿电商交易
  9. 各种电子图书馆文章(PDF、PDG、CAJ)转为Word文档的方法
  10. 火拼《俄罗斯方块》解析