A map of all XP practices and how they reinforce each other.
XP isn't a menu where you pick your favorites. The practices are designed to reinforce each other. Remove one, and the others become harder or less effective.
For example:
This interlocking nature is why "doing TDD but not refactoring" or "pair programming without tests" often fails. You're removing a load-bearing wall.
That said, you have to start somewhere. We'll discuss incremental adoption in Module 5.
Think of XP practices like safety features in a car. Seatbelts, airbags, and crumple zones all work together. Removing any one makes the others less effective.
These are the core practices that most XP teams adopt:
Planning Practices:
Development Practices:
Team Practices:
We'll cover each of these in depth in the following modules.
These practices are powerful but require more maturity or specific conditions:
These aren't "advanced XP." They're practices that work well in the right context but might be inappropriate or impossible in others.
One way to understand XP practices is through their feedback loops:
Seconds: Unit tests Minutes: Pair programming Hours: Continuous integration Day: Stand-up meeting Week: Iteration planning, customer demo Month/Quarter: Release, retrospective
At every scale, XP creates opportunities to learn and adjust. This is intentional. The faster you learn, the faster you can correct course.
If you're not getting feedback at each of these scales, something is missing.
This might seem overwhelming. Don't try to adopt everything at once.
Most teams start with:
These form the foundation. Once they're working, add:
We'll cover adoption strategies in Module 5. For now, just understand the landscape.
One Practice at a Time
Pick one practice, do it well, then add another. Trying to adopt everything at once usually means adopting nothing well.