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
| Source | Role | How to use it here |
|---|---|---|
| Prior testing track notes (S3 M05, S6) | Default reinforcement | Revisit only for specific techniques (test doubles, rubric) when the guide is not enough |
| The Pragmatic Programmer | Selective reinforcement | Revisit chapters on pragmatism, tests, and decision-making during crunch |
| Refactoring (Fowler) | Selective reinforcement | Use its catalog (online, linked below) as the vocabulary for deep-refactor windows |
| S3 M05 Applied Design & Code Review | Direct prerequisite | Rubric is reused here for the 24-hour read-through |
| S10 M1 Domain Analysis & Architecture Design | Direct prerequisite | The architecture the walking skeleton proves real |
Resource Map by Cluster
Cluster 1: Walking Skeleton First
| Need | Best resource | Why |
|---|---|---|
| Definition of a walking skeleton in plain terms | Matt Blodgett: Start With a Walking Skeleton | Clear practitioner restatement of Cockburn's definition |
| Vertical slicing and why E2E shape matters at slice time | Martin Fowler: The Practical Test Pyramid | The canonical modern treatment that assumes vertical slicing |
| Cross-semester architectural context | S10 M01 concept map | Names the layers the skeleton must traverse |
Cluster 2: Test Pyramid for a Real System
| Need | Best resource | Why |
|---|---|---|
| The canonical shape and its warnings | Martin Fowler: Test Pyramid | Original framing of why the top is narrow |
| Deep, practical coverage at every level | Martin Fowler: The Practical Test Pyramid | Full taxonomy of unit, integration, contract, E2E with examples |
| Describing tests as behaviors, not scripts | Dan North: Introducing BDD | Useful when naming tests at any level |
Cluster 3: Quality Gates and Feedback
| Need | Best resource | Why |
|---|---|---|
| Rationale for gating on hygiene, not just tests | Google eng-practices: The Standard of Code Review | Grounds "automation frees review for design" in an industry-standard document |
| Contract testing reference | Pact: Introduction | Canonical source for consumer-driven contracts |
| Cross-semester reinforcement | S3 M05 Concept 14 (Automated Checks as Part of Design Hygiene) | Same habit, capstone context |
Cluster 4: Defect Reduction Under Pressure
| Need | Best resource | Why |
|---|---|---|
| Flaky test diagnosis framework | How to Fix Flaky Tests: Reproduce, Diagnose, Prevent in CI/CD | Practitioner checklist aligned with the five-cause model |
| Flaky test at industrial scale | FlakyGuard at Uber (arXiv) | Shows how non-determinism plays out at scale and validates the five common causes |
| Regression-first naming and behavior language | Dan North: Introducing BDD | Names the "should" convention that makes regression tests self-documenting |
Cluster 5: Keeping the Code Livable
| Need | Best resource | Why |
|---|---|---|
| Named refactors for deep-refactor windows | Refactoring: Catalog | Standard vocabulary; do not invent your own names |
| The debt metaphor done right | Martin Fowler: Technical Debt | Clear framing of interest vs principal; source of the deferral language |
| Self-review discipline | Google eng-practices: The Standard of Code Review | The 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 concept | Best 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 |