Team Organization and Modular Decomposition

Organizations which design systems (in the broad sense used here) are constrained to produce designs which are copies of the communication structures of these organizations.
– Melvin E. Conway

Let’s see how modularity and team organization relate to each other by taking inspiration from Conway’s quotation, which is known as Conway’s law.

Motivation for a modular architecture

Shorter development time is one among the many benefits which a well designed (i.e. modular) software architecture can bring to the development process.

Indeed, a modular architecture enables developers to safely work in parallel on distinct components with little need for communication.

But this can only hold true provided that the team organization is appropriate, let’s see how.

Need for proper team organization

In order to make the best use of a modular architecture the team organization should comply with the following:

  • There is a balanced workload distribution across development teams; and
  • Teams are responsible for disjoint subsets of components so they can work simultaneously with little need for communication.

System decomposition and team organization

Briefly recap that designing a modular architecture requires decomposing a system into highly cohesive components that are loosely coupled with one another.

During system decomposition designers must seriously take the team organization into account in order to maximize the benefits of the architecture under design.

At the same time, they should evaluate all the possible adjustments on the team structure based on the potential design choices.

Conclusion and further readings

Summing up, Conway’s law tells us how modular system decomposition and team organization strongly relate to each other.

And that they should progress hand in hand over the development process so as to take full advantage of modularity!

See also “Conway’s Law” by Martin Fowler.

Related posts:


© 2024 Massimo Nazaria

RSS

Licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.