blob: 7dd943851cc6bdee044c461b6eed22c2d33dba00 [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="-JkSC1YDXGrB9_LWawZTXQQ"
name="customizing_process,_5e_qMFTMEd2N4vZAlUIPvw" guid="-JkSC1YDXGrB9_LWawZTXQQ"
changeDate="2008-11-02T03:00:57.453-0800" version="7.5.0">
<mainDescription>&lt;p>&#xD;
This guideline describes how to customize an existing &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.default.uma_concept.base/guidances/termdefinitions/process_68E308B4.html&quot;&#xD;
guid=&quot;_yQ5m2NnmEdmO6L4XMImrsA&quot;>process&lt;/a>.&amp;nbsp;For more information on key process definition concepts like&#xD;
activities, capability patterns, delivery processes, process diagrams, descriptors, and so on, see &lt;a&#xD;
class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/p>&#xD;
&lt;div>&#xD;
When customizing a process, it is important to explicitly identify what process you will actually customize (remember:&#xD;
a specific process may be defined in one place and &quot;applied&quot; in many other processes,&amp;nbsp;either copied or linked to).&#xD;
Once you have identified what process to customize, you can execute the scenarios described in this document on that&#xD;
process.&#xD;
&lt;/div>&#xD;
&lt;div>&#xD;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&#xD;
&lt;/div>&#xD;
&lt;div>&#xD;
The following questions can help you decide what process to customize:&#xD;
&lt;/div>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Do you want to change an overall process?&#xD;
&lt;/li>&#xD;
&lt;li style=&quot;LIST-STYLE-TYPE: none&quot;>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, then that process is the process&amp;nbsp;to be customized.&lt;br />&#xD;
&amp;nbsp;&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Do you want to change an activity in a process (i.e., the elements it contains or its flow)?&#xD;
&lt;/li>&#xD;
&lt;li style=&quot;LIST-STYLE-TYPE: none&quot;>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, is the activity you want to change a reference to process/activity that is defined elsewhere (i.e.,&#xD;
what it created by extending or copying a capability pattern/activity defined in another process)?&#xD;
&lt;/li>&#xD;
&lt;li style=&quot;LIST-STYLE-TYPE: none&quot;>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, do you want to change all instances of the activity?&#xD;
&lt;/li>&#xD;
&lt;li style=&quot;LIST-STYLE-TYPE: none&quot;>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, find the base definition of the process that the activity was created from. That&#xD;
process is the process to be customized.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
If not, the current process is the process to be customized.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
If not, then the activity you want to change is defined in this process, so this process is the&#xD;
process to be customized.&lt;br />&#xD;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Do you want to change a role, task or work product descriptor in the process?&amp;nbsp; &#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, is the descriptor linked to a method content element? &#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, do you want the change to affect all occurrences of the role, task or work product?&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;li style=&quot;LIST-STYLE-TYPE: none&quot;>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If so, you need to customize the method content elements (see &lt;a&#xD;
class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/customizing_method_content_element_87D73FFF.html&quot;&#xD;
guid=&quot;_5cHsoFJsEd2SzrMjC_svdw&quot;>Guideline: Customizing a Method Content Element&lt;/a>) and&#xD;
then update the process to pick up the changes (see the &quot;Update a process to include&#xD;
changes made to the underlying method content &quot; scenario in this guideline).&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
If not, you will be making a &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/termdefinitions/local_process_change_DDE09573.html&quot;&#xD;
guid=&quot;_OQgikFTTEd2N4vZAlUIPvw&quot;>local process change&lt;/a>&amp;nbsp;to the descriptors. For more&#xD;
information, see the &quot;Change the role, task or work product descriptors&quot; scenario in this&#xD;
guideline.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
If not, you will be making a &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/termdefinitions/local_process_change_DDE09573.html&quot;&#xD;
guid=&quot;_OQgikFTTEd2N4vZAlUIPvw&quot;>local process change&lt;/a>&amp;nbsp;to the descriptors. For more&#xD;
information, see the &quot;Change the role, task or work product descriptors&quot; scenario in this&#xD;
guideline.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;/li>&#xD;
&lt;/ul>&lt;br />&#xD;
&lt;div>&#xD;
Once the process has been customized, you need to decide if you want to customize other processes that were originally&#xD;
dependent on (or built from) the process that you customized. If so, then you need to perform the &quot;Replace an existing&#xD;
activity with another activity &quot; scenario for those processes so they reflect the customizations you&#xD;
made.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br />&#xD;
&lt;/div>&#xD;
&lt;p>&#xD;
It is assumed that the process&amp;nbsp;being customized cannot be modified directly. Thus, all process changes must be&#xD;
stored in a separate plug-in from the process being customized. To see the resulting changes, you need to browse or&#xD;
publish a configuration that includes the element being customized and the customizations. If&amp;nbsp;you can modify the&#xD;
process directly, you should follow the guidelines described in &lt;a class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The following are some ways you can customize a process:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Update a process to include changes made to the underlying method content&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the textual descriptions of the process itself or its elements&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Add new activities&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Add new roles, tasks or work products&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Replace an existing activity with another activity&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the role, task or work product descriptors&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the process flow&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Add a new, or change an existing, process diagram&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
The following sections describe these scenarios in more detail.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
&amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;h3>&#xD;
Update a process to include changes made to the underlying method content&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
Perform the following steps to customize a process to include changes made to underlying method content:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If one does not already exist, create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Make a copy of the default configuration for the process to be customized.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
In the new configuration, add the new plug-in and the plug-ins that contain the method content changes.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the default configuration of the new process to the new configuration.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Synchronize the new process against the new configuration. For more information on descriptors and process&#xD;
synchronization, see &lt;a class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
The method content changes should now be picked up.&amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&lt;br />&#xD;
&lt;h3>&#xD;
Add a new role, task or work product to the process&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
Roles, tasks and work products are represented as descriptors in a process. For more information on descriptors, see &lt;a&#xD;
class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&lt;br />&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Perform the following steps to add a new role, task or work product (descriptor) to an existing process:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
If one does not already exist, create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Make a copy of the default configuration for the process to be customized.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
In the new configuration, add the new plug-in and the plug-ins that contain the method content elements to be&#xD;
added.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the default configuration of the new process to the new configuration.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Synchronize the new process against the new configuration. For more information on descriptors and process&#xD;
synchronization, see &lt;a class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Drag and drop the role, task or work product to be added into the process. Descriptors are created.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Refine the flow between the new element and the existing element, as needed (for example, adding predecessors to&#xD;
the new task descriptor, or specifying the new task descriptor&amp;nbsp;as a predecessor to an existing task&#xD;
descriptor). The method content elements are now part of the process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the new process to specify that it is to replace the original process.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;h3>&#xD;
Replace an existing activity with another activity&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
Perform the following steps to replace an activity with another activity:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Make a copy of the default configuration for the process to be customized.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
In the new configuration, add the new plug-in and the plug-ins that contain the method content changes.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the default configuration of the new process to the new configuration.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Synchronize the new process against the new configuration. For more information on descriptors and process&#xD;
synchronization, see &lt;a class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the activity to be replaced so that the activity is an extension of the new activity. The&#xD;
process now includes the new activity.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the new process to specify that it is to replace the original process.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
&amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;h3>&#xD;
Change the role, task or work product descriptors&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
Roles, tasks and work products are represented as descriptors in a process. For more information on descriptors, see &lt;a&#xD;
class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>. The relationships between the descriptors are created&#xD;
at the time the elements are added to the process and those relationships reflect the relationships as resolved in the&#xD;
process'es default configuration.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
The descriptor text and relationships can be changed directly in the process. If the descriptors are associated with&#xD;
method content elements, such descriptor changes do not affect the associated method content elements (they are&#xD;
considered &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/termdefinitions/local_process_change_DDE09573.html&quot;&#xD;
guid=&quot;_OQgikFTTEd2N4vZAlUIPvw&quot;>local process change&lt;/a>s).&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Perform the following steps to change the role, task or work product descriptors directly in a customized process:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the descriptor textual descriptions or relationships directly in the new process. The process now includes&#xD;
the descriptor changes.&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the new process to specify that it is to replace the original process.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;h3>&#xD;
Change the process flow&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
The process flow is the flow between the activities or task (descriptors in the process. You can change the flow by&#xD;
changing the predecessors of the activities and the task descriptors). This can be done directly in the work breakdown&#xD;
structure, or, if there is an associated activity diagram,&amp;nbsp;by changing the control between the elements on the&#xD;
activity diagram. For more information creating a new or changing and existing activity diagram, see the process&#xD;
diagram section of this guideline.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Even if the elements in the process are associated with method content elements, changing the flow between the elements&#xD;
in a process does not affect the associated method content elements (flow changes are considered &lt;a class=&quot;elementLink&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/termdefinitions/local_process_change_DDE09573.html&quot;&#xD;
guid=&quot;_OQgikFTTEd2N4vZAlUIPvw&quot;>local process change&lt;/a>s).&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Perform the following steps to change the process flow of an existing process:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the predecessors in the work breakdown structure, as needed to obtain the desired flow, or, if there is an&#xD;
associated activity diagram,&amp;nbsp;change the control flow in the activity diagram. The process flow is now&#xD;
changed.&amp;nbsp;&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the new process to specify that it is to replace the original process.&#xD;
&lt;/li>&#xD;
&lt;/ul>&#xD;
&lt;p>&#xD;
&amp;nbsp;&amp;nbsp;&#xD;
&lt;/p>&#xD;
&lt;h3>&#xD;
Add a new, or change an existing, process diagram&amp;nbsp;&amp;nbsp;&#xD;
&lt;/h3>&#xD;
&lt;p>&#xD;
There are two types of process diagrams, activity diagrams and activity detail diagrams. For more information on these&#xD;
diagrams and when and how they can be used, see &lt;a class=&quot;elementLinkWithType&quot;&#xD;
href=&quot;./../../../core.mdev.common.base/guidances/guidelines/defining_processes_756EDFA.html&quot;&#xD;
guid=&quot;_Y_JroEyDEdu4NY1n_hCY0w&quot;>Guideline: Defining Processes&lt;/a>.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
Perform the following steps to add a new, or change an existing, process diagram:&#xD;
&lt;/p>&#xD;
&lt;ul>&#xD;
&lt;li>&#xD;
Create a new plug-in to contain the customized process.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Copy the original process and place the copy in the new plug-in.&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Create a new or change an existing process diagram, at the desired levels in the process. The process now contains&#xD;
the desired process diagram.&amp;nbsp;&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;li>&#xD;
Change the definition of the new process to specify that it is to replace the original process.&amp;nbsp;&#xD;
&lt;/li>&#xD;
&lt;/ul></mainDescription>
</org.eclipse.epf.uma:ContentDescription>