Melvin Conway, How do committees invent? (1968)

Committees Paper.

As Conway states in his retrospective summary:

To save you the trouble of wading through 45 paragraphs to find the thesis, I’ll give an informal version of it to you now: Any organization that designs a system (defined more broadly here than just information systems) will inevitably produce a design whose structure is a copy of the organization’s communication structure. This turns out to be a principle with much broader utility than in software engineering, where references to it usually occur. I invite you to read the paper, then look around to find applications. My current favorite is the complex of social issues encompassing poverty in America: access to labor markets, housing, education, and health care. After reading the paper, think about how the structures of our various governments affect their approaches to this system.

Does this principle also work inversely? In organising productive communities, especially those working on sourcecode, my working thesis has long been that the architecture of the code informs the architecture of the community. “Monolithic” architectures (which some would just say is another term for, “too big”) tend to processes that more modular ones would find at best hierarchical and probably unacceptable. And we all know how very hard it is to change a system of power, especially one that has operated more or less well enough for years, to something that implicitly limits the power of those who had it before.

Conway’s very famous paper is here.