Book
Fundamentals of Software Architecture, 2nd Edition
Mark Richards, Neal Ford
Summary
Mark Richards and Neal Ford, both longtime software architecture trainers, rebuild architecture as an engineering discipline with a defined vocabulary and measurable tradeoffs, instead of something left to individual instinct. The book defines architectural characteristics and how to measure and govern them, then surveys architecture styles from layered and microkernel through event-driven, service-based, and microservices, closing with architecture decisions, risk analysis, and the soft skills of negotiation and team leadership. This second edition adds a chapter on the modular monolith as a named style rather than a fallback, plus updated coverage of cloud considerations, team topologies, and where generative AI fits into architectural work.
Editor's Note
For intermediate-to-advanced readers who want to learn architecture through systematic vocabulary and trade-offs. It turns personal design instinct into a discipline you can debate; broad enough that reading by area of interest works better than front to back.
Target Readers
- Developers moving into an architect role who need a shared vocabulary for tradeoffs, not just more pattern names
- Technical leads evaluating architecture styles for a new system and wanting a framework for the decision, not a single recommended default
- Architects who read the first edition and want the added modular monolith chapter and updated cloud and team-topology material
Tags
Colophon
- Publisher
- オライリー・ジャパン
- ISBN
- 978-4-8144-0155-0
- Published
- Mar 2026
- List price
- ¥4,950incl. taxMay differ from the actual selling price on Amazon
Get this book
* The link above is an advertisement via Amazon Associates.Related Books
Prerequisites
- Recommended
Clean Architecture
Robert C. Martin
Reason: After gaining an intuition for the ideal shape from Clean Architecture, you formalize architectural characteristics and trade-offs into a shared vocabulary. This book elevates design judgment from personal instinct to a discipline you can reason about.
Next Books
- Recommended
Building Microservices
Sam Newman
Reason: Once you have a vocabulary of architectural characteristics and trade-offs, you apply that judgment to the concrete case of distributed systems. Microservices demand a design that deliberately breaks coupling in exchange for independent deployment and autonomy.
- Recommended
Software Architecture: The Hard Parts
Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani
Reason: After grasping the fundamental characteristics, you advance to trade-off analysis in the hard parts that have no single right answer—service granularity, data ownership, distributed transactions. The same authors show not the answer but how to decide.
- Recommended
Building Evolutionary Architectures
Neal Ford, Rebecca Parsons, Patrick Kua
Reason: After learning static architectural decisions, you widen your view to designs that keep adapting to change. You gain the idea of using fitness functions to continuously verify architectural characteristics, making evolution measurable.