Gateway Execution

 

Exclusive Gateway

XORGateway

A diverging Exclusive Gateway (Decision) is used to create alternative paths within a Process flow.

This is basically the “diversion point in the road” for a Process. For a given instance of the Process, only one of the paths can be taken.

A Decision can be thought of as a question that is asked at a particular point in the Process. The question has a defined set of alternative answers. Each answer is associated with a condition Expression that is associated with a Gateway’s outgoing Sequence Flows.

Converging Exclusive Gateway, pass-through the flow to the next point and does not wait for any more incoming flows.

Inclusive Gateway

ORGateway

A diverging Inclusive Gateway (Inclusive Decision) can be used to create alternative but also parallel paths within a Process flow. Unlike the Exclusive Gateway, all condition Expressions are evaluated. The true evaluation of one condition Expression does not exclude the evaluation of other condition Expressions.

 

Parallel Gateway

Parallel gateway diverging

Diverging Parallel  Gateway, executes all outgoing flows at the same time.

A Parallel Gateway is used to synchronize (combine) parallel flows and to create parallel flows.

A converging Parallel Gateway waits for all incoming flows before continue

Parallel gateway converging

Event-Based Gateway

The Event-Based Gateway represents a branching point in the Process where the alternative paths that follow the Gateway are based on Events that occur, rather than the   valuation of Expressions using Process data (as with an Exclusive or Inclusive Gateway). A specific Event, usually the receipt of a Message, determines the path that will be taken. Basically, the decision is made by another Participant, based on data that is not visible to Process, thus, requiring the use of the Event-Based Gateway.

Each outgoing sequence flow of the gateway must be connected to an intermediate catching event. When process execution reaches an Event-based Gateway, the gateway acts like a wait state: execution is suspended. In addition, for each outgoing sequence flow, an event subscription is created.

Event based gateway with event and receive tasks Event based gateway with events

 

Leave a Reply