Harlan Mills 的提议提供了一个崭新的、创造性的解决方案。
Mills 建议大型项目的每一个部分由一个团队解决,但是该队伍以类似外科手术的方式组建,而并非一拥而上。
也就是说,同每个成员截取问题某个部分的做法相反,由一个人来进行问题的分解,其他人
给予他所需要的支持,以提高效率和生产力。
简单考虑一下,如果上述概念能够实施,似乎它可以满足迫切性的需要。很少的人员
被包含在设计和开发中,其他许多人来进行工作的支持。它是否可行呢?谁是编程队伍中的
麻醉医生和护士,工作如何划分?让我们继续使用医生的比喻:如果考虑所有可能想到的工
作,这样的队伍应该如何运作。
外科医生:Mills 称之为首席程序员。他亲自定义功能和性能技术说明书,设计程序,
编制源代码,测试以及书写技术文档。他使用例如PL/I 的结构化编程语言,拥有对计算机
系统的访问能力;该计算机系统不仅仅能进行测试,还存储程序的各种版本,以允许简单的
文件更新,并对他的文档提供文本编辑能力。首席程序员需要极高的天分、十年的经验和应
用数学、业务数据处理或其他方面的大量系统和应用知识。
副手:他是外科医生的后备,能完成任何一部分工作,但是相对具有较少的经验。他
的主要作用是作为设计的思考者、讨论者和评估人员。外科医生试图和他沟通设计,但不受
到他建议的限制。副手经常在与其他团队的功能和接口讨论中代表自己的小组。他需要详细