TL;DR
システムを設計する組織は、その組織のコミュニケーション構造をコピーした構造の設計を生み出す、という法則。Mel Conway が 1968 年に Datamation 誌の論文「How Do Committees Invent?」で示した。
なぜ必要か
組織の形がアーキテクチャに表れることを知っていると、チームの分け方とシステムの分け方を一緒に考えられる。Clean Architecture では、チームや利害関係者の多い組織では、開発中にチームが互いに干渉しないよう、各チームの作業を独立させられるアーキテクチャが必要だとしている。
仕組み
チームが独立して動くには、システムを単独で開発できるコンポーネントに分割し、それぞれをチームに割り当てる必要がある。結果として、システムの構造はチームの構造、つまり組織のコミュニケーション構造をなぞることになる。
関連
出典
- Clean Architecture
- Conway’s Law - Mel Conway
- 「変更の理由」とは人間である