A gateway is used to control the divergence and convergence of sequence flow. It represents traditional decision points, as well as the forking, merging, and joining of paths. It is represented by a diamond shape, with internal markers that indicate the type of behavior control.
When a gateway is selected, it can be resized by dragging any of the handles around it.
Icons within the diamond shape will indicate the type of flow control behavior. Each type of control affects both the incoming and outgoing flow. Controls are added to the gateway from the context menu (select the gateway and right-click).
|
|
Exclusive (Data-Based) |
Indicates exclusive decision and
merging, based on a Data Object. An Exclusive Gateway restricts the flow such
that only one of a set of alternatives may be chosen. |
|
|
Exclusive (Event-Based) |
Indicates exclusive decision and
merging, based on an Event. An Exclusive Gateway restricts the flow such that
only one of a set of alternatives may be chosen. |
|
|
Inclusive |
Indicates inclusive decision and
merging. A decision represents a branching point with alternatives based on conditional
expressions contained within the outgoing Sequence Flow. It can be thought of as a grouping
of related but independent Yes/No decisions. Since each path is independent, all
combinations of the paths may be taken, from zero to all. However, it should
be designed so that at least one path is taken. |
|
|
Complex |
Indicates complex conditions and
situations (for example, 3 out of 5). This is a join where more than 1 but fewer
than the total number of conditions is required for the process to continue. |
|
|
Parallel |
Indicates forking and joining. In
BPMN, the term “fork” refers to the dividing of a path into two or more
parallel paths. It is a place in the process where activities can be
performed concurrently, rather than serially. In BPMN, “join” refers to the combining
of two or more parallel paths into one path. |