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