Chapter 9

Volatility

Wide is the distance, much knowledge exchanged—

The design not ideal, somewhat deranged.

Yet if they’re static, never to change,

Should that design make anyone rage?

Imagine a strongly coupled system, one in which all components share excessive and extraneous knowledge across their boundaries. Even intrusive coupling is there. The design is flawed to such an extent that any change, to any component, would inevitably trigger a ripple effect, leading to cascading changes across all possible distances. However, consider this: What if none of the system’s components are ever expected to change? Would you still consider this a strongly coupled system? From a technical standpoint, it certainly is. But if the components will never ...

Get Balancing Coupling in Software Design: Universal Design Principles for Architecting Modular Software Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.