Gateways
Gateways control the flow of a process. They can merge multiple process flows together or split one process flow into multiple process flows when a decision is made in the process.
Example: In an expense report process, reports with expenses over $1,000 are reviewed by a regional manager; those below $1,000 are approved by the reporter's immediate supervisor. An incoming expense report would take one of two paths, depending on the expenses specified in the report. To represent this part of the process in BPMN, use a gateway with one incoming process flow and two Outflow Paths.
In addition to being able to merge and split a process flow, gateways are categorized by how they interact with process flows. The three types of gateways are exclusive, inclusive, and parallel. The behavior of each depends on whether it is merging or splitting process flows.
Exclusive Gateways
Exclusive gateways split a process path into one of several outflow paths or merge several paths into one.
Splitting exclusive gateways
When an exclusive gateway splits a process into several outflow paths, it represents an "either/or" decision. The conditions for taking each outflow path following this gateway type are mutually exclusive: if the conditions on one path are met, the conditions on any other paths cannot be met. The number for the condition represents the priority, and when more than one condition is satisfied, the path with the highest condition number is followed. This gateway is similar to the Routing Decision activity in Workflow.
Merging exclusive gateways
When an exclusive gateway merges several paths into one, it does not represent a decision. Instead, it allows the data from each incoming path to proceed to the outflow path when it reaches the gateway.
Inclusive Gateways
Inclusive gateways split a process into several possible outflow paths or merge several paths into one.
Splitting inclusive gateways
When an inclusive gateway splits one path into several, it represents an "and/or" decision, meaning that multiple outflow paths can be taken, as long as their conditions are met. The conditions for one outflow path should be independent from those of the other outflow paths. If one path is taken, other paths could still be taken, provided their conditions are met. This gateway is similar to the Conditional Parallel activity in Workflow.
Merging inclusive gateways
When an inclusive gateway merges several paths into one, it does not represent a decision. Instead it, it waits for all flows with active activities to finish before proceeding to the outflow path. If there's a boundary event in a flow that leads into the inclusive gateway, then the merging inclusive gateway will wait only if the event has made the flow active. It will not wait for inactive flows.
Parallel Gateways
Parallel gateways split one process flow into several, or merge several flows into one.
Splitting parallel gateways
When a parallel gateway splits one process flow into several active paths, it represents an "And" decision, meaning that each outflow path will be taken. As a result, conditions do not need to be specified for a parallel gateway's outflow paths. This gateway is similar to the Parallel activity in Workflow.
Merging parallel gateways
When a parallel gateway merges several process flows into one, it waits for each incoming path to reach the gateway. Once each incoming path has reached the gateway, its outflow path will be taken.
Configuring Gateways
Before configuring a gateway, ensure it is properly connected to the objects that follow it in your process with Sequence Flows. You will be unable to configure a gateway until it is connected to other objects on the canvas.
To configure a gateway
- Double-click the gateway to open its properties window.
- In the Name text box, name the gateway.
- In the Gateway type drop-down list, select the gateway type.
- To configure the gateway's outflow conditions, you must have connected the task to other objects on the canvas. Learn more about configuring an object's outflow settings.
- When you are finished configuring the gateway, click Done to return to the canvas.
Related Topics