Understanding how XP and Scrum differ, overlap, and work together.
XP and Scrum emerged around the same time and share the same roots, but they focus on different problems.
Scrum focuses on project management: How do you organize work? What roles do you need? What meetings? What artifacts? Scrum gives you a framework for managing the flow of work through a team.
XP focuses on engineering practices: How do you actually write the code? How do you ensure quality? How do you keep the codebase healthy? XP gives you practices for doing the work well.
This is why they complement each other so naturally. Scrum tells you what to build in a sprint. XP tells you how to build it.
Despite different focuses, XP and Scrum share key concepts:
A team "doing Scrum" looks a lot like a team "doing XP" from the outside. The difference is under the hood.
Scrum is silent on engineering practices. The Scrum Guide says nothing about TDD, pair programming, refactoring, or continuous integration. It assumes teams will figure out the technical practices themselves.
XP is prescriptive about engineering practices. XP says you must write tests first. You should pair program. You will refactor continuously. You will integrate many times a day.
Scrum defines roles. Product Owner, Scrum Master, Development Team. These roles have specific responsibilities.
XP is flexible about roles. There's a customer and developers. That's about it. XP assumes the team will self-organize around roles as needed.
Scrum has specific events. Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective.
XP has more flexible cadences. Planning game, standup, iteration demo—similar, but less rigidly defined.
The Real Difference
Scrum tells you how to organize. XP tells you how to code. Most successful teams need both.
Many successful teams use Scrum's framework with XP's technical practices. This combination is powerful:
This isn't "impure" or wrong. The original Scrum creators expected teams to bring engineering practices. XP provides them.
A common pattern:
Teams often call this "Scrum with XP engineering practices" or just "doing agile well."
A team runs two-week sprints (Scrum) with TDD, pair programming, and continuous integration (XP). The Scrum Master facilitates the process; the developers own the technical practices.
A team runs sprints and has all the Scrum events, but writes no tests, never refactors, and integrates only at sprint end. They're 'agile' but their code quality deteriorates with every sprint.
You can do XP without Scrum. Some teams prefer XP's lighter-weight approach:
This works well for teams that find Scrum's structure too heavy, or where work arrives continuously (like operations or support).
The key is that XP's technical practices are non-negotiable. Whether you use Scrum, Kanban, or something else to organize work, TDD, refactoring, and continuous integration remain essential.
Watch Out
Some teams use 'no Scrum' as an excuse to skip discipline entirely. XP without engineering discipline isn't XP—it's just chaos.