1 分钟阅读
你的 Bug 可能正是别人的功能
软件工程的魔幻定律(6)
Part II-II:人员与组织
Brooks’s Law:加人不解决问题,往往制造更多问题
Fred Brooks 在 1975 年的《人月神话》中提出:
“Adding manpower to a late software project makes it later.”
原因有两个:首先,新人需要时间上手(ramp-up),在这段时间里他们不仅没有产出,还消耗了老员工的时间进行知识传递。其次,团队规模增加,沟通成本呈指数级上升。n 个人之间有 n*(n-1)/2 条沟通路径。
这不是说永远不该扩充团队,而是说时机很关键:在项目初期、设计阶段扩充资源,效果远好于在交付截止日之前突击加人。 Brooks’s Law 经常和 Dunbar’s Number 一起理解:人类能维持稳定社会关系的上限大约是 150 人。超过这个规模的组织,需要刻意设计正式的沟通机制来补偿自然社会关系的失效。
graph LR
A[项目延期] -->|直觉反应| B[增加人手]
B --> C[新成员上手期]
B --> D[沟通成本指数增加]
C --> E[项目更延期]
D --> E