星期三, 四月 26, 2006

项目进度安排及跟踪


在六十年代后期,一位热情的青年工程师受命为一个自动制造应用软件项目"编写"计算机程序。选择他的原因非常简单,因为在整个技术小组中他是唯一参加过计算机编程培训班的人。这位工程师对汇编语言的IN和OUT指令以及Fortran语言略知一二,但是却根本不懂软件工程,更不用说项目进度安排和跟踪了。


他的老板给了他一大堆相关的手册,以及需要做些什么的口头描述。年轻人被告知该项目必须在两个月之内完成。


他阅读了这些手册,想好了解决办法,就开始编写代码。两周之后,老板将他叫到办公室询问项目进展情况。


"非常好",工程师以年轻人的热情回答道,"这个项目远比我想象的简单。我差不多已经完成了75%的任务。"


老板笑了,说道:"真是太棒了。"然后他嘱咐年轻人继续努力工作,准备好一周后再汇报一次工作进度。


一周之后老板将年轻人叫到办公室,问他说:"现在进度如何?"


"一切顺利,"年轻人回答说,"但是我遇到了一些小麻烦。我会排除这些困难,很快就可以回到正轨上来。"


"你觉得在最后期限之前能否完成?" 老板问到。


"没有问题,"工程师答道。"我差不多已经完成了90%。"


如果读者在软件领域中工作过几年,你一定可以将这个故事写完。毫不奇怪,青年工程师在整个项目工期内始终停留在90%的进度上,(在别人的帮助下)直到交付期限之后一个月才做完。


在过去的40年间,这样的故事被不同的软件开发者重复了成千上万次。我们不禁要问:"为什么?"


没有评论: