Skip to main content

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 a deeper exercise lane.

Source Roles

SourceRoleWhy it is here
Fundamentals of Software Architecture (Richards, Ford)Primary teaching sourceBest operational material on ADRs, fitness functions, risk, and team practice
Just Enough Software Architecture (Fairbanks)Primary on risk-driven reviewStrongest framing of risk-driven evaluation and architectural mismatch
Clean Architecture (Martin)PeripheralBackground philosophy of architectural concerns; rarely needed here
Learning Domain-Driven Design (Khononov)PeripheralUseful when the architectural / design-decision boundary collides with bounded contexts
API Design Patterns (Geewax)PeripheralPublic API ADR examples; one-way-door decisions in practice

Read Only If Stuck

Cluster 1: Architecture Decisions as Artifacts

Cluster 2: ADR Mechanics

Cluster 3: Architecture Review Methods

Cluster 4: Running Architecture Reviews in Practice

Cluster 5: Architecture Decisions Over Time

Optional Deep Dive

Concept-to-Source Map

Primary conceptBest source if stuckWhy this source
Architecture vs design decisionFundamentals: Architecture decisionsDirectly on the boundary question
Why decisions need to be recordedFundamentals: Architecture decision recordsPrimary rationale for ADRs
Reversibility (one-way vs two-way)Just Enough: Risk-driven modelRisk-language equivalent of the doors
ADR templatesFundamentals: Basic structureTemplate scaffolding
Context, decision, consequencesFundamentals: Analyzing trade-offsReal consequences with tradeoffs
Status lifecycle and supersedingFundamentals: Architecture decision recordsLifecycle conventions
ATAM sketchJust Enough: Quality attribute scenariosScenario shape for utility trees
Risk-driven review (RCDA)Just Enough: Risk-driven modelPrimary source
Lightweight peer reviewFundamentals: Making teams effectiveReview culture and cadence
Preparing a reviewFundamentals: Leveraging checklistsChecklist-based packages
FacilitationFundamentals: Negotiation and facilitationCuriosity vs judgment in practice
Outputs: decisions, followups, risksFundamentals: Risk matrixHow to capture risks durably
Fitness functionsFundamentals: Fitness functionsPrimary treatment
Architectural driftJust Enough: Architectural mismatchDrift as a first-class concern
Architecture guildFundamentals: Integrating with the development teamTeam practice sustainability

External Community References