| <?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="-FKYPLgn_QSFxXDcUbLIhpg" |
| name="new_guideline,_InSicKmlEd2eRp4Z7dEEOQ" guid="-FKYPLgn_QSFxXDcUbLIhpg" changeDate="2008-11-03T04:48:17.156-0800" |
| version="7.5.0"> |
| <mainDescription><p>
 |
| Structuring the <a class="elementLink"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/practice_fw_6DA4D54D.html"
 |
| guid="__LjaEFQsEd2uvIuuFjd1Fg">Practice Framework</a>&nbsp;core is where the core elements of the framework and their
 |
| relationships are defined. The core structure must be developed within the guiding principles and constraints of the
 |
| practice framework&nbsp;in which the core resides.
 |
| </p>
 |
| <p>
 |
| When structuring a practice, resist the temptation to enter detailed descriptions into the defined core
 |
| elements.&nbsp;Instead, just name and briefly describe the elements and enter a few outline details, if they help to
 |
| more clearly describe the element's basic definition.&nbsp;For more information, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/method_element_naming_conventions_4A4F743B.html"
 |
| guid="_lAphAF5-EduT-Px7fh0LSg">Guideline: Method Element Naming Conventions</a>&nbsp;and <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/writing_brief_descriptions_D01D2F53.html"
 |
| guid="_cJbBkCAhEdy1y5bWsXfCCg">Guideline: Writing Brief Descriptions</a>.
 |
| </p>
 |
| <p>
 |
| When structuring the core elements, be sure to look for opportunities to leverage existing information in other core
 |
| elements (for example, core elements for a specific context may extend, customize and reuse elements from a more
 |
| general core). If you find existing core elements in another context-specific core that you would like to share, work
 |
| with the method architects to get the common information moved to&nbsp;a more general core where it can be shared.
 |
| Likewise, core elements should be defined to maximize reuse.&nbsp;If while structuring the core elements for a specific
 |
| context,&nbsp;you define an element that can be shared across contexts, it should be defined in&nbsp;in a more general
 |
| core where it can be shared.&nbsp;
 |
| </p>
 |
| <p>
 |
| Core elements are physically packaged in&nbsp;Core plug-ins. For more information on Core plug-ins and what elements
 |
| should be placed in what plug-ins, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/practice_lib_plugin_types_3EA8002F.html"
 |
| guid="__428YO6cEdygKbJMUVNEtg">Concept: Practice Library Plug-In Types</a>. For more information on defining plug-ins,
 |
| see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/defining_plugins_CF19789C.html"
 |
| guid="_OIOSQF_zEduYvI5nsNyVYA">Guideline: Defining Plugins</a>.
 |
| </p>
 |
| <p>
 |
| Structuring the core elements involves:
 |
| </p>
 |
| <ul>
 |
| <li>
 |
| <strong>Defining the</strong> <a class="elementLink"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/work_product_slot_D5B44CE7.html"
 |
| guid="_Er1OcJIfEdybeduord13cg">Work Product Slot</a><strong>s</strong>. For more information, see <a
 |
| class="elementLinkWithType"
 |
| href="./../../../practice.mdev.auth.practice_fw_arch.base/guidances/guidelines/defining_work_product_slots_EE90888A.html"
 |
| guid="_qVnDgC2sEd2CiunvJQy6fQ">Guideline: Defining Work Product Slots</a>.
 |
| </li>
 |
| <li>
 |
| <strong>Defining the common</strong> <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/method_content_6972AE81.html"
 |
| guid="_Ts2joB_MEdq6CKKKq4D7YA">method content</a><strong>&nbsp;elements and their relationships</strong> (including
 |
| shared <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/role_37A0C602.html"
 |
| guid="_yUefQNnmEdmO6L4XMImrsA">role</a>s,&nbsp;<a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_826E4C22.html"
 |
| guid="_H4JXwB_SEdq6CKKKq4D7YA">work product</a>s and <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/guidance_549AC394.html"
 |
| guid="_83ttAB_NEdq6CKKKq4D7YA">guidance</a>). For more information, see the "Defining the common method content
 |
| elements" section of this guideline.
 |
| </li>
 |
| <li>
 |
| <strong>Defining the shared standard categories</strong> (e.g., <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/domain_D8238B93.html"
 |
| guid="_yHEVYdnmEdmO6L4XMImrsA">domain</a>s and <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/discipline_7667F451.html"
 |
| guid="_yGUuidnmEdmO6L4XMImrsA">discipline</a>s). For more information, see the "Defining shared standard
 |
| categories" section of this guideline.&nbsp;
 |
| </li>
 |
| <li>
 |
| <strong>Defining the shared custom categories</strong> (including shared <a class="elementLink"
 |
| href="./../../../core.mdev.common.base/guidances/termdefinitions/navigation_view_8F89044.html"
 |
| guid="_X_hFIPAjEdyHz_B1XFOUgA">navigation view</a>s). For more information, see the "Defining shared custom
 |
| categories" section of this guideline.
 |
| </li>
 |
| </ul>
 |
| <p>
 |
| Additional information on defining these core elements is provided in the following sections.
 |
| </p>
 |
| <p>
 |
| &nbsp;&nbsp;
 |
| </p>
 |
| <h3>
 |
| Defining a work product slot
 |
| </h3>
 |
| <p>
 |
| Work product slots are implemented as <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_826E4C22.html"
 |
| guid="_H4JXwB_SEdq6CKKKq4D7YA">work product</a>s. However, they are "special" work products in that they are
 |
| implementation/representation agnostic. Thus, for general information on defining work products, see <a
 |
| class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/defining_method_content_elements_21A491E3.html"
 |
| guid="_XQqJkCAmEdy1y5bWsXfCCg">Guideline: Defining Method Content Elements</a>.
 |
| </p>
 |
| <p>
 |
| It&nbsp;is important to remember that work products slots are not “real” elements, in the method sense.&nbsp;Thus,
 |
| there are some additional authoring guidelines:
 |
| </p>
 |
| <ul>
 |
| <li>
 |
| Work product slots may appear as inputs to tasks
 |
| </li>
 |
| <li>
 |
| Work product slots may not appear as an output to tasks
 |
| </li>
 |
| <li>
 |
| Work product slots are filled by real work products in specific practices&nbsp;&nbsp;
 |
| </li>
 |
| <li>
 |
| Work product slots should not be categorized using standard categories
 |
| </li>
 |
| <li>
 |
| When naming separate work product slots, use a descriptive name that indicates explicitly that the element is a
 |
| slot.&nbsp; Specifically, the slot's presentation name should be between brackets and it's internal name should end
 |
| in (“_slot”).&nbsp; Such conventions make it easy to see what is a slot and what is an actual artifact that fills a
 |
| slot.&nbsp;<br />
 |
| For example:
 |
| </li>
 |
| <li style="LIST-STYLE-TYPE: none">
 |
| <ul>
 |
| <li>
 |
| Presentation Name: [Specified System]
 |
| </li>
 |
| <li>
 |
| Name: specified_system_slot&nbsp;
 |
| </li>
 |
| </ul>
 |
| </li>
 |
| </ul>
 |
| <h4>
 |
| Defining the common method content elements
 |
| </h4>
 |
| <p>
 |
| In a practice framework, the common method elements usually include common roles definitions, work product definitions
 |
| and guidance. Tasks are not considered common elements (they defined in specific practices).
 |
| </p>
 |
| <p>
 |
| The following sections provide core-specific recommendations for defining the common method content elements. For
 |
| general guidelines on defining method content elements, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/defining_method_content_elements_21A491E3.html"
 |
| guid="_XQqJkCAmEdy1y5bWsXfCCg">Guideline: Defining Method Content Elements</a>.&nbsp;
 |
| </p>
 |
| <h5>
 |
| Defining common work products
 |
| </h5>
 |
| <p>
 |
| Work product definitions are provided in core to allow practices to share the common definition, even though they may
 |
| use the work product differently (e.g., provide different techniques for producing and consuming the work product).
 |
| </p>
 |
| <p>
 |
| Work products are not specified as fulfilling specific slots in the core. The fulfillment of slots is defined within
 |
| the practice (not in common).&nbsp;<br />
 |
| Note: Even though common work products are defined in&nbsp;Core, they do not really "exist" as part of the method being
 |
| defined until they are placed in a slot by a practice. In that case, the work product is considered conceptually part
 |
| of that practice.&nbsp;The only reason these work product definitions are physically placed in&nbsp;the core&nbsp;is so
 |
| their definition can be shared.&nbsp;
 |
| </p>
 |
| <p>
 |
| Work products in the core are generally "state free".&nbsp;Specific work product states are considered
 |
| practice-specific information.
 |
| </p>
 |
| <p>
 |
| Work products in the core do not have an associated responsible role. What role is responsible for what work product is
 |
| a practice-specific decision.
 |
| </p>
 |
| <h5>
 |
| Defining common roles
 |
| </h5>
 |
| <p>
 |
| Practice frameworks generally implement a&nbsp;<a class="elementLink"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/delayed_assignment_24142865.html"
 |
| guid="_rlrykJcbEd2sTqxclDgvog">Delayed Assignment</a>&nbsp;approach for roles and role&nbsp;assignments so the role
 |
| definitions and/or assignments can be easily changed. Common role definitions are included in the core, but they are
 |
| not assigned to work products or tasks. These assignments are defined as part of the practice.
 |
| </p>
 |
| <h5>
 |
| Defining common guidance
 |
| </h5>
 |
| <p>
 |
| Common guidance is guidance that can be shared across practices.&nbsp;Such guidance is not associated to any method
 |
| content elements in the core. Such associations are done as part of defining the practice.<br />
 |
| Note: Even though common guidance is defined in&nbsp;the core, such guidance is considered conceptually part of the
 |
| practice where the guidance is associated to specific practice elements.
 |
| </p>
 |
| <p>
 |
| &nbsp;&nbsp;&nbsp;
 |
| </p>
 |
| <h3>
 |
| Defining shared standard categories
 |
| </h3>
 |
| <p>
 |
| Standard category definitions (<a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/domain_D8238B93.html"
 |
| guid="_yHEVYdnmEdmO6L4XMImrsA">domain</a>s, <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/discipline_7667F451.html"
 |
| guid="_yGUuidnmEdmO6L4XMImrsA">discipline</a>s, <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/work_product_kind_F04A382B.html"
 |
| guid="_QWhfYMaJEduMlb2cQZNTYw">work product kind</a>s, <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/role_set_396DC9DB.html"
 |
| guid="_Fs8HAMaIEduMlb2cQZNTYw">role set</a>s, <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_D0FBC781.html"
 |
| guid="_BangwMaJEduMlb2cQZNTYw">tool</a>s) are are generally shared across practices, so they are defined in the
 |
| practice framework core. However, practice frameworks generally implement a <a class="elementLink"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/delayed_assignment_24142865.html"
 |
| guid="_rlrykJcbEd2sTqxclDgvog">Delayed Assignment</a>&nbsp;approach for standard categories, except for tools (since
 |
| what <a class="elementLink"
 |
| href="./../../../core.default.uma_concept.base/guidances/termdefinitions/tool_mentor_264766F3.html"
 |
| guid="_yYy-mdnmEdmO6L4XMImrsA">tool mentor</a>s are assigned to what tools usually does not change). Thus these
 |
| categories are defined in the core, but elements are not categorized using these categories in the core. The
 |
| categorization happens as part of the practice. For more information on categorizing method elements into standard
 |
| categories, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/categorizing_method_elements_using_std_cats_854BD33A.html"
 |
| guid="_thsRIMjnEdyoXMhaXAJ-6g">Guideline: Categorizing Method Elements Using Standard Categories</a>.
 |
| </p>
 |
| <p>
 |
| &nbsp;&nbsp;
 |
| </p>
 |
| <h3>
 |
| Defining shared custom categories
 |
| </h3>
 |
| <p>
 |
| Custom categories may be defined in the core that can be shared across practices. A common example of a shared custom
 |
| category is a navigation view, but other custom categories may be defined, as well.
 |
| </p>
 |
| <p>
 |
| Elements are added to the shared custom categories in the core and in practices, as desired. For more information on
 |
| categorizing method elements into standard categories, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/guidelines/categorizing_method_elements_using_custom_cats_F66C3F90.html"
 |
| guid="_V7qwIMjpEdyoXMhaXAJ-6g">Guideline: Categorizing Method Elements Using Custom Categories</a>.
 |
| </p>
 |
| <p>
 |
| These custom categories&nbsp;can then be&nbsp;included, as desired, as part of&nbsp;publishable method configurations.
 |
| For more information on publishable configurations, see <a class="elementLinkWithType"
 |
| href="./../../../core.mdev.common.base/guidances/concepts/practice_lib_config_types_B96A959A.html"
 |
| guid="_1gchoO6dEdygKbJMUVNEtg">Concept: Practice Library Configuration Types</a>.&nbsp;
 |
| </p></mainDescription> |
| </org.eclipse.epf.uma:ContentDescription> |