康威定律与多 Agent 协作:从组织结构到软件架构
潘忠显 / 2026-06-06
先提几个问题:
- AI 为什么能推动项目负责人制,削弱多年行之有效的前端组、后端组、产品组等纯职能型协作方式
- 为什么有些管理者会把垄断信息当成管理手段,对系统架构有什么影响
- 一人公司和多 Agent 协作,应该如何设计自己的软件架构
这些问题表面上分别属于组织管理、团队协作和 AI 时代的个人工作流,但背后其实都指向同一件事:软件系统会复制组织的沟通结构。这就是今天要聊的康威定律。
1. 康威定律是什么
康威定律(Conway’s Law)由计算机科学家 Melvin Conway 在 1967 年提出:
设计系统的架构,受制于产生这些设计的组织的沟通结构。
具体地说,系统如何拆分、接口如何设计、模块之间如何耦合,往往不只由所谓的“技术最优解”决定,也深受团队分工、沟通路径和权责边界影响。
这条定律不仅适用于大型企业,也适用于几人的小团队、一人公司(OPC),以及今天越来越常见的多 Agent 软件协作模式。
组织决定架构
比如公司有三个彼此独立的团队,前端、后端、DBA,那么系统很容易自然长成三层结构:
Frontend Team → Frontend App
Backend Team → Backend Service
DBA Team → Database Layer
这并不一定是坏事。问题在于,如果组织边界和业务边界不一致,代码结构就会被迫服务于组织结构,而不是服务于用户价值。
沟通路径即接口
系统组件之间的接口,本质上是团队之间沟通边界的物理体现。
团队之间沟通顺畅,接口通常更清晰;团队间缺少上下文,接口容易变得僵硬、重复或含糊;团队间互不信任,系统里往往会出现过度防御、重复校验和绕路设计。
API、协议、数据库表、消息队列,很多时候都是组织沟通方式在代码里的投影。
逆康威定律
逆康威定律(Inverse Conway Maneuver)的思路是:如果你想要某种架构,就先设计与之匹配的组织结构。
例如,想要高内聚、低耦合的服务架构,就不能只建立按技术层分工的团队,而应该建立能独立交付业务价值的跨职能小团队。
亚马逊的“两块披萨团队”(Two-Pizza Teams)就是典型实践:团队规模足够小,能力足够完整,可以对一个业务域或服务端到端负责。
2. 为什么项目制流行
复杂系统必须拆分,否则没有人能独自理解、开发和维护。但问题在于:按什么方式拆?
过去很多组织习惯按技术层拆分:产品、策划、前端、后端、数据库、测试、运维。但是最近,许多组织开始推行项目负责人制,试图让一个小团队对业务结果端到端负责,而不是让每个职能组只对自己的局部交付负责。
真正值得讨论的是:为什么项目负责人制在当下重新流行?AI 又在其中起了什么推动作用?
传统组织架构的优劣
传统的前端组、后端组,本质上是一种按专业能力建设资源池的组织方式。这样的分工并不是错误,甚至长期以来都非常有效,因为它降低了专业培养、资源调度和管理复制的成本,而一些同类问题也容易沉淀规范和最佳实践。
但它也有典型代价:端到端责任被切碎了。一个功能交付慢,不一定是某个人慢,而可能是跨组排期、等待、沟通、返工和优先级不一致共同造成的。
项目负责人制
康威定律提醒我们:如果团队按技术层沟通,系统就容易按技术层耦合;如果团队按业务闭环沟通,系统就更容易形成高内聚的业务模块,围绕用户需求路径组织起来的产品。
项目制不再让每个职能组只对自己的局部交付负责,而是让小团队转向围绕项目或业务结果闭环的模式,对端到端结果负责:
项目负责人需要:需求澄清 → 技术协调 → 进度推进 → 验收验证 → 上线交付
为什么 AI 推动项目制
项目负责人制并不是新概念,但过去并不容易推行,原因在于它对人的综合能力要求很高:听得懂业务,拆得出需求,懂技术方案,协调前后端、测试和运维,能识别风险,推动验收,整理文档和汇报,盯住质量和上线。
这样的人在组织里相对稀缺。相比之下,按职能组拆分更容易规模化管理,因为它降低了单个人的综合能力要求:每个人只需要对自己专业领域负责。
AI 出现后,跨职能理解和协同成本下降了,项目负责人制的可行性提高了。相比之前,更多人可以借助 AI 获得跨产品、技术、测试和交付的辅助能力。
过去,项目负责人容易变成新的“人肉路由器”;现在,AI 可以承担一部分解释、整理、检查和同步工作,让负责人更像决策者和协调者,而不是消息搬运工。这显著降低了这种组织方式的成本。
3. 信息封锁与“防守型管理”的代价
本来几个人的小团队沟通成本低,所有人抬头就能同步上下文。但有些团队领导会**控制信息传递,几乎每件事情都只让少数几个人知道,不进行全员同步。**组长将自己变成团队中唯一的“信息路由器”和“全局视角持有者”。
在传统管理认知中,信息 = 权力。这种人为制造的信息不对称,能让管理者通过掌握独家信息来树立权威,提高自己的不可替代性,也能通过限制横向交流,降低团队成员挑战其决策和管理权威的可能。
从组织行为学与康威定律的角度来看,这种试图人为切断或限制沟通路径的做法,对系统架构和团队健康度会产生极大的负面影响。
对系统架构与技术债的直接伤害
康威定律表明,限制了沟通,就限制了系统的设计。
-
系统碎片化与不一致:如果组长让 A 开发模块 1,让 B 开发模块 2,而 A 与 B 之间信息不互通,那么两个模块在逻辑上极易产生冲突、重复设计或接口对不齐。
-
隐形依赖导致崩溃:软件开发中存在大量隐性依赖,例如公共工具类、缓存策略、权限判断、数据口径等。缺乏全局上下文的开发者进行微调,很容易在上线前夕引发连锁问题。
-
团队智慧无法进入架构决策:越重要的架构,越需要充分暴露给团队讨论。因为架构不是某个聪明人的脑内设计,而是业务约束、历史包袱、边界场景和未来演进方向的综合结果。如果核心方案只让少数人知道,一线经验和历史教训就很难反馈进系统设计里。
-
架构决策容易偏执化:当一个人长期垄断全局信息,又缺少来自团队的挑战和校正时,很容易把个人偏好误认为系统规律,把局部经验误认为全局真理。久而久之,架构会越来越服务于个人控制感,而不是服务于业务复杂度和团队协作效率。
-
技术债失去早期暴露机会:技术债最好的处理时机,往往是在方案讨论和边界设计阶段。信息封锁会让问题直到开发、联调甚至上线前才暴露出来,届时团队只能通过补丁、绕路和临时约定来修复。
对团队健康度的影响
这种信息封锁表面上是在加强管理,实际上是在破坏系统所需的沟通结构,并对团队健康度产生持久伤害。
- 成员成长受限:技术人员需要通过理解业务背景、参与方案讨论、看到他人的判断过程来成长。如果长期只接收碎片任务,就很难形成系统性思维和端到端负责能力。
- 团队信任被消耗:当信息只在少数人之间流动,其他成员会逐渐意识到自己不是被信任的合作者,而只是执行者。时间久了,主动性、责任感和表达意愿都会下降。
- 优秀人才流失:资深技术人员重视业务上下文、技术判断权和参与感。当他们长期被排除在关键讨论之外,通常会选择离开。
- 团队结构劣化:优秀的人走了,留下来的往往是少数核心圈层成员,以及更依赖指令、较少挑战决策的人。团队会从一个能互相启发、互相校正的协作组织,退化成被动等待指令的执行队列。
4. OPC 与多 Agent 协作中的康威定律
前面讨论的是多人团队里的沟通结构。换到一人公司和多 Agent 协作场景,康威定律并没有消失,只是沟通对象变了。
写这篇文章的直接起因,是我上个月在独立开发一个有前后台的应用程序,当时在考虑一人开发的服务该如何设计软件架构;另一个触发点是使用 Codex 时,我该创建哪些 Agent,它们又该如何协同工作。
OPC:和未来的自己沟通
当团队规模缩小到一人公司时,康威定律并没有消失,只是从“人与人之间的沟通结构”,变成了“个人如何和未来的自己、不同工作角色、工具链沟通”。
系统架构成为开发者大脑模型的直接投影。
一人公司里,开发者需要在多个角色之间频繁切换:产品、前后端、测试、运维等。角色切换越频繁,越需要清晰的模块边界来降低认知负担。
OPC 开发的软件架构也需要进行模块化,不是为了证明自己懂架构或者追求“看起来高级”的设计,而是为了降低未来沟通成本。现在的你写下清晰的接口、配置、测试和文档,本质上是在帮未来的自己恢复上下文:下个月还能看懂,半年后还能修改,出问题时能快速定位,AI Agent 也能读懂边界并安全修改。
同时,一人公司也不是真的只有一个参与者。云服务、CI/CD、监控、AI coding 工具,都是某种意义上的“隐形团队成员”。工具的能力边界、失败模式和协作方式,也会反过来塑造系统架构。
多 Agent:设计临时软件组织
多 Agent 协作可以看作一种临时软件组织。它的分工和沟通结构,最终也会投射到代码里。
现在 Codex 等 AI coding 工具,已经开始支持把任务拆给多个 Agent:有的 Agent 负责理解需求,有的负责阅读代码,有的负责实现,有的负责 Review,有的负责测试和验证。每个 Agent 都可以在相对独立的上下文里工作,再通过共享文档、代码 diff、测试结果和人工审批完成交接。
这意味着,软件开发中的组织结构也开始存在于人和 AI 工具共同组成的临时协作网络里。
如果 Agent 组织结构清晰,系统更容易形成清晰的需求来源、可审查的技术方案、可追踪的代码变更和可验证的测试报告。反过来,如果 Agent 自由发挥,没有共享工件和审批点,系统也会复制这种混乱:重复入口、多套状态来源、相似 API 并存、需求和实现脱节。
设计多 Agent 工作流时,可以把康威定律当成检查清单:
- 是否有总控 Agent 维护流程和范围?
- 是否有角色负责端到端用户价值,而不是只按技术层拆任务?
- API、PRD、测试报告是否是共享工件,而不是聊天里的口头约定?
- Review 和 QA 是否能反向约束开发,而不是只做尾部补救?
- 人类审批点是否足够明确,能防止 Agent 自己生成产品方向?
其中最关键的角色是 Orchestrator。它很像项目负责人:不一定亲自写最多代码,但要维护任务范围、上下文状态、角色分工、交接顺序和审批边界。没有 Orchestrator,多 Agent 很容易变成多个聪明节点各自发挥,最后产出一堆局部正确但整体冲突的结果。
所以多 Agent 协作的核心不是“多找几个 AI 干活”,而是设计一个健康的临时组织。AI 的能力越强,越需要明确分工、交接、审查和审批,否则“看似高效的自由发挥”会被转化成软件里的重复入口、隐藏耦合和未批准功能。
一句话:你想要什么样的软件,就先设计什么样的 Agent 沟通结构。
5. 总结
康威定律不是一句“组织影响架构”的口号,而是一条可以主动利用的设计原则。
对大团队,它提醒我们组织边界会成为系统边界;对小团队,它提醒我们个人知识边界会成为模块边界;对一人公司,它提醒我们架构是大脑模型和工具链的投影。
理解了康威定律,也让我们明白了为什么组织开始推行项目负责人制:让沟通结构围绕业务结果闭环,减少跨职能协作中的等待、误解和返工。
它同样能帮助我们编排 Agent 协作:多 Agent 工作流不是简单调用工具,而是在设计一个临时组织。Agent 的分工、交接、审批和共享工件,会直接塑造软件的结构和质量。组织设计清晰,软件才更可能清晰。
