首页 > 代码库 > 《人月神话》阅读笔记03

《人月神话》阅读笔记03

第三章  外科手术团队 

      这一章主要讲述了问题、Mills的建议、如何运作、团队的扩建。

     我常常重复这样的一个观点,需要协作沟通的人员的数量影响着开发成本,因为成本的主要组成部分是相互的沟通和交流,以及更正沟通不当所引起的不良结果(系统调试)。这一点,也暗示系统应该由尽可能少的人员来开发。实际上,绝大多数大型编程系统的经验显示出,一拥而上的开发方法是高成本的、速度缓慢的、不充分的,开发出的是无法在概念上进行集成的产品。

      Harlan Mills 的提议提供了一个崭新的、创造性的解决方案 。Mills 建议大型项目的每一个部分由一个团队解决,但是该队伍以类似外科手术的方式组建,而并非一拥而上。也就是说,同每个成员截取问题某个部分的做法相反,由一个人来进行问题的分解,其他人给予他所需要的支持,以提高效率和生产力。

     文中定义的开发团队在很多方面满足了迫切性的需要。十个人,其中七个专业人士在解决问题,而系统是一个人或者最多两个人思考的产物,因此客观上达到了概念的一致性。要特别注意传统的两人队伍与外科医生——副手队伍架构之间的区别。首先,传统的团队将工作进行划分,每人负责一部分工作的设计和实现。这节省了空间分配、磁盘访问等的劳动量,同时也确保了工作概念上的完整性。第二,在传统的队伍中大家是平等的,出现观点的差异时,不可避免地需要讨论和进行相互的妥协和让步。这两种团队组建上的差异——对问题不进行分解和上下级的关系——使外科手术队伍可以达到客观的一致性。另外,团队中剩余人员职能的专业化分工是高效的关键,它使成员之间采用非常简单的交流模式成为可能。

     就目前情况而言,还不错。然而,现在所面临的问题是如何完成5000人年的项目,而不是20或30人年规模的系统。如果整个工作能控制在范围之内,10 人的团队无论如何组织,总是比较高效的。

《人月神话》阅读笔记03