Browse Definitions :
Definition

Conway's law

Contributor(s): Ivy Wigmore

Conway’s law is an observation that the design of any system is significantly affected by the communications structure of the organization that develops it. The law is commonly associated with software development but is considered applicable to systems and organizations of all types.

Melvin Conway, a computer scientist and programmer, developed his theory in 1967 as the basis for a paper, "How do committees invent?" that he was submitting to the Harvard Business Review. Here's the original formation: "Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure."

HBR rejected the paper on the grounds that Conway had not proved his thesis; the paper was published in April 1968 in Datamation, the leading IT magazine of the time. Fred Brooks cited the observation in his article, "The Mythical Man-Month" and referred to it as Conway's law.

The Harvard Business School subsequently conducted a study, "Exploring the Duality between Product and Organizational Architectures," to attempt to prove Conway's thesis. Researchers compared the codebases of multiple applications of the same type that had been created by loosely-coupled open source development teams and tightly-coupled teams. They found that the tightly-coupled teams tended to develop tightly-coupled, monolithic codebases while the loosely-coupled open source teams tended to create more modular, decomposed codebases. It has been observed, similarly, that if multiple teams are working on program modules and inter-team communication is poor, the interfaces of the program will reflect that fact.

Conway's law is often mentioned in reference to the DevOps trend, which is based on effective communication and collaboration among development and operations teams.

See Dan Slimmon's presentation, Conway's Law: The Skeleton of DevOps:

This was last updated in October 2016

Continue Reading About Conway's law

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchCompliance

  • smart contract

    A smart contract, also known as a cryptocontract, is a computer program that directly controls the transfer of digital currencies...

  • risk map (risk heat map)

    A risk map, also known as a risk heat map, is a data visualization tool for communicating specific risks an organization faces. A...

  • internal audit (IA)

    An internal audit (IA) is an organizational initiative to monitor and analyze its own business operations in order to determine ...

SearchSecurity

SearchHealthIT

  • Health IT (health information technology)

    Health IT (health information technology) is the area of IT involving the design, development, creation, use and maintenance of ...

  • fee-for-service (FFS)

    Fee-for-service (FFS) is a payment model in which doctors, hospitals, and medical practices charge separately for each service ...

  • biomedical informatics

    Biomedical informatics is the branch of health informatics that uses data to help clinicians, researchers and scientists improve ...

SearchDisasterRecovery

  • risk mitigation

    Risk mitigation is a strategy to prepare for and lessen the effects of threats faced by a data center.

  • ransomware recovery

    Ransomware recovery is the process of resuming options following a cyberattack that demands payment in exchange for unlocking ...

  • natural disaster recovery

    Natural disaster recovery is the process of recovering data and resuming business operations following a natural disaster.

SearchStorage

  • RAID 5

    RAID 5 is a redundant array of independent disks configuration that uses disk striping with parity.

  • non-volatile storage (NVS)

    Non-volatile storage (NVS) is a broad collection of technologies and devices that do not require a continuous power supply to ...

  • petabyte

    A petabyte is a measure of memory or data storage capacity that is equal to 2 to the 50th power of bytes.

Close