Multi-merge

In this example, an activity is executed each time a branch that executed in a multi-choice construct is complete. This example is implemented using events and subprocesses:

  • Each branch that executes in the multi-choice construct ends with the throw of an asynchronous event type. If the multi-choice construct used gateways, each branch in the gateways throw the event. If the multi-choice construct used events, the final step in each subprocess is a throw of the event.

  • A subprocess that includes the activity to execute receives the event as a start point.

    The following illustration shows two branches from a multi-choice construct that throws the asynchronous event type and the subprocess that uses the event type as a start point. The branches are represented as an activity element. The branches are inside either a gateway or a subprocess, depending on the type of implementation used for the multi-choice construct that precedes the multi-merge construct.

    A.
    Branches in the multi-choice construct

    B.
    Subprocess receives event throws