人月神话3
第三章 外科手术队伍
Harlan Mills 对于小型团队的分工建议:
- 外科医生,即首席程序员或技术 leader,负责定义功能性能说明书、设计程序、编码、测试、书写文档。需要极高的天分、丰富的经验以及大量的系统知识。
- 副手,外科医生的后备,主要作为设计的思考者,沟通讨论方案。
- 管理员,也就是老板,负责充当与组织中其它机构部门的接口,在管理人员、薪酬、办公空间等方面具有决定权。一个管理员可以对应多个外科手术队伍。
- 编辑,外科医生负责文档的生成,编辑负责进行重新组织、提供各种参考、维护监督。
- 文秘,管理员和编辑各自需要一个文秘。管理员的文秘负责非产品文件,以及使项目目标一致。
- 程序职员,负责维护编程库中团队的技术记录,类似于文秘,但管理代码和编译后的文件。
- 工具维护人员,队伍中存在许多工具,外科医生评价这些工具的可用性和可靠性,工具管理人员负责这些工具的构建、维护和升级。常常需要开发一些实用程序。
- 测试人员,负责对外科医生编写的代码片段和工作进行测试,也负责设计测试数据,计划测试步骤,构建单元测试平台。
- 语言专家,外科医生主要负责系统设计与整体表现,语言专家则寻找简洁有效的使用语言的方式来解决复杂的问题。需要对技术进行研究。一个语言专家可以为多个外科医生进行服务。
如何运作:
- 外科医生和副手了解所有的设计和全部代码,保证工作概念完整性。
- 不需要对问题进行分解;队伍中具有上下级属性。
大型系统:需要一个系统架构师负责体系架构设计,然后每个部分交给一个外科手术队伍。
我本来以为外科医生是技术 leader,负责协调大家写代码,结果好家伙,十个人的队伍两个人把代码全写了。感觉这种结构分工极其明确,但非常依赖外科医生的专业性。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端