Conway's Law
Conway's Law is the principle, articulated by programmer Melvin Conway in 1967, that organizations designing systems are constrained to produce designs that are copies of their communication structures. The law is not merely a sociological observation but a structural theorem: the interfaces between modules in a software system will mirror the interfaces between teams in the organization that builds it. A system built by four teams will have four major modules, with the quality of their inter-module interfaces determined by the quality of inter-team communication.
The principle has been validated empirically across multiple domains. Studies of the Linux kernel, the Apache web server, and large commercial codebases show that organizational boundaries predict module boundaries with striking accuracy. Microsoft's research on the Windows Vista project found that organizational distance between teams was a stronger predictor of post-release bugs than any technical code metric. The law implies that software architecture cannot be designed independently of organizational architecture; they are two views of the same system.
Conway's Law has become a foundational insight in the study of socio-technical systems and the design of organizational structure for technology teams. It suggests that attempts to improve software architecture by changing code without changing teams are fundamentally limited. The system and the organization that produces it co-evolve, and either can be a constraint on the other.