One of the most important aspects of product development processes is variance. No two products were ever developed with exactly the same process. Processes always vary, based on target customers, technology, available budgets, market regulations, and many more characteristics.
Process tailoring is a key capability to deal with variance in development projects and programs. It allows process authors to define rules when projects or programs can deviate from the standard processes.
The basic idea of process tailoring with Stages is select a standard process or a predefined variant of the standard process and then remove or retain certain process elements based on a set of rules. The rules are defined by tailoring questions and answers, which are mapped to process elements.
Examples for tailoring rules are:
- A specific approval activity only needs to be executed if the product is sold to a certain market region.
- The safety manager role is only required if the developed product is safety-critical.
- If the granted budget is over 1M, senior management needs to sign off the project definition milestone. If the budget is over 100K, engineering management needs to sign off. If it is less than 100K, no sign off is needed.
Some tailoring questions might only be relevant if other questions are answered in a certain way, so there might also be dependencies between the questions. For example, the question about the product's safety integrity level or development assurance level only needs to be asked if the product is not an internal prototype.
A tailoring assistant guides a user through the questions. Based on the user's answers, the tailoring configuration for a process will be calculated.
Finally, no set of tailoring rules can ever contain every possible variation. For that reason, every process needs to be reviewed after applying the rules-based tailoring and it must be possible to perform manual tailoring adjustments.
These manual adjustments can be made by users with
Manual Tailoring Modify permissions using the 3dot menu of the respective element:
Define Simple Tailoring Rules
To define tailoring questions and answers, use the
Management > Tailoring menu. It can be accessed by users with
Process Modify permissions. New questions can be created via the
+ button on the left (1).
The questions will be asked and the answers will be displayed in the same order as they are modeled. To change this order, use the
Sort operation in the
To test the tailoring rules, use
Start Tailoring(2) and follow the steps of the tailoring assistant (see here for more info). To reset the tailoring to the default state, use the
Reset Tailoring action (3). To see both options, make sure you are in the
The answers for each question can be defined via the
… menu of the question and selecting the
Add Answer action. To assign dependent elements to an answer use the
… menu of the respective action. To remove process elements in case of a specific answer, assigning elements to the
Remove, if selected action is sufficient.
For more complex scenarios, you can also use the other actions, e.g.
Add, If Selected.
The above video shows how to define tailoring questions, answers, and their dependencies.
Define Dependent Tailoring Rules
You can create questions below other answers, so the questions and answers form a tree. The question below will only be asked if the parent answer is being selected when a user steps through the tailoring assistant. The assistant hereby follows the “depth-first” principle.
To add a question below an answer, use the
… menu of the answer and select the
Define Question action.
When you assign one process element to several answers in this tailoring tree, there can be conflicts whether the element shall be removed or added. To solve these conflicts, the following rules will be applied:
- The tailoring of the question that hangs lower in the tailoring tree - and is, therefore, more specific - wins.
- The tailoring of the answer to which the element is more directly attached wins. (“.. if selected” wins against “… if other selected”)
- If there are contradicting tailorings on the same question level, adding wins over removing.
After these conflicts have been resolved, the remaining tailoring results will be applied in one step to the process elements.
Manage Tailoring for multiple Process Modules
When building a multi-level process architecture (see more detail here), defining the tailoring dependencies at the right module level is key. If you define process areas as separate process modules, some questions might affect the tailoring in several process areas at the same time. For example, the selection of a safety integrity level or development assurance level might impact the requirements management as well as the design and validation process areas. Defining this question in each of the modules would result in the same question being asked multiple times, if those modules are integrated into one workspace.
To prevent this, common questions that affect multiple process modules should be defined in a process module, that is integrated into every process area module, e.g. “Common Elements”. Each module can then define its own tailoring dependencies to those common questions. When the process modules are integrated into one workspace, the tailoring dependencies will be merged into a single question again. When the tailoring assistant is run, common questions will only be asked once, but affect elements from all integrated process areas.
Change Tailoring Mode
The default is to start with a full process and tailor elements out. This behavior should cover most tailoring use cases.
Under some circumstances, the opposite behavior might be useful: start with a process that has all elements tailored away and based on the given answers, only the selected elements are tailored in. To select this behavior, use the
… menu in the tailoring assistant and select
Change Tailoring Mode.
Note that the defined tailoring dependencies will work in reverse when the mode is changed, so you might need to completely redefine them after changing the mode.