《人月神话》读书笔记(三)

第三章 外科手术团队

由一流人才组成的小型、精干的团队是非常高效的。优秀的程序员和较差的程序员的生产率有10倍之差!“需要协作沟通的人员数量影响着开发成本,因为成本的主要组成部分是相互的沟通和交流”。所以,在一般的中小型系统开发中,应该由尽可能少的人来开发,这是小型精干团队的优势。但是,在面对大型系统时,小型团队的生产率是有限的,“它太慢了”!

为什么会慢,布鲁克斯用了OS/360的开发规模来很好的描述了上述的问题:OS/360项目的总投入成员超过1000人,从1963年到1966年,总工作量花费了大约5000个人年。如果人月可以等量互换的话,假设200个人的团队,那么需要25年的时间,才能完成OS/360产品的开发。假设一个精干的10人小团队,每个人的开发效率是一般程序员的7倍,整体生产率的改进因子再提高7倍,那么5000/(1077)=10,这个10人小团队需要10年才能完成5000人年的工作。“一个产品在最初设计的10年后才出现,还有人会对它感兴趣吗”?“或者它是否会随着软件开发技术的快速进步而显的过时呢”?

对于系统的开发效率以及概念完整性来说,由少数干练的人员来设计和开发是最合适的。这也是小型系统能够保持高效和概念一致性的原因。但是对于大型系统来说,开发的困难度以及业务的复杂度,需要投入大量人手才能在时间上满足要求。

如何让小型精干的团队来开发,又能在时间上满足要求呢?

书上的建议是将大型项目的每一个部分由一个团队进行解决,而每个团队,则以类似外科手术团队的方式组建。每个团队都有一个主负责人(外科医生)进行操刀,由主负责人统一设计和思想,团队内部剩余成员分工明确各司其职,既保证了概念完整性,也保证了高效率的工作输出。整个系统的设计,则由各个团队负责操刀的外科医生共同进行讨论与输出,决定设计的人员就能控制在少数人的思路上,从而客观地实现整个系统的概念完整性。

每个人都拿着锤子,只要看到钉子就上去一通乱锤,钉子要么锤歪要么锤断。这种一拥而上的工作是高成本而且低效的。若要保证钉子锤的又稳又准,就应该只由一个人拿着锤子,他来指挥剩余的人放钉子,一锤定“型”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值