%%
date:: [[2023-04-11]]
parent::
%%
# [[Conway's Law]]
Conway's Law, proposed by Melvin Conway in 1967, notes that the architecture of a software application is influenced by the architecture of the team building that application.
This phenomenon occurs because each separate working group within a team or organization tends to create their own self-sufficient service, so having two working groups will also lead to two independent services.
This law can be used to justify a [[Microservices|microservices-based architecture]], as many teams in [[Software Development]] have adopted [[Agile]] methodologies where a larger organization is broken down into smaller, self-contained teams. According to Conway's Law, this structure lends itself well to microservices-based architectures because there is a 1:1 relationship between teams and microservices.
## Making the law proscriptive
Conway's Law was formulated as an observation; it merely points out that distributed teams produce distributed architecture. However, it can also be applied in the reverse, as a guide to [[Microservices vs Monoliths#Which one is right for you|choose between microservices and monoliths]]: If your application developers have self-organized into separate functional teams, then perhaps microservices is the better option. If your developers function much like a singular working group, whether due to size or convention, perhaps a monolithic structure may still be more appropriate.