Guideline: Customizing a Method Content Element
This guideline provides recommendations for customizing a method content element.
Relationships
Main Description

Any method content element can be customized. The different ways you can customize an element include:

  • adding guidance to existing method content elements
  • adding new roles, tasks and work products
  • adding text and/or relationships to an existing method content element
  • replacing an existing method content element    
  • renaming an existing method content element 
  • changing method content relationships (e.g., changing the role that is responsible for a work product, changing the primary performing role for a task, changing the input and/or output work products of a task) 
  • deleting existing method content elements     

It is assumed that the method content element being customized cannot be modified directly. Thus, all changes must be stored in a separate plug-in from the method content elements being customized. The customizations are then defined using method content variability. To see the resulting changes, you need to browse or publish a configuration that includes the element being customized and the customizations. For more information, see Guideline: Using Method Content Variability. If you can modify the elements directly, you should follow the guidelines described in Guideline: Defining Method Content Elements.

If you customize a method content element that participates in a process, then you will need to customize that process to use the customized method content. For more information, see Guideline: Customizing a Process.

If you add a new element that is categorized, then you may need to add the new elements to the appropriate standard categories. For more information, see Guideline: Categorizing Method Elements Using Standard Categories.

The following sections provide specific information on how to customize method content elements.

  

Add guidance to an existing method content element

Perform the following steps to add guidance to existing method content elements:

  • If one does not already exist, define the plug-in to contain the customization
  • In the new plug-in, define the guidance element. For more information, see Guideline: Defining Method Content Elements.
  • Determine what method elements the guidance should be associated with/referenced from and where those elements exist. 
  • In the new plug-in, define an element that contributes to the original and add the association to the guidance in the contributor. For more information on contribution, see Guideline: Using Method Content Variability.

Add a new role

Perform the following steps to add new method role:

  • If one does not already exist, create a plug-in to to contain the new role.
  • In the new plug-in, create the new role and specify what work products the role should own. For more information, see Guideline: Defining Method Content Elements.
  • If you want to add the role as a performer of an existing task, in the new plug-in, create a task that contributes to the task you want to change. In the contributor, add an association to the new role.

  

Add a new task

Perform the following steps to add new method task:

  • If one does not already exist, create a plug-in to to contain the new task.
  • In the new plug-in, create the new task, being sure to specify what role performs the task and what work products are input and output. For more information, see Guideline: Defining Method Content Elements

     

Add a new work product

Perform the following steps to add new method work product:

  • If one does not already exist, create a plug-in to to contain the new work product.
  • In the new plug-in, create the new work product. For more information, see Guideline: Defining Method Content Elements
  • If you want to add the work product as an input or an output of an existing task, in the new plug-in, create a task that contributes to the task you want to change. In the contributor, add an association to the work product.

         

Add new text and/or relationships to an existing method content element

Anything (text and/or associations can be added to any method content element using contribution, a type of method content variability. For more information, see Guideline: Using Method Content Variability.

Perform the following steps to add text and/or associations to an existing method content element:

  • If one does not already exist, create a plug-in to to contain the method content element additions.
  • In the new plug-in, create an element of the same type as the element you want to add to an make that element contribute to the element you want to add to. For example, if I wanted to add an input work product to a task, I would create a task contributor.
  • In the contributor, add whatever it is you want to add to the original element. For example, if I wanted to add an input work product to a task, I would create a an input work product to the task contributor. For more information, see Guideline: Defining Method Content Elements.  
      

Replace an existing method content element

Any method content element can be replaced using replaces, a type of method content variability. For more information, see Guideline: Using Method Content Variability.

Perform the following steps to replace an existing method content element (e.g., a role, task, work product or guidance):

  • If one does not already exist, create a plug-in to to contain the method content element that will be replacing the original.
  • In the new plug-in, create the element you want to replace the existing element with (they must be of the same type). For example, if I wanted to replace a task with a new task, I would create a new task.
  • Specify that the new task is to replace the original task (replaces variability).
  • Add the replacers outgoing relationships and textual descriptions. For example, if I wanted to replace task, I would specify the task's primary performing role and input and output work products. For more information, see Guideline: Defining Method Content Elements.  
       

Rename an existing method content element

Any method content element can be renamed using extends-replaces, a type of method content variability. For more information, see Guideline: Using Method Content Variability.

Perform the following steps to rename an existing method content element (e.g., a role, task, work product or guidance):

  • If one does not already exist, create a plug-in to to contain the method content element with the new name.
  • In the new plug-in, create a method content element of the same type as the one you want to rename and give it the name you want to use as the new name. For example, if I wanted to rename a task to MyTask, I would create a new task and name it MyTask. For more information, see Guideline: Defining Method Content Elements.
  • Specify that the new task is to extends-replace the original task (extends-replaces variability).

       

Change the role that is responsible for a work product

A role may be responsible for one or more work products. A work product may have only one responsible role. The role "owns" the role-responsible for-work product association.

Perform the following steps to change the responsible role for an existing work product:

  • If one does not already exist, create a plug-in to to contain the customizations.
  • In the new plug-in, role and make it contributor to the role that you want to assign the work product to.
  • In the role contributor, add an association to the work product.
  • If there are now two roles that are responsible for the work product, the original responsibility must be removed.
  • Define a role that extends and replaces the original responsible role. In the extends-replaces element, add all of the role-responsible for-work product associations that existed in the original role, except for the one your just replaced. 

     

Change the primary performing role for a task

A task may only have one primary performing role. The task "owns" the task-primarily perform by-role association.

Perform the following steps to change the primary performing role for an existing task:

  • If one does not already exist, create a plug-in to to contain the customizations.
  • In the new plug-in, define a task that extends and replaces the original task.
  • In the new task, specify the role as the primary performer. There is no need to make any more changes since every task can only have one primary performing role.

Change the input and/or output work products of a task

A task may only have any number of input and output work products. The task "owns" the task-work product associations.

Perform the following steps to change the input and/or output work products of an existing task:

  • If one does not already exist, create a plug-in to to contain the customizations.
  • In the new plug-in, define a task that extends and replaces the original task.
  • In the new task, specify the desired input and output work products for the task, including those from the original that you want to carry forward, plus the associations to your new work products. 
         

Delete existing method content elements

Perform the following steps to remove an existing method element:

   

Special instructions when authoring in the UMF: When customizing method content elements that are to existing within the Unified Method Framework (UMF), the following needs to be considered:

  • In general, the practice framework plug-in types need to be considered. These types affect what elements can be placed in what plug-in. For example, customizations of method elements are defined in Extend plug-ins. For more information on these plug-in types, see Concept: Practice Library Plug-In Types. However, If you find that rather than customizing the base UMF elements in separate plug-ins (the recommended approach) that you would like a change to the UMF element itself, see Guideline: Requesting a Change to the Unified Method Framework.
  • When customizing roles and role assignments, keep in mind that the UMF implements a delayed assignment approach for roles. However, practices may include default role assignments (e.g., specifying what roles perform the practice tasks and what roles are responsible for the practice work products) in separate Assign plug-ins. To change these assignments, make a copy of the Assign plug-in for the practice, and change the desired roles and/or role assignments, as needed. Then use the new assignment plug-in place of the original assignment plug-in when the alternative roles are needed. For more information, see Guideline: Roles in the UMF.
  • When customizing standard category assignments, keep in mind that the UMF implements a delayed assignment approach for some standard categories. However, practices may include default standard category assignments (e.g., mapping the practice tasks to disciplines, mapping the practice work products to domains, etc) in separate Assign plug-ins. To change these assignments, make a copy of the Assign plug-ins, and change the desired standard categories and/or category assignments, as needed. Then use the new assignment plug-in place of the original assignment plug-in when the alternative standard category assignments are needed. For more information, see Guideline: Standard Categories in the UMF.

For more information on Extend and Assign plug-ins, see Concept: Practice Library Plug-In Types. For more information on delayed categorization, see Concept: Delayed Assignment.

   

Special instructions when authoring in the UMF: When customizing processes that are to existing within the Unified Method Framework (UMF), the UMF plug-in types need to be considered. These types affect what elements can be placed in what plug-in. For example, customizations of process elements are defined in Extend plug-ins. For more information on these plug-in types, see Concept: Practice Library Plug-In Types. However, If you find that rather than customizing the base UMF elements in separate plug-ins (the recommended approach) that you would like a change to the UMF element itself, see Guideline: Requesting a Change to the Unified Method Framework.

More Information