20190309,《思考,快与慢》(Thinking, Fast and Slow)第二十三节“从客观统计数据来预测(The Outside View)”

这一节和现实生活紧密相关。

对项目的预测,不论大小,往往都是基于“一切顺利”这个前提。所以,必须参照客观统计数据。

==============

最近公司一个项目在多次延期之后(悄无声息地)宣布失败。

当然,虽然我有十几年软件开发经验,但谁也不会考虑听听我的想法。

好几年前,公司决定让我做一个小项目。定下来两周(十个工作日)完成。

公司给出的方案是,设计3天,编码4天, 内测1天,上线和培训2天。

我说,如果按照10天排计划,项目上线后的短期维护至少占40%时间,也就是4天。上线和培训本身需要2天,设计1天,功能实现2天,内测至少1天。如果项目的设计和编码需要7天(而不是3天),那么,整个项目需要大约23天,也就是一个月。

这种项目规划当然让领导很不高兴。后来再有项目,就有意把我排除在外。

项目做了这么多年,我总结了几条规律。

对于两三周的小项目,把自己最准确的估计乘以2,就是真正需要的时间。对于6周以上的中等项目,必须乘以3或者4。如果一个项目超过3个月。。。。。。失败几乎是必然的。

那么,如何应对大一点的项目?拆分。把大项目拆成多个独立模块。每个模块都以实际上线并获得用户好评作为完成标志。任何一个模块都不应该超过6周。

No comments:

Post a Comment

20211004: 心目中近几十年最愚蠢的科研成果

1. 氢燃料汽车 先不考虑安全性。设计者有没有考虑过一公斤液氢的体积,以及容器的质量? 液氢来自于天然气,碳排放咋办? 绿色氢气? 先不考虑成本。 太阳能面板生成一百度电,转成氢气再用于汽车驱动,总损耗约 80% 太阳能面板生成一百度电,输送到电动汽车用于驱动,总损耗约 30%...