<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ArtifactDescription 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="-6aCUL_kawJFNBtfH_sRXkw"
    name="Product increment,_tCmYEP-xEdqLnajTSLeAsA" guid="-6aCUL_kawJFNBtfH_sRXkw"
    changeDate="2006-12-03T01:04:18.218-0800" version="1.0.0">
  <mainDescription>&lt;p>&#xD;
    The main result of a sprint is the partial product which implements, in addition to what was yet implmented at the&#xD;
    beginning of the sprint,&amp;nbsp;additionnal requirements developed during this sprint.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    3 usages can be made -after the demo during sprint review- out of the partial product obtained at the end of iteration:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        it is not used outside of the team. It has been produced in order to minimize risks linked to technology and team's&#xD;
        capability to integrate to produce a &lt;q>build&lt;/q>. It usually happens at the beginning of a new product.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        It is used by beta customers, in addition to the product owner. It allows them to play with it, which gives&#xD;
        feedback and reduces risks associated to UI and ergonomy. Feedbacks will feed the backlog for later consideration.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        It is deployed or shipped and used by its end users. It's obviously what needs to be targeted since each version&#xD;
        brings up value. It's desirable to release it as soon as possible and available. But it is not generally possible&#xD;
        to deploy/ship at the end of each sprint: too much time would be spent to pass release tests on the whole system,&#xD;
        build and release on production environment, write user manuals, prepare and provide training to users... That is&#xD;
        why this particular work oftenly requires a preparation activity for deployment. But if one manages to perform all&#xD;
        these tasks in a limited time, deployment/shipping can be done more often than at the end of releases.&#xD;
    &lt;/li>&#xD;
&lt;/ul></mainDescription>
  <keyConsiderations>&lt;p>&#xD;
    The product evolves during its lifecycle until its end of life.&#xD;
&lt;/p></keyConsiderations>
  <briefOutline>The partial product can be deployed in the production environment or simply made available to users.</briefOutline>
</org.eclipse.epf.uma:ArtifactDescription>
