Details
BPFM Approach
The BPFM notation permit to represent all the Business Processes included in a family within a single diagram. In BPFM features represent activities, whereas feature constraints express if an activity must or can be inserted in a variant, and if it must or can be included within a path during execution. Data objects are also included in BPFM expressing information useful for the definition of business process variants.
Having in input a set of document, manuals or/and laws to derive process variants we proposed a four steps approach in which process designers are responsible for modelling the business process
- The first step aims at defining a general model that can be successively constitute the basis for the definition of a process variant for the specific deployment context. The model is codified using the BPFM notation.
- The second step foresees the refinement of the previously defined model taking into account the specific needs of the service that has to be delivered and of its deployment context. Similarly to what it is done in feature modeling this step foresees the definition of a configuration on the BPFM model which will permit to define a specific variant from the BP family.
- The third step takes in input activities and data objects resulting from the configuration defined in the previous step. Through the application of mapping rules we define it is possible then to automatically derive BP fragments representing portions of the behaviour that has to be completed to reach the goal of the Business Process.
- The last step concerns the derivation of the fully specified BP variant starting from the generated BP fragments. At this stage process designers add control flow relationships among the generated BP fragments, also taking into account the specific characteristics of its organization.
bpFM Constraints
List of Constraints:
- Mandatory Activity means that the activity must be inserted in each BP model variant and it has to be included in each execution path (A).
- Optional Activity means that the activity can be inserted (or not) in each BP model variant and it could be included (or not) in each execution path (B).
- Domain Activity means that the activity must be inserted in each BP model variant but it could be included (or not) in each execution path (C).
- Special Case Activity means that the activity can be inserted (or not) in each BP model variant, when it is inserted it has to be included in each execution path (D).
- Inclusive Multi Activities means that at least one of the activities must be inserted in each BP model variant, and at least one of them have to be included in each execution path (E).
- One Optional Activity means that exactly one of the activities has to be inserted in each BP model variant, and it could be included (or not) in each execution path (F).
- One Selection Activity means that exactly one of the activities has to be inserted in each BP model variant, and it has to be included in each execution path (G).
- XOR Activities means that all the activities must be inserted in each BP model variant, and exactly one of them has to be included in each execution path (H).
- XOR Selection Activities means that at least one of the activities has to be inserted in each BP model variant, and exactly one of them has to be included in each execution path (I).
- Include and Exclude relationships are considered according to the base definition of FM (J and K).
Tool Overview
The starting screen of the tool is the following.
In order to model a bpFM model click on the document icon of the toolkit.
Then, select the bpFM notation, insert the model name and choose the group of the model.
The user interface is following shown.
In order to generate a business process variant from a bpFM model it is necessary to select the activities that user needs in its process. To do that, double-click on the activity to select and change the attribute Selection. All the selected activities are the Configuration of the bpFM model.
When all the needed activities are selected, it is possible to generate the related BPMN 2.0 variant. The generation algorithm, first, checks the if the configuration respects all the constrains of bpFM. If yes, the BPMN 2.0 variant is generated.
Choose the folder in which put the new BPMN 2.0 model.
In the selected folder the BPMN variant and its related sub-processes are created.