Skip to main content

Learning Resources

This capstone module does not introduce new required books. Its resources come from two places:

  • cross-semester material you have already used (revisit, do not re-read front to back)
  • a short, validated list of external articles and docs that earn their way onto this page by filling a specific gap

Canonical Book Backbone

Use these canonical book routes when the capstone guide pushes you back to source-of-truth material for implementation quality and testing judgment:

  • Clean Code for naming, code shape, and review standards under delivery pressure.
  • Refactoring for named refactor moves and safe structural change.
  • Software Engineering at Google for testing culture, review discipline, and engineering process at system scale.

Cross-Semester Source Stack

SourceRoleHow to use it here
Prior testing track notes (S3 M05, S6)Default reinforcementRevisit only for specific techniques (test doubles, rubric) when the guide is not enough
The Pragmatic ProgrammerSelective reinforcementRevisit chapters on pragmatism, tests, and decision-making during crunch
Refactoring (Fowler)Selective reinforcementUse its catalog (online, linked below) as the vocabulary for deep-refactor windows
S3 M05 Applied Design & Code ReviewDirect prerequisiteRubric is reused here for the 24-hour read-through
S10 M1 Domain Analysis & Architecture DesignDirect prerequisiteThe architecture the walking skeleton proves real

Resource Map by Cluster

Cluster 1: Walking Skeleton First

NeedBest resourceWhy
Definition of a walking skeleton in plain termsMatt Blodgett: Start With a Walking SkeletonClear practitioner restatement of Cockburn's definition
Vertical slicing and why E2E shape matters at slice timeMartin Fowler: The Practical Test PyramidThe canonical modern treatment that assumes vertical slicing
Cross-semester architectural contextS10 M01 concept mapNames the layers the skeleton must traverse

Cluster 2: Test Pyramid for a Real System

NeedBest resourceWhy
The canonical shape and its warningsMartin Fowler: Test PyramidOriginal framing of why the top is narrow
Deep, practical coverage at every levelMartin Fowler: The Practical Test PyramidFull taxonomy of unit, integration, contract, E2E with examples
Describing tests as behaviors, not scriptsDan North: Introducing BDDUseful when naming tests at any level

Cluster 3: Quality Gates and Feedback

NeedBest resourceWhy
Rationale for gating on hygiene, not just testsGoogle eng-practices: The Standard of Code ReviewGrounds "automation frees review for design" in an industry-standard document
Contract testing referencePact: IntroductionCanonical source for consumer-driven contracts
Cross-semester reinforcementS3 M05 Concept 14 (Automated Checks as Part of Design Hygiene)Same habit, capstone context

Cluster 4: Defect Reduction Under Pressure

NeedBest resourceWhy
Flaky test diagnosis frameworkHow to Fix Flaky Tests: Reproduce, Diagnose, Prevent in CI/CDPractitioner checklist aligned with the five-cause model
Flaky test at industrial scaleFlakyGuard at Uber (arXiv)Shows how non-determinism plays out at scale and validates the five common causes
Regression-first naming and behavior languageDan North: Introducing BDDNames the "should" convention that makes regression tests self-documenting

Cluster 5: Keeping the Code Livable

NeedBest resourceWhy
Named refactors for deep-refactor windowsRefactoring: CatalogStandard vocabulary; do not invent your own names
The debt metaphor done rightMartin Fowler: Technical DebtClear framing of interest vs principal; source of the deferral language
Self-review disciplineGoogle eng-practices: The Standard of Code ReviewThe rubric you apply to yourself 24 hours later

Use Rules

  • If you are stuck on what a concept means, go to the concept page first.
  • If the concept page is clear but you need a different explanation, try one of the validated external links above.
  • If you are stuck on how to apply it to your capstone, go to the practice page, not a new article.
  • If you find yourself reading three articles in a row, stop and ship the next vertical slice.

Cross-Semester Map

This module's conceptBest prior-semester source
Walking skeleton (01)S10 M01 architecture map; S4 systems programming for deploy seams
Vertical slices (02)S3 M05 Reviewable Commits and PR Shape
Steel thread (03)S10 M01 integration-point inventory
Unit tests (04)S3 M02 Refactoring + prior testing track
Integration tests (05)S6 M04 Transactions & Consistency
E2E tests (06)S10 M04 Operational Readiness (smoke tests)
Pre-commit hygiene (07)S3 M05 Automated Checks as Part of Design Hygiene
Coverage floor (08)S3 M02 Refactoring (safety nets)
Contract tests (09)S6 M04 Transactions & Consistency (shape drift)
Bug triage (10)S10 M04 Operational Readiness (incident severity)
Regression-first fixing (11)Prior testing track + S3 M05 review practices
Flaky test diagnosis (12)S4 systems programming (race conditions)
Refactoring cadence (13)S3 M02 + S3 M05 stewardship
24-hour self-review (14)S3 M05 Review Rubrics
Technical-debt ledger (15)S3 M05 Pragmatic Tradeoffs cluster