Gateways
Gateways help to visualize the topology of the control flow graph of the process and specify its branching behavior.
BPMN Sketch Miner currently supports:
Exclusive Gateways
Exclusive branches represent processes with alternative execution paths, where only one can be taken for each process execution.
EditInspect Application
Accept Application
Inspect Application
Reject Application
Exclusive merges indicate that no synchronization is required to continue the execution from different paths.
EditSubmit Application by email
Inspect Application
Submit Application through the web
Inspect Application
Submit Application in person
Inspect Application
Each Element Once
How does BPMN Sketch Miner infer the correct gateways? It follows the third rule:
The same element only appears once in the model.
If you write the same element in multiple lines, BPMN Sketch Miner will merge the corresponding task (or event) sequences and introduce the necessary gateways automatically.
Loops
Following the same rule, if the repeated element is found in the same sequence, a loop will be created.
EditIf you repeat the same task
Loop Body
Loop Body
you get a loop
EditStart
Loop 1
Loop 2
Loop 3
Loop 1
Loop 2
Loop 3
End
EditStart Again
Loop Again 1
Loop Again 2
Loop Again 1
End Again
Note: the label of tasks found within a loop does not have to contain the term loop.
Branch Conditions
At a more precise level of details, exclusive gateways may be refined to describe under which conditions their outgoing paths may be taken.
EditGateway label?
Condition
Gateway label?
Alternative Condition
Gateways are labeled with questions (labels which end with ?) which have at least two different answers found on the line immediately following them. The answers become the expressions displayed on the conditional control flow edges.
EditInspect Application
Is the package complete?
Yes
Accept Application
Inspect Application
Is the package complete?
No
Reject Application
Parallel Gateways
Parallel branches indicate where multiple tasks can be concurrently executed. Since there is no order between these tasks, they are specified on the same line, separated with the | symbol.
EditSubmit Application
Inspect Dossier|Check References
Parallel merges represent the synchronization point between multiple concurrent tasks. The process execution will continue only after all tasks have completed their execution. Since there is no order between such independent tasks, again they are specified on the same line, separated with the | symbol.
EditInspect Dossier|Check References
Decide Outcome
Parallel Sequences
EditSubmit Application
Inspect Dossier|Check References
Assess Required Skills|Summarize References
Decide Outcome
If each parallel sequence has the same number of tasks, the same | symbol can be used to separate the parallel tasks listed one per line (as with every task sequence).
Otherwise, fragments should be used to describe arbitrary parallel paths.
Parallel Gateways and Pools
How to place parallel tasks in the corresponding pool? Use Pool annotations as with any task found within a sequence.
EditHR: Receive Application
Inspect Dossier| Check References
Hiring Manager: Decide Outcome
To place both parallel tasks in the same pool, one annotation for both is enough.
EditCustomer: Submit Application
HR: Inspect Dossier|Check References
Hiring Manager: Decide Outcome
Individual parallel tasks can be placed in a different pool by annotating each task with the pool name.
EditCustomer: Submit Application
HR: Inspect Dossier|Hiring Manager: Check References
Decide Outcome
If no default pool is set, the pool of the last parallel task (Hiring Manager) will be also used for the following tasks.
Individual parallel tasks can be placed in a different pool by annotating each task with the pool name.
If the default pool is set, only the tasks which should be placed in a different pool need to be explicitly annotated.
EditCustomer: Submit Application
Hiring Manager:
Check References|HR: Inspect Application
Decide Outcome
Event Gateways
Event-based gateways describe when a process waits for multiple events. The execution continues as soon as one of the events occurs.
EditMake Offer
(receive Offer Accepted)
Make Offer
(timer 1 week)
Withdraw Offer
Like with exclusive gateways, event gateways are automatically inserted where appropriate.
More Examples








