Business chooses what, developers choose how. Balance scope, schedule, and resources.
XP's planning game is built on a simple principle: Business decides what to build. Developers decide how to build it.
This separation is critical:
Neither can do the other's job. Business can't estimate technical effort. Developers can't decide business priority. The planning game brings them together with clear roles.
Business chooses:
Developers provide:
The planning game is a negotiation, not a dictation. Business can't demand impossible timelines. Developers can't dictate features. Both must compromise.
Release planning answers: What will be in the next release and when will it ship?
XP says you can fix two of these three variables:
You can't fix all three. Something has to flex.
Fixed date release: "We ship on March 1. How much can we get done?" Scope is negotiable.
Fixed scope release: "We need these features. When can we ship them?" Date is negotiable.
The planning game process:
Re-plan regularly. As you learn more, update the release plan. XP doesn't assume the initial plan is sacred.
The team has velocity of 30 points/iteration. Release date is 4 iterations away. Business prioritizes 100 points of features, knowing only ~120 points are possible. They plan for 110 and keep 10 as stretch goals.
Management decides the team will deliver 150 points in 4 iterations (despite velocity of 30). When the team objects, they're told to 'be more agile.' The team burns out trying to hit an impossible target.
Iteration planning is more detailed. It happens at the start of each iteration (usually weekly or bi-weekly).
The process:
Key rules:
During the iteration:
Iteration planning is lighter than release planning. Stories are already estimated. The focus is on breaking into tasks and committing to realistic amounts.
Plans change. XP expects this and builds in adaptation.
When to adjust:
How to adjust:
What never changes: Quality. XP does not trade quality for scope or schedule. If you're behind, you ship less—not sloppier.
The planning game assumes continuous adjustment. The initial plan is a starting point, not a commitment to an exact outcome. As Kent Beck says: "The purpose of planning is planning, not the plan."
Never Sacrifice Quality
If you're behind schedule, reduce scope. Never reduce test coverage, skip refactoring, or accumulate technical debt 'to ship on time.'
The planning game requires a customer—someone who represents business priorities.
This could be:
The customer must:
XP's "on-site customer" originally meant someone physically present with the team. In modern distributed teams, "on-site" might mean "on Slack" or "in the daily standup." The key is availability, not physical location.
Without a customer, planning fails. Developers guess at priority. Scope creeps because no one decides what's out. The team builds the wrong thing.