Balancing Coupling in Software Design: Universal Design Principles for Architecting Modular Software Systems

Author:   Vlad Khononov
Publisher:   Pearson Education (US)
ISBN:  

9780137353484


Pages:   320
Publication Date:   29 October 2024
Format:   Paperback
Availability:   Available To Order   Availability explained
We have confirmation that this item is in stock with the supplier. It will be ordered in for you and dispatched immediately.

Our Price $77.60 Quantity:  
Add to Cart

Share |

Balancing Coupling in Software Design: Universal Design Principles for Architecting Modular Software Systems


Add your own review!

Overview

Learn How Coupling Impacts Every Software Design Decision You Make--and How to Control It If you want to build modular, evolvable, and resilient software systems, you have to get coupling right. Every design decision you make influences coupling, which in turn shapes the design options available to you. Despite its importance, coupling often doesn't receive the attention it deserves--until now. Since the dawn of software engineering, it's been clear that proper management of coupling is essential for architecting modular software systems. This topic has been extensively researched over the years, but some of that knowledge has been forgotten, and some of it is challenging to apply in this day and age. In Balancing Coupling in Software Design, author Vlad Khononov has built a model that not only draws on this accumulated knowledge, but also adapts it to modern software engineering practices, offering a fresh perspective on modular software design. With principles grounded in practice, Vlad teaches you not only to navigate the multi-dimensional nature of coupling but also to use coupling as a tool for managing complexity and increasing modularity. And who knows, maybe this book will change the way you think about software design as whole. Defines the concept of coupling and the role it plays in system design and architecture Explains how coupling can both increase complexity and foster modularity of a system Introduces a holistic model that turns coupling into a tool for designing modular software Shows how to evolve design decisions to support continuous growth of software systems Illustrates the discussed principles with detailed examples based on real-life case studies ""Coupling is one of those words that is used a lot, but little understood. Vlad propels us from simplistic slogans like 'always decouple components' to a nuanced discussion of coupling in the context of complexity and software evolution. If you build modern software, read this book!"" --Gregor Hohpe, author of The Software Architect Elevator Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

Full Product Details

Author:   Vlad Khononov
Publisher:   Pearson Education (US)
Imprint:   Addison Wesley
Dimensions:   Width: 18.00cm , Height: 1.50cm , Length: 23.00cm
Weight:   0.566kg
ISBN:  

9780137353484


ISBN 10:   0137353480
Pages:   320
Publication Date:   29 October 2024
Audience:   Professional and scholarly ,  Professional & Vocational
Format:   Paperback
Publisher's Status:   Active
Availability:   Available To Order   Availability explained
We have confirmation that this item is in stock with the supplier. It will be ordered in for you and dispatched immediately.

Table of Contents

Preface Introduction Part I: Coupling Chapter 1: Coupling and System Design Chapter 2: Coupling and Complexity: Cynefin Chapter 3: Coupling and Complexity: Interactions Chapter 4: Coupling and Modularity Part II: Dimensions Chapter 5: Structured Design’s Module Coupling Chapter 6: Connascence Chapter 7: Integration Strength Chapter 8: Distance Chapter 9: Volatility Part III: Balance Chapter 10: Balancing Coupling Chapter 11: Rebalancing Coupling Chapter 12: Fractal Geometry of Software Design Chapter 13: Balanced Coupling in Practice Chapter 14: Conclusion Appendix: Answers to Quiz Questions Index

Reviews

""Get ready to unravel the multi-dimensional nature of coupling and the forces at work behind the scenes. The reference for those looking for a means to both assess and understand the real impact of design decisions."" --Chris Bradford, Director of Digital Services, Cambridge Consultants ""Coupling is a tale as old as software. It's a difficult concept to grasp and explain, but Vlad effortlessly lays out the many facets of coupling in this book, presenting a tangible model to measure and balance coupling in modern distributed systems. This is a must-read for every software professional!"" --Laila Bougria, solutions architect & engineer ""This book is essential for every software architect and developer, offering an unparalleled, thorough, and directly applicable exploration of the concept of coupling. Vlad's work is a crucial resource that will be heavily quoted and referenced in future discussions and publications."" --Michael Plöd, fellow @ INNOQ ""Every software engineer is sensitive to coupling, the measure of interconnection between parts. Still, many times the understanding of such a fundamental property remains unarticulated. In this book, Vlad introduces a much-needed intellectual tool to reason about coupling in a systematic way, offering a novel perspective on this essential topic."" --Ilio Catallo, senior software engineer ""Coupling is among the most slippery topics in software development. However, with this book, Vlad simplifies for us how coupling, from a great villain, can become a design tool when well understood. This is an indispensable guide for anyone dealing with software design--especially complex ones."" --William Santos, software architect ""Balancing Coupling in Software Design is a must-read for any software architect. Vlad Khononov masterfully demystifies coupling, offering practical insights and strategies to balance it effectively. This book is invaluable for creating modular, scalable, and maintainable software systems. Highly recommended!"" --Vadim Solovey, CEO at DoiT International ""Balancing Coupling in Software Design by Vlad Khononov is an essential read for architects aiming for quality, evolvable systems. Khononov expertly classifies dependencies and reveals how varying designs impact effort based on component distance and change frequency, introducing a unified metric for coupling. With insightful case studies, he guides readers toward achieving optimal modularity and long-term system adaptability by illustrating and rectifying imbalances."" --Asher Sterkin, independent software technology expert ""Khononov's groundbreaking work unifies paramount forces of software design into a coherent model for evaluating coupling of software systems. His insights provide an invaluable framework for architects to design modular, evolving systems that span legacy and modern architectures."" --Felipe Henrique Gross Windmoller, staff software engineer, Banco do Brasil ""This book systematizes over five decades of software design knowledge, offering a comprehensive guide on coupling, its dimensions, and how to manage it effectively. If software design is a constant battle with complexity, then this book is about mastering the art of winning."" --Ivan Zakervsky, IT architect


Author Information

Vlad Khononov is a software engineer with extensive industry experience, working for companies large and small in roles ranging from webmaster to chief architect. His core areas of expertise are distributed systems and software design. Vlad consults with companies to make sense of their business domains, untangle monoliths, and tackle complex architectural challenges. Vlad maintains an active media career as a public speaker and author. Prior to Balancing Coupling in Software Design, he authored the best-selling O'Reilly book Learning Domain-Driven Design. He is a sought-after keynote speaker, presenting on topics such as domain-driven design, microservices, and software architecture in general.

Tab Content 6

Author Website:  

Customer Reviews

Recent Reviews

No review item found!

Add your own review!

Countries Available

All regions
Latest Reading Guide

MRG2025CC

 

Shopping Cart
Your cart is empty
Shopping cart
Mailing List