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. This page is the "Read This Only If Stuck" registry that the concept pages link to.

Source Roles

SourceRoleWhy it is here
Fundamentals of Software Architecture (Richards, Ford)Primary teaching sourceBest operational treatment of what architecture is, architectural characteristics (explicit / implicit), fitness functions, and tradeoff framing
Just Enough Software Architecture (Fairbanks)Primary on models, risk, communicationStrongest framing of risk-driven design, architectural modeling, and team communication
Clean Architecture (Martin)Selective"Fight for the architecture" framing; behavior vs structure; used for Cluster 1 motivation
Learning Domain-Driven Design (Khononov)PeripheralUseful only when characteristic extraction collides with subdomain framing
API Design Patterns (Geewax)Out of scopeCovered in Module 4

Read Only If Stuck

Cluster 1: What Architecture Is

Cluster 2: Quality Attributes (the "-ilities")

Cluster 3: Architectural Characteristics in Practice

Cluster 4: Architectural Tradeoffs

Cluster 5: Communicating Architecture

Optional Deep Dive

Concept-to-Source Map

Primary conceptBest source if stuckWhy this source
Architecture = structure + hard-to-change decisionsFundamentals: Defining software architectureCanonical definition
Architect roles (technical, strategic, communicator)Fundamentals: Architectural thinkingThe three modes named explicitly
Architecture vs design vs codeFundamentals: Balancing architecture and hands-on codingWhere the blur line is in practice
Functional vs quality requirements, ATAM mindsetFundamentals: Architecture characteristics definedDefinition + motivation for scenarios
Operational qualities (perf, scale, avail, reliability)Fundamentals: Cross-cutting architecture characteristicsCatalog with distinctions
Evolutionary qualities (mod, test, deploy)Fundamentals: Cross-cutting architecture characteristicsSame catalog, different cluster
Identifying characteristics from requirementsFundamentals: Extracting characteristics from requirementsThe practical extraction routine
Explicit vs implicit, top-3 ruleFundamentals: Implicit characteristicsImplicit is the hard category
Fitness functionsFundamentals: Fitness functionsPrimary treatment
No right answers, only tradeoffsFundamentals: Analyzing trade-offsFirst-law-of-architecture chapter
Common tradeoff pairsFundamentals: Architecture characteristics ratingsFirst ratings exercise - shows pairs in action
Cost of decisions, reversibilityJust Enough: Planned and evolutionary designDecision-over-time framing
Views and viewpoints (C4, 4+1, arc42)Just Enough: Team communication (part 2)Views and viewpoints grounding
Diagramming disciplineJust Enough: Team communication (part 3)Diagramming discipline and concerns
Architectural risk and first principlesJust Enough: Risk-driven modelRisk as the decision lens

External Community References