<?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="-F-eWIBzxEXE1jygbN3nrrQ"
    name=",_2plxwBOMEduCNqgZdt_OaA" guid="-F-eWIBzxEXE1jygbN3nrrQ" changeDate="2007-07-11T06:20:47.734-0700"
    version="1.0.0">
  <mainDescription>&lt;p>&#xD;
    The purpose of this phase is to mitigate technical and non-technical risks. Technical risks are typically addressed by&#xD;
    establishing the baseline of an executable architecture of the system and providing a stable basis for the bulk of the&#xD;
    development effort in the next phase. Non-technical risks are addressed by delivering key capabilities in close&#xD;
    collaboration with stakeholders, allowing us to answer questions such as:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
    &lt;li>&#xD;
        Does stakeholder A concur with the usage paradigm as implemented by the first delivered scenarios?&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Can we leverage this open source component?&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Can we acquire this commercial component?&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Do we have personnel with the appropriate competency?&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Have we validated that the team can collaborate effectively to deliver working software?&#xD;
    &lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
    There are objectives for the Elaboration phase that help you address risks associated with requirements, architecture,&#xD;
    costs, and schedule, among others&amp;nbsp;&lt;a class=&quot;elementlinkwithusertext&quot;&#xD;
    href=&quot;./../../../openup/guidances/supportingmaterials/references.html#KRO03&quot;&#xD;
    guid=&quot;_9ToeIB83Edqsvps02rpOOg&quot;>[KRO03]&lt;/a>:&amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;ol>&#xD;
    &lt;li>&#xD;
        &lt;p>&#xD;
            &lt;strong>Get a more detailed understanding of the requirements.&lt;/strong> Having a good understanding of the&#xD;
            majority of requirements allows you to create a more accurate plan and to get buy-in from stakeholders. Be sure&#xD;
            to gain an in-depth understanding of the most critical requirements to be validated by the architecture. This&#xD;
            does not mean that every use case needs to be detailed, but that you have detailed key use cases, and&#xD;
            understand remaining use cases well enough to size them.&#xD;
        &lt;/p>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;p>&#xD;
            &lt;strong>Design, implement, validate, and establish the baseline for the architecture.&lt;/strong> Design,&#xD;
            implement, and test a skeleton structure of the system by designing, implementing, and testing a small number&#xD;
            of critical scenarios. Although the functionality is not complete yet, most of the interfaces between the&#xD;
            building blocks are implemented and tested, and the type of architecture and required architectural mechanisms&#xD;
            are identified. This result is referred&amp;nbsp;as &lt;strong>an executable architecture&lt;/strong>.&#xD;
        &lt;/p>&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        &lt;p>&#xD;
            &lt;strong>Mitigate essential risks, and produce accurate schedule and cost estimates.&lt;/strong> Many technical&#xD;
            risks are addressed as a result of detailing the requirements and of designing, implementing, and testing the&#xD;
            architecture. You may also have to address non-technical risks, such as legal and financial issues related to&#xD;
            usage of open source or commercial components. Refine and detail the high-level project plan.&#xD;
        &lt;/p>&#xD;
    &lt;/li>&#xD;
&lt;/ol>&#xD;
&lt;h4>&#xD;
    Key considerations&#xD;
&lt;/h4>&#xD;
&lt;p>&#xD;
    The number of iterations in the Elaboration phase is dependent on, but not limited to, factors such as green-field&#xD;
    development versus maintenance cycle, unprecedented system versus well-known technology and architecture, and so on.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    A maintenance project may for example combine Inception and Elaboration into one iteration that may be only a few days&#xD;
    long, since the objectives of these phases can be rapidly addressed.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    A new unprecedented system may require several iterations to establish and baseline an executable architecture, and to&#xD;
    address all non-technical issues. For such a project, you start by designing, implementing, and testing a small number&#xD;
    of critical scenarios, in order to identify what type of architecture and architectural mechanisms you need. You also&#xD;
    detail high-risk requirements that have to be addressed early in the project. You test enough to validate that the&#xD;
    architectural risks are mitigated. In later Elaboration iterations, you fix whatever was not right from the previous&#xD;
    iteration, and design, implement, and test the remaining architecturally significant scenarios, ensuring that you check&#xD;
    all major areas of the system (architectural coverage), so potential hidden risks arise as early as possible.&lt;br />&#xD;
&lt;/p></mainDescription>
</org.eclipse.epf.uma:ContentDescription>
