How Open Source Ate Software by Gordon Haff

How Open Source Ate Software by Gordon Haff

Author:Gordon Haff
Language: eng
Format: epub
ISBN: 9781484238943
Publisher: Apress


Modularity Is Generally Better

Concepts like modularity and a desire to constrain the amount of communication that needs to take place comes up time and time again in open source project data.

In 2008, Richard N. Langlois and Giampaolo Garzarelli argued that “open-source collaboration ultimately relies on the institutions of modularity.”13 They observed that, around the same time that Brooks was coining the “mythical man-month” phrase, David Parnas (1972) and other researchers were looking at software systems in a different light. Solving the problem of interdependency, these researchers argued, is not a matter of maximizing communication among the parts but rather of minimizing communication. Just as Bezos told his managers.

Systems taking this approach are built from parts that do not need to communicate extensively with one another. In fact, they are forbidden from doing so by design. They’re also, at least in principle, reusable. Parnas argued that “system details that are likely to change independently should be the secrets of separate modules; the only assumptions that should appear in the interfaces between modules are those that are considered unlikely to change.”

Langlois and Garzarelli conclude that modularity is generally superior to monoliths (or integrality as they call it) across most dimensions in both software design and organizational structure. It’s only in the setup costs that modularity costs more. This is consistent with what practitioners today observe with microservices and other modular software design patterns. There’s an initial cost to carefully mapping out the service boundaries and determining how components will communicate with each other. The effort may not be justified for a small project and team. But modularity tends to win out as projects and teams grow.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.