A Parallel Gateway is similar to that of an Inclusive Gateway but in this case the flow splits into every connected path. The points of these gateways are twofold. Firstly, to split the path into all connected Tasks. Secondly, to combine the split in the same way as Inclusive Gateways, where all paths need to be resolved before the Process continues.

The trigger to move forward from a combining Parallel Gateway is based on the connections to it and having each connecting path passing the token to it. Unlike the Inclusive Gateway, only the elements connected to the combining gateway need to return the token.

Splitting Parallel Gateways

In the below example, Task 7 completes and both Task 8 and Task 10 are started. However, this process demonstrates bad practice as Task 11 will be executed twice.

Combining Parallel Gateways

In this example Process the combining Parallel Gateway has been added. This now looks for the token on both its inputs. As a result, Task 11 will only be executed when the branch recombines, and all Tasks upstream have been completed.

Multiple splits

This next example has been generated to show that multiple routes can be triggered by a Parallel Gateway. The combining gateway has three connections from each branch and will wait for all three connections to return the token. In this case Task 11 will execute only when all the other tasks have completed.

Early termination of a split Parallel Gateway path

Because the combining gateway only looks for the token from each of its connections it is possible to terminate one branch off a split as there is now no connection to the combining gateway to be monitored. In this example it is possible that Task 11 can complete before Task 12

Process where a Combining Parallel Gateway is not required

In this example Tasks 10 and 12 are being terminated early within the Process. This leaves only one parallel branch that needs to be completed. In this case, the Combining Parallel Gateway serves little purpose as it would only be controlling a single feed. From this perspective the Process Map below is valid and does not constitute bad practice.

Did this answer your question?