Patterns
From Business Process Management, BPM and Workflow Automation Wiki | BizAgi BPMS
<keywords content="keywords">
modeling, patterns, modeling patterns, workflow
</keywords>
Contents |
Modeling Patterns
A pattern is the abstraction of a concrete form that tends to repeat itself in a specific, non-arbitrary context.
Patterns have been defined by different variables, some of which are described below:
Conditions defined in order for the pattern to be applicable
Examples of certain business situations
Typically semantic problems of performance in current languages
In a workflow, patterns are the logical sequence of diagramming a business requirement. In order to properly model a process under Bizagi standards, you have to know the BPMN standard and the workflow patterns identified by the research conducted by Professor Van Der Aalst2 . “The purpose of the development of patterns was to describe the potential capacity a work flow could have during the performance of the business process. Patterns range from simple to most complex and include the expected behaviors in most process models.” [White Stephen A. Process Modeling Notation and workflow Patterns]
The purpose of this document is to illustrate the implementation of patterns underthe BPMN standard. Patterns are grouped together as follows:
1. Basic Control Flow Patterns
2. Advanced Branching and Synchronization Patterns
4. Patterns Involving Multiple Instances
5. Patterns Based on System Status
Basic Control Flow Patterns
Sequence
Sequence is the basic pattern of all workflows. It is required when two tasks depend on each other, such that one task cannot begin until the other has ended.
Bizagi (BPMN) Implementation
A business process diagram illustrates this pattern as a series of activities connected by sequence flows. The sequence indicates that an activity will be triggered only when the previous activity has been executed. To better illustrate this idea, we ill make use of the “token” concept, which travels from a starting point to a finishing or target point of the process depending on the directions of the arrows. In this pattern, the token will go on to the next activity only when the preceding activity has been executed.
Example: The enter products activity is not performed until the enter client activity has been carried out. |
Parallel Split
The parallel split is needed when two or more activities must be carried out concurrently or in parallel.This pattern is found at a point in the workflow where a control thread of the process must be divided into multiple threads to be carried out in parallel and thus, allow the execution of activities simultaneously and in any order.
Bizagi (BPMN) Implementation
In the process diagram, this pattern can be represented two different ways. In both versions, a token is divided into as many tokens as parallel branches are defined.
Version 1: “Best Practice in Bizagi”. When one or more activities must be carried out at the same time, the Parallel Gateway (divergence element) shape is used to enable said activities. The parallel gateway always enables all the activities (paths) that exit it.
Version 2: Another option available in BPMN and, therefore in Bizagi, is diagramming parallel activities without the need to make use of a synchronizer:
Note: There should NEVER be the same editable attribute in two parallel activities. |
Example: In the consumer loan request process, the activities to check references and check documentation are enabled when the documents are received. Checking references and documents can be carried out in any order as of that time |
Synchronization
Is required when an activity can begin only when two parallel paths have been completed. That is to say, synchronization combines the paths that were generated by the parallel distribution pattern.
Bizagi (BPMN) Implementation
Parallel Gateway (convergence element) is used to synchronize all the incoming sequence flows. This shape requires all incoming branches to be completed, regardless of whether they have been enabled yet or not. From the tokens viewpoint, the Parallel Gateway (convergence element) will wait for one token for each branch that must be synchronized and once they have all arrived at this shape, the flow will carry on with a simple token.
Example: In this process, the merger of parallels waits for two Tokens to be able to carry on, which guarantees that the Analysis of the Request activity will only be performed once the Check Documentation and Check References activities have been completed. |
Exclusive Choice
This occurs when one of several branches of the process is chosen at a certain point in the workflow. This decision is generally made based on a decision or workflow control data.
Bizagi (BPMN) Implementation
If one of “n” paths must be chosen, an Exclusive gateway (divergence element) can be used. The transitions on exit of the Exclusive gateway (divergence element) will have a Boolean business rule associated to them, which will be evaluated to determine the flow sequence that should be selected to go on to the next step. A “default” condition or else must also be associated in case the other path(s) is (are) not valid.
When a token arrives at an Exclusive gateway (divergence element), the conditions will be evaluated to define the path to take (that is to say, the path that is valid) and the token will go on to the next activity. For each token that enters an Exclusive gateway (divergence element), just one token will exit.
Example: In the loan request process, the client is evaluated in the risk assessment bureaus or blacklists and, if he/she has been reported, he/she is contacted to be notified of the rejection of the request. If the client has not been reported, the process will carry on its regular course. |
Simple Merge
The simple merge is used when you have to join or connect alternative routes of performance in just one route. It is identified in the workflow with a pattern in which two or more alternative branches lead to just one. A simple merge is triggered when one of all the incoming transitions is triggered.
Bizagi (BPMN) Implementation
An Exclusive Gateway (convergence element) is used to merge two alternative paths in just one. This pattern is used to synchronize paths prior to a Parallel Gateway (divergence element) or an Inclusive Gateway (convergence element).
The following example illustrates a diagram in which the Exclusive Gateway (convergence element) is used. In the process diagram, the number of transitions exiting a Parallel Gateway (divergence element) must be equal to the number of transitions synchronized after that.
Example: In this section of the loan request process, the transitions that exit the decision to evaluate references are joined using an Exclusive Gateway (convergence element), so that only two transitions will arrive at the Parallel Gateway (convergence element) prior to the activity to analyze the request. |
Ad-Hoc Process
It is fairly common that businesses need to manage unstructured processes (ad hoc) rather than well predefined business processes.
Ad hoc processes consist of a series of activities which cannot be predefined. In such processes, users must be able to decide what to do and when to do it, and also they must be able to assign work (activities) to other people, creating interactions among various users.
To implement Ad hoc processes Bizagi proposes a workflow pattern that allows creating tasks at any time that can be performed in any order during the life of a process. These tasks can be assigned to anyone and be scheduled to be resolved anytime. Users who have been allocated tasks, can in turn create additional tasks for themselves or other process participants.
The Ad hoc process pattern uses an event that is available for all users at any time in the process to create and assign tasks for themselves or somebody else.
In order to get more information about the Ad-Hoc Process, refer to this link<comments />