Reference and Selective Reading
You do not need to read the source books front-to-back for this module. Use the concept pages and practice pages first. Open these local chunks only when you need alternate exposition, more worked examples, or the ratings tables in original form.
Source Roles
| Source | Role | Why it is here |
|---|---|---|
| Fundamentals of Software Architecture (Richards & Ford) | Primary teaching source | Best single treatment of every style in Part II (Ch 9-18); use it for escalation on any style concept |
| Clean Architecture (Martin) | Selective support | Boundary discipline, the dependency rule, package-by-component -- applies inside any chosen style |
| Just Enough Software Architecture (Fairbanks) | Peripheral framing | Not used in concept pages; reach for it only for an alternate framing |
| Learning Domain-Driven Design (Khononov) | Selective support | Used in Cluster 4 for context-to-service mapping; main DDD coverage is M03 |
Read Only If Stuck
Layered and Pipeline
- Richards & Ford: Layered Architecture Style
- Richards & Ford: Adding Layers
- Richards & Ford: Layered Ratings
- Richards & Ford: Pipeline Filters
- Richards & Ford: Pipeline Ratings
Modular Monoliths and Components
- Richards & Ford: Modularity
- Richards & Ford: Measuring Modularity (1)
- Richards & Ford: Measuring Modularity (2)
- Richards & Ford: Connascence
- Richards & Ford: Fitness Functions
- Richards & Ford: Component-Based Thinking
- Richards & Ford: Discovering Components
- Martin: Package by Layer to Ports and Adapters
- Martin: Package by Component
Service-Based, Event-Driven, Space-Based
- Richards & Ford: Service-Based Topology
- Richards & Ford: Database Partitioning in Service-Based
- Richards & Ford: Service-Based Ratings
- Richards & Ford: Event-Driven Architecture Style
- Richards & Ford: Mediator Topology
- Richards & Ford: Async Capabilities
- Richards & Ford: Preventing Data Loss
- Richards & Ford: Request-Reply
- Richards & Ford: Event-Driven Ratings
- Richards & Ford: Space-Based Architecture Style
- Richards & Ford: General Topology (SBA)
- Richards & Ford: Data Collisions
- Richards & Ford: Replicated vs Distributed Caching
- Richards & Ford: Concert Ticketing System
Microservices
- Richards & Ford: Microservices History
- Richards & Ford: Operational Reuse
- Richards & Ford: Communication
- Richards & Ford: Microservices Ratings
Choosing a Style and Distributed Fallacies
- Richards & Ford: Monolithic vs Distributed (the 8 fallacies)
- Richards & Ford: Choosing the Appropriate Architecture Style
Optional Deep Dive
- Richards & Ford: Orchestration-Driven SOA (history) -- for historical context on where SOA and microservices diverged.
- Richards & Ford: Reuse and Coupling (SOA) -- why "reuse" can be an anti-pattern.
- Richards & Ford: Microkernel Architecture Style -- skipped in the main path; useful if you ever work on IDEs, browsers, or plugin-heavy products.
- Richards & Ford: Microkernel Registry
- Martin: Clean Architecture -- decoupling modes -- source / deploy / service-level decoupling.
Concept-to-Source Map
| Primary concept | Best source if stuck | Why this source |
|---|---|---|
| Layered architecture, the default, its pros and sinkholes | Richards & Ford: Layered Architecture Style | Canonical treatment with the sinkhole anti-pattern |
| Pipeline architecture: pipe-and-filter for data transforms | Richards & Ford: Pipeline (Filters) | Defines the filter roles precisely |
| When the layered default is wrong | Richards & Ford: Choosing the Appropriate Style | The ratings-driven alternative paths |
| Modular monolith: the right default | Richards & Ford: Choosing the Appropriate Style (Modular Monolith subsection) | Combines with Martin: Package by Component for implementation shape |
| Component boundaries: cohesion, coupling, afferent/efferent | Richards & Ford: Measuring Modularity (1) and (2) | The metrics math in one place |
| Enforcing module boundaries in code | Richards & Ford: Fitness Functions | The CI-enforced-architecture idea |
| Service-based architecture | Richards & Ford: Service-Based Topology | Shortest accurate exposition |
| Event-driven mediator vs broker | Richards & Ford: Event-Driven Architecture Style + Mediator | Pair gives both topologies |
| Space-based architecture | Richards & Ford: Space-Based Architecture Style | The canonical PU-plus-grid treatment |
| Microservices: bounded-context sized, independently deployed | Richards & Ford: Microservices History + Fowler: Microservices | Pair gives the definition and its origin |
| The microservices tax | Richards & Ford: Microservices Ratings | The ratings confirm the cost story |
| When microservices are right -- and when they absolutely are not | Fowler: MicroservicePremium + Fowler: MonolithFirst | The two articles pair naturally |
| Style selection by architectural characteristics | Richards & Ford: Choosing the Appropriate Style | The canonical selection chapter |
| Distributed architecture fallacies applied to style choice | Richards & Ford: Monolithic vs Distributed | All 8 fallacies in depth |
| Hybrid and evolving architectures | Fowler: StranglerFigApplication + Newman: Monolith Decomposition Patterns | The migration mechanics |