blob: b4d0953299bb2cbe0d6a518390bd45e5093f39a0 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ContentDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.3/uma.ecore" epf:version="1.0.0" xmi:id="-CPHs6R59_druVDY6nRjHEw" name="planning_game,2.7371805612676613E-305" guid="-CPHs6R59_druVDY6nRjHEw" changeDate="2006-11-13T15:39:25.183-0800" version="1.0.0">
<mainDescription>&lt;a id=&quot;XE_xp__planning_game&quot; name=&quot;XE_xp__planning_game&quot;&gt;&lt;/a&gt;&lt;a id=&quot;XE_planning_game__practice_of&quot;
name=&quot;XE_planning_game__practice_of&quot;&gt;&lt;/a&gt;&lt;a id=&quot;XE_engineering_practices__planning_game&quot;
name=&quot;XE_engineering_practices__planning_game&quot;&gt;&lt;/a&gt;
&lt;h3&gt;
Description
&lt;/h3&gt;
&lt;p&gt;
The purpose of planning is to ensure that we are working on the most valuable things at all times. As much as we would
like to, planning is not about predicting the future. Even the best, most thought out plans need to be continually
refined. They require continuous and constant feedback to be useful.
&lt;/p&gt;
&lt;p&gt;
XP proposes the following planning hierarchy:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Projects are split into releases that typically last two to three months.
&lt;/li&gt;
&lt;li&gt;
Releases are split into iterations that typically last two to three weeks.
&lt;/li&gt;
&lt;li&gt;
Iterations are planned into tasks that typically last one to two days.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
The XP planning game has two main activities:
&lt;/p&gt;
&lt;h4&gt;
Release Planning
&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
Customer presents user stories to the team.
&lt;/li&gt;
&lt;li&gt;
Programmers estimate the user stories.
&lt;/li&gt;
&lt;li&gt;
Customers selects a set of user stories for the next release. The total of the estimates of the selected stories
cannot exceed the team's previous release velocity (how much they did the previous release).
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
Iteration Planning
&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
Customer presents the user stories that will be worked on for the iteration. These stories usually come from the
release. Stories not in the release can be selected for the iteration, but the customer will have to push out an
existing story of the same size out of the iteration and the release. This is done so the team does not commit to
do more work than they have shown they can do in the past.
&lt;/li&gt;
&lt;li&gt;
Programmers break down the stories into engineering tasks.
&lt;/li&gt;
&lt;li&gt;
Programmers sign up and estimate engineering tasks.
&lt;/li&gt;
&lt;li&gt;
Programmers do a sanity check to make sure all these tasks can be done by comparing against what was done the
previous iteration.
&lt;/li&gt;
&lt;li&gt;
If there is too much to do, the customer will drop one or more user story from the iteration.
&lt;/li&gt;
&lt;li&gt;
If there is not enough work, the customer can add one or more story to fill the iteration.
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Benefits
&lt;/h3&gt;
&lt;ul class=&quot;noindent&quot;&gt;
&lt;li&gt;
Provides &lt;b&gt;quick and meaningful feedback&lt;/b&gt;.
&lt;/li&gt;
&lt;li&gt;
Provides &lt;b&gt;lots of opportunities&lt;/b&gt; to use that feedback &lt;b&gt;to steer the team to success&lt;/b&gt;.
&lt;/li&gt;
&lt;li&gt;
Provides &lt;b&gt;clear&lt;/b&gt;, long-term &lt;b&gt;strategic&lt;/b&gt; (release plan) &lt;b&gt;and&lt;/b&gt; short-term &lt;b&gt;tactical goals&lt;/b&gt;
(iteration plan).
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Allows the team to manage themselves&lt;/b&gt; (task list).
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Related Information
&lt;/h3&gt;
&lt;p&gt;
See the &lt;a class=&quot;elementLinkWithUserText&quot;
href=&quot;./../../../xp/guidances/guidelines/planning_game,6.7335956461328426E-307.html&quot;
guid=&quot;6.7335956461328426E-307&quot;&gt;Planning Game Guidelines&lt;/a&gt;.
&lt;/p&gt;</mainDescription>
</org.eclipse.epf.uma:ContentDescription>