<?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.5/uma.ecore"
    xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.0" xmi:id="-syM21eeTJukTVduSPIUGzg"
    name="new_guideline,_knEA8FkbEdul8L-IGeA7TA" guid="-syM21eeTJukTVduSPIUGzg" changeDate="2006-10-11T05:29:08.953-0700"
    version="1.0.0">
  <mainDescription>&lt;h3>&#xD;
    Typical Phase by Phase Activities&#xD;
&lt;/h3>&#xD;
&lt;h4>&#xD;
    Inception Phase&#xD;
&lt;/h4>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        Participate in workshops to create the project &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/workproducts/dsdm_vision.html&quot; guid=&quot;_uotsEFkbEdul8L-IGeA7TA&quot;>Vision&lt;/a>&amp;nbsp;if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/visionary.html&quot; guid=&quot;_hQJ-QFkVEdul8L-IGeA7TA&quot;>Visionary&lt;/a>.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Agree to participate at the level requested throughout the project.&#xD;
    &lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;h4>&#xD;
    Elaboration Phase&#xD;
&lt;/h4>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        Participate in Workshops to generate requirements if requested by the Visionary.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Provide business information if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/ambassador_user.html&quot; guid=&quot;_ctbZ8FkVEdul8L-IGeA7TA&quot;>Ambassador User&lt;/a>.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Participate in prototype reviews and workshops if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/ambassador_user.html&quot; guid=&quot;_ctbZ8FkVEdul8L-IGeA7TA&quot;>Ambassador User&lt;/a>.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Participate in testing if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/ambassador_user.html&quot; guid=&quot;_ctbZ8FkVEdul8L-IGeA7TA&quot;>Ambassador User&lt;/a>.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Provide feedback to the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/ambassador_user.html&quot; guid=&quot;_ctbZ8FkVEdul8L-IGeA7TA&quot;>Ambassador User&lt;/a> about the system under development.&#xD;
    &lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;h4>&#xD;
    Construction Phase&#xD;
&lt;/h4>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        Participate in testing and reviews if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/ambassador_user.html&quot; guid=&quot;_ctbZ8FkVEdul8L-IGeA7TA&quot;>Ambassador User&lt;/a>.&#xD;
    &lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;h4>&#xD;
    Transition Phase&#xD;
&lt;/h4>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        Participate in training and provide feedback on the training, the system and the user documentation.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Use the system and provide feedback through the specified channels.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Participate in post-live reviews if requested by the &lt;a class=&quot;elementLink&quot; href=&quot;./../../../dsdm_openup/roles/visionary.html&quot; guid=&quot;_hQJ-QFkVEdul8L-IGeA7TA&quot;>Visionary&lt;/a>.&#xD;
    &lt;/li>&#xD;
&lt;/ul></mainDescription>
</org.eclipse.epf.uma:ContentDescription>
