Software Architecture: The Hard Parts
Neal Ford, Mark Richards, Pramod Sadalage and Zhamak Dehghani
All software architecture involves trade offs. But traditional analysis tools don’t work well for today’s distributed systems.
This book provides techniques to help you discover and weigh the trade-offs as you confront the issues you face as an architect. It investigates why architecture is so difficult and provides proven mechanisms to address these complex problems and make them understandable. Co-authors Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani examine everything from how to determine service granularity, manage workflows and orchestration, manage and decouple contracts, and manage distributed transactions to how to optimize operational characteristics, such as scalability, elasticity, and performance.
This book is not just for software architects — data architects, DBAs, product managers and others will glean valuable insights into some of the complex issues architects face every day.
Architecture is full of hard parts; by tracing the common reasons and applying lessons more universally, we can make it softer.