What XP123.com Teaches About User Stories and Agile Practices

Updated

XP123.com is Bill Wake's essay site on Extreme Programming (XP), Agile, Lean, Scrum, and related software topics. If you want to understand user stories and agile practices from a practitioner's perspective, the site's most useful material is concentrated in a few recurring themes: story quality (especially INVEST), story splitting, test-driven development (TDD), refactoring, and set-based design. The site is a collection of essays and resources rather than a structured course, so the value comes from reading specific articles rather than following a linear curriculum.

The Core Teaching: INVEST for Good Stories

The site's most cited contribution to agile practice is INVEST, a checklist for evaluating user stories. The site lists it as "INVEST in Good Stories: I, N, V, E, S, T," which stands for:

  • Independent — a story should be deliverable on its own, without depending on another story
  • Negotiable — a story is a starting point for conversation, not a fixed contract
  • Valuable — it delivers something the customer or user actually cares about
  • Estimable — the team can reasonably size it
  • Small — it fits within a iteration or work cycle
  • Testable — there is a way to verify it is done

The practical use of INVEST is as a review filter: before committing a story to a backlog, check it against these six criteria and fix the ones it fails. A story that is not testable, for example, usually needs a clearer acceptance condition before it can be estimated or built.

Splitting Stories: "Twenty Ways to Split Stories"

The site's "Twenty Ways to Split Stories" is listed among its most popular articles and addresses a common problem: stories that are too large to fit in an iteration. Rather than offering a single rule, it presents a catalog of splitting patterns, so a team can pick the one that fits the situation. This is useful because story splitting is contextual — splitting by workflow step, by business rule, by data variation, or by interface are different moves that suit different stories.

The companion piece, "TDD is an Alchemy Trick: Points and Partitions," connects story work to test design, suggesting how partitioning a problem (by points and partitions) supports both testing and decomposition.

Beyond Stories: The Broader Agile Practice Set

XP123.com treats user stories as one part of a wider set of XP and agile practices. The site's resource pages cover:

Topic What the site offers
Test-Driven Development (TDD) Dedicated resource page and articles, including the "Test-First Challenge"
Refactoring Resource page plus Bill Wake's Refactoring Workbook
Set-Based Design Resource page and "Set-Based Concurrent Engineering" material
Coaching A resource page on coaching practice
Testing A resource page on testing practices
Scrum "Scrum on a Page" and "Scrum from Hell"
XP overview "XP on One Page"

This structure reflects the site's underlying view: user stories are not a standalone technique but are tied to how work is tested, refactored, and delivered. A story that is "testable" in the INVEST sense connects directly to TDD and acceptance testing; a story that is "small" connects to refactoring and incremental design.

How the Material Is Framed

The essays are written from Bill Wake's experience as an independent consultant and teacher, with work across financial, biotechnology, and publishing domains. He is the author of Extreme Programming Explored, Refactoring Workbook, Design Patterns in Java (with Steve Metsker), and Refactoring in Ruby (with Kevin Rutherford). The teaching voice is practitioner-oriented: the articles tend to present a named pattern or checklist, explain when it applies, and leave the reader to apply it to their own context.

Where to Start

The site's own "Start Here" section points to overview pages for Test-Driven Development, Refactoring, and User Stories. For the user-story question specifically, the path is:

  1. Read "INVEST in Good Stories" to get the quality criteria.
  2. Read "Twenty Ways to Split Stories" to handle stories that are too big.
  3. Follow the linked resource pages on TDD and Refactoring to see how stories connect to the rest of the development cycle.

The site also notes that some material has migrated elsewhere: billwake.com hosts posts unrelated to agile software, and jobaids.info covers how to create job aids. Reviews on the site are mostly book reviews, with a disclosure that purchases through the site's links earn a small Amazon credit.