blob: b739f37e27a94aa7416af02920c0615134e7388c [file] [log] [blame]
<?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" xmlns:rmc="http://www.ibm.com/rmc"
rmc:version="7.5.0" xmi:id="-n2rq5P3Y8Gb-AcFTHibPsQ"
name="practice_lib_plugin_types.umf,_I0aCUGVSEd2sEeXQllKBcA" guid="-n2rq5P3Y8Gb-AcFTHibPsQ"
changeDate="2008-11-05T10:05:43.921-0800" version="1.0.0">
<mainDescription>&lt;h3>&#xD;
Core plug-in subtypes&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
There are a number of different types of elements that are&amp;nbsp;intended to be shared across the framework (i.e.,&#xD;
are&amp;nbsp;contained in core plug-ins). However,&amp;nbsp;several of these items need to be reused independently (i.e., I&#xD;
want to share&amp;nbsp;tool definitions, but I want to define my own domains).&amp;nbsp;Thus, in addition to the above primary&#xD;
plug-in types, the &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.extend_umf/guidances/concepts/umf_C03950A8.html&quot;&#xD;
guid=&quot;_nrrn4GqHEdun45RPFGeYnA&quot;>Unified Method Framework (UMF)&lt;/a>&amp;nbsp;also defines a number of Core&#xD;
plug-in&amp;nbsp;subtypes.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Slot&lt;/strong> plug-ins contain the &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/concepts/work_product_slot_D5B44CE7.html&quot;&#xD;
guid=&quot;_Er1OcJIfEdybeduord13cg&quot;>Work Product Slot&lt;/a>&amp;nbsp;definitions, as well as any associated guidance.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Common&lt;/strong> plug-ins contain common reusable elements such as &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_826E4C22.html&quot;&#xD;
guid=&quot;_H4JXwB_SEdq6CKKKq4D7YA&quot;>work product&lt;/a>s or &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/guidance_549AC394.html&quot;&#xD;
guid=&quot;_83ttAB_NEdq6CKKKq4D7YA&quot;>guidance&lt;/a>&amp;nbsp;that are intended to be shared across plug-ins.&amp;nbsp;It is possible&#xD;
for different practices to utilize the same underlying work products and basic guidance even though they have alternate&#xD;
approaches with different techniques to produce the same work products.&amp;nbsp;Instead of creating unnecessary&#xD;
dependencies between practices that are peers, shared elements are defined as common. Common elements, by their very&#xD;
nature, as defined in a practice-independent way so that multiple practices can share the common content.&amp;nbsp;They are&#xD;
written at a generic level with the expectation that they will be further specialized as needed for a particular&#xD;
practice and/or process.&amp;nbsp;Work products should be with the content that supports them.&amp;nbsp;Only truly common work&#xD;
product definitions should be in common.&amp;nbsp;A litmus test for deciding whether a method element should be placed in a&#xD;
common plug-in or not is whether the content is applicable across all contexts for which it applies.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The following are some examples of the use of common elements:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
A&amp;nbsp;light weight architecture practice and a heavy weight architecture practice can share a common definition of&#xD;
an architecture work product, but not share &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/task_6C1FF051.html&quot;&#xD;
guid=&quot;_x459ktnmEdmO6L4XMImrsA&quot;>task&lt;/a>s (the tasks are defined in the practice).&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Two different types of development (e.g., Greenfield vs. reverse engineering approaches) produce the same work&#xD;
products, but they go through different state changes, have different tasks, etc.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
&lt;strong>Role Definition&lt;/strong> plug-ins contain the &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/role_37A0C602.html&quot;&#xD;
guid=&quot;_yUefQNnmEdmO6L4XMImrsA&quot;>role&lt;/a>s&amp;nbsp;(and optionally &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/role_set_396DC9DB.html&quot;&#xD;
guid=&quot;_Fs8HAMaIEduMlb2cQZNTYw&quot;>role set&lt;/a>&amp;nbsp;definitions) that are intended to be shared across&#xD;
practices.&amp;nbsp;Since practice frameworks usually implements a &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/concepts/delayed_assignment_24142865.html&quot;&#xD;
guid=&quot;_rlrykJcbEd2sTqxclDgvog&quot;>Delayed Assignment&lt;/a>&amp;nbsp;approach for roles, the Role Definition plug-ins do not&#xD;
contain the assignment of roles to &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_826E4C22.html&quot;&#xD;
guid=&quot;_H4JXwB_SEdq6CKKKq4D7YA&quot;>work product&lt;/a>s or &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/task_6C1FF051.html&quot;&#xD;
guid=&quot;_x459ktnmEdmO6L4XMImrsA&quot;>task&lt;/a>s.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Category Definition&lt;/strong> plug-ins contain category definitions that are intended to be shared across&#xD;
practices.&amp;nbsp;In the UMF, this includes &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/discipline_7667F451.html&quot;&#xD;
guid=&quot;_yGUuidnmEdmO6L4XMImrsA&quot;>discipline&lt;/a>, &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/domain_D8238B93.html&quot;&#xD;
guid=&quot;_yHEVYdnmEdmO6L4XMImrsA&quot;>domain&lt;/a>, &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_kind_F04A382B.html&quot;&#xD;
guid=&quot;_QWhfYMaJEduMlb2cQZNTYw&quot;>work product kind&lt;/a>&amp;nbsp;and possibly &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/role_set_396DC9DB.html&quot;&#xD;
guid=&quot;_Fs8HAMaIEduMlb2cQZNTYw&quot;>role set&lt;/a>&amp;nbsp;definitions (if they are not in the Role Definition&#xD;
plug-in).&amp;nbsp;Since practice frameworks usually implement a &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/concepts/delayed_assignment_24142865.html&quot;&#xD;
guid=&quot;_rlrykJcbEd2sTqxclDgvog&quot;>Delayed Assignment&lt;/a>&amp;nbsp;approach for standard categories, the Category Definition&#xD;
plug-ins do not contain the assignment of elements to these categories. &lt;a class=&quot;elementLinkWithUserText&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_D0FBC781.html&quot;&#xD;
guid=&quot;_BangwMaJEduMlb2cQZNTYw&quot;>Tools&lt;/a> are defined in separate Tool Definition plug-ins, as these were envisioned to&#xD;
be separately reusable from the other standard categories.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Tool Definition&lt;/strong> plug-ins contain &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_D0FBC781.html&quot;&#xD;
guid=&quot;_BangwMaJEduMlb2cQZNTYw&quot;>tool&lt;/a>&amp;nbsp;and &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_mentor_264766F3.html&quot;&#xD;
guid=&quot;_yYy-mdnmEdmO6L4XMImrsA&quot;>tool mentor&lt;/a>&amp;nbsp;definitions that are intended to be shared across practices. The&#xD;
assignment of tools to tool mentors not generally delayed assigned, so the Tool Definition plug-ins contain the&#xD;
assignment of the included tool mentors to the tools. Practice-specific tool mentors &lt;a class=&quot;elementLinkWithUserText&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_mentor_264766F3.html&quot;&#xD;
guid=&quot;_yYy-mdnmEdmO6L4XMImrsA&quot;>&lt;/a>and assignment of the practice-specific tool mentors to the tools are defined in&#xD;
Practice plug-ins.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Navigation View Definition&lt;/strong> plug-ins contain navigation view definitions that are intended to be shared&#xD;
across plug-ins (e.g., generic navigation views and navigation view building blocks).&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&lt;strong>Release Copyright&lt;/strong> plug-ins contain the release copyrights that should be used for the plug-ins in the&#xD;
framework.&amp;nbsp;There may be any number of Release Copyright plug-ins.&amp;nbsp;Every plug-in should have the appropriate&#xD;
copyright plug-in associated to it.&#xD;
&lt;/p></mainDescription>
</org.eclipse.epf.uma:ContentDescription>