Balancing Coupling in Software Design: Universal Design Principles for Architecting Modular Software Systems
by Vlad Khononov
Foreword
Successful software systems grow and evolve—to add new features and capabilities, and to support new technologies and platforms. But is it inevitable that over time they become unmaintainable “Big Balls of Mud?”
Well, given that complex software systems are structured out of modular interrelated units of functionality, each with discrete responsibilities, there will always be coupling. But the ways modules communicate and how they share information have implications on our ability to change them.
In this book, Vlad, after informing us of the original design ideas of module coupling and connascence, updates us with fresh ways to think about the various dimensions of coupling: integration strength, volatility, and distance. He then leads ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access