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​