<?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="-NMF-a9hwKjzWNfHzzseDYQ" name="new_custom_category,_r8cVIEmbEdu0xduwSKie-w" guid="-NMF-a9hwKjzWNfHzzseDYQ" changeDate="2006-10-13T14:56:55.821-0700" version="1.0.0">
  <mainDescription>&lt;p&gt;
    The communication and collaboration layer is the foundation for OpenUP, reflecting the collaborative nature of the
    process. It contains all of the roles in OpenUP/Basic: Stakeholder, Analyst, Developer, Architect, Tester, Project
    Manager, and Any Role.&amp;nbsp;Team members taking on these roles need to collaborate to jointly capture and define the
    intent of the stakeholders, to jointly develop the solution, and to jointly manage the project.
&lt;/p&gt;
&lt;p&gt;
    This foundational layer reflects and enables us to express the nature of self-organized teams, where team members must
    broaden their perspectives of what their roles&amp;nbsp;are and where their responsibilities end. As an example, the
    Analyst cannot say “I documented the requirements, now it is up to the Developer to implement them.” The Analyst's job
    is not primarily to document requirements; it is to communicate that the stakeholder intent is understood and reflected
    in a validated build. Documenting requirements may help you&amp;nbsp;achieve&amp;nbsp;that objective, but it is only one of
    many available tools. Other tools to use include working with developers on the design, working with testers on what
    needs to be tested, and using the build to ensure that&amp;nbsp;it does what the stakeholders need it to do.
&lt;/p&gt;
&lt;p&gt;
    To help the team to collaborate effectively, the foundational collaboration layer provides you with a set of &lt;a class=&quot;elementLinkWithUserText&quot; href=&quot;./../../openup_basic/customcategories/core_principles_cat,_HEu9QBOHEduCNqgZdt_OaA.html&quot; guid=&quot;_HEu9QBOHEduCNqgZdt_OaA&quot;&gt;practices&lt;/a&gt; that have been shown to motivate effective collaboration. These practices
    apply to work done in all sub-processes.&lt;br /&gt;
    &amp;nbsp;
&lt;/p&gt;</mainDescription>
</org.eclipse.epf.uma:ContentDescription>
