首页 › 组织设计与治理 › 康威定律
组织设计与治理 · 康威定律

康威定律

团队怎么沟通,做出来的东西往往就长成什么样。

Conway's Law◷ 约 3 分钟▤ 2 个真实故事换成 AI 也一样在知识地图里看它和谁相连 →

玩这一课(2 分钟)

一家承接科研合同的公司,有八个程序员、两份活:一个 COBOL 编译器,一个 ALGOL 编译器,都是当年的编程语言。

经理们估了估工作量,把人分开:五个人做 COBOL,三个人做 ALGOL。

做出来的 COBOL 编译器分五个阶段运行,ALGOL 编译器分三个。

没有谁刻意这么设计。程序员梅尔文·康威把这个例子写进了 1967 年的一篇论文,旁边还放了另一个:两个军种奉命合作开发一套能满足双方需要的武器系统。康威写道:「费了好大力气,他们做出来的,是一份自己组织架构图的复制品。」

藏在倒数第三段的论点

康威把这篇《委员会是怎么发明东西的?》投给了《哈佛商业评论》,被退了稿。按他自己的说法,理由是他「没有证明」自己的论点。

他转投当时最主要的计算机杂志《Datamation》,1968 年 4 月登了出来。几十年后他自嘲,这篇文章最了不起的地方,是「论点藏在倒数第三段」居然也发表了。论点是这样的:设计系统的组织,做出来的设计,注定是这个组织沟通结构的复制品。

道理很实际。做任何大东西,都得决定一块在哪结束、下一块从哪开始。坐在一起、天天说话的人,可以越过这条线一起干。分在不同组、要通过经理和会议才能对上话的人,就需要这条线干净利落,好各干各的。于是产品的接缝,落在人和人不再天天说话的地方。

几年后,弗雷德·布鲁克斯在《人月神话》里引了这个想法,叫它「康威定律」,名字就这么叫开了。成体系的证据,来得要晚得多。

四十年后,在哈佛

2000 年代,哈佛商学院的艾伦·麦科马克、约翰·鲁斯纳克和卡丽斯·鲍德温,决定检验他们所说的「镜像假说」。他们找来一对对功能相近的软件:每一对里,一个出自公司内部联系紧密的团队,另一个出自松散分布的群体,比如开源项目。

然后他们测量:改动一个文件,可能波及系统的多大一片。Sun 的 Solaris 操作系统,这个数字超过 22%,平均改一个文件,可能牵动两千四百多个别的文件。由一个松散社区共同开发的 Linux,大约是 7%。

研究者写道:「我们考察的每一对里」,松散组织做出来的产品「都明显更模块化」。差距最大到了八倍。

这是一对对配好的比较,说明的是一个很强的规律,不是放之四海皆准的定律。规律正是康威描述的那个:没法隔着桌子探身过去说话的团队,做出来的软件,各块之间也不怎么互相探身。

把定律倒过来用

既然产品照着组织长,那就可以先把组织排好,再让产品长成想要的样子。按一位前员工的说法,2002 年前后,杰夫·贝索斯在亚马逊大致就是这么干的:命令每个团队只能通过公开的服务接口和别的团队打交道,不照办就开除。亚马逊的软件后来被拆成一个个独立的服务,每块由一支小团队负责。

一支由 AI 组成的团队

做 AI 系统的人,现在也开始画组织架构图了。MetaGPT 是一个研究用的编程智能体框架,它在「我们的软件公司」里设了五个角色:产品经理、架构师、项目经理、工程师、测试工程师,活在他们之间按作者所说的「流水线模式」传下去。团队结构是照着人的公司刻意抄过来的。

把康威的想法搬到智能体身上,是一个合理的推测,还不是检验过的结论。不过它给了一个值得问的问题:角色之间每交接一次,就可能留下一道接缝。这些接缝,是你想要产品长出来的样子吗?

客户走的路

再设想一家从没把定律倒过来用的银行。活期账户在一个 App 里,信用卡在另一个 App 里、还要单独登录,房贷那边只接电话。客户要在三者之间挪钱,就得跨过经理们之间的那几道线。每个团队都把自己的活干得很好,客户却像在组织架构图里穿行。

先看几件事

玩一玩

出处

  1. Melvin E. Conway, How Do Committees Invent?, Datamation, April 1968 (reprinted on the author's site)
  2. Melvin E. Conway, Conway's Law
  3. Alan MacCormack, John Rusnak and Carliss Baldwin, Exploring the Duality between Product and Organizational Architectures: A Test of the Mirroring Hypothesis, Harvard Business School Working Paper 08-039
  4. Sirui Hong et al., MetaGPT: Meta Programming for a Multi-Agent Collaborative Framework, arXiv:2308.00352
  5. Steve Yegge, Stevey's Google Platforms Rant, Google+, October 2011 (archived copy, University of Washington CSE 452)
  6. GeekWire, Classic rant by Google engineer rips apart Google+ and describes Jeff Bezos as a micromanager, October 13, 2011
  7. Werner Vogels, Modern applications at AWS, All Things Distributed, August 28, 2019