Splitting Flows with Gateways

Insert gateways to split flows and define their type for defining flow behavior.

Inserting a Gateway

Context

Gateways split the flow or merge flow branches.

The Gateway Type and Direction properties define the behavior of the gateway.

The flow behavior (exclusive, inclusive, parallel, or complex branching or merge) is defined by the type of the gateway. This type must be defined by the modeler.

The flow effect (fork, join, or merge) is controlled by means of a separate attribute and is automatically recognized by Innovator on the basis of the incoming/outgoing sequence flows.

How to proceed

  1. Insert the gateway into the process.

  2. Right mouse click on the gateway.

    The context menu and another mini toolbar with the available gateway types are shown.

  3. Click on the type you want; clicking on an empty diamond makes the gateway unspecified.

    The desired type is set as the property and the appropriate marker is shown in the gateway icon.

    Alternatively, you can also change the gateway type directly in a gateway's Properties.

Defining Standard Flows

Context

You can set which sequence flow should run if no other conditions apply. You can set no more than one default flow within the respective other sequence flows.

If the is Default property is activated for a sequence flow, then this cannot have a condition, in accordance with BPMN specification. This then causes the properties for local and global conditions, as well as the use of decisions and their values to disappear from a default sequence flow's list of properties. If applicable, the existing values of these properties are automatically deleted when is Default is activated.

If an existing default sequence flow contained a condition, then this is not shown in the diagram. The affected property is only shown in the Properties tool window for deletion.

How to proceed

  1. Select the sequence flow which you want to define as the default flow.

  2. Activate the is Default check box in the Properties tool window.

    The sequence flow is the default flow and will be run through if no other conditions apply. If another flow was the default flow before, then this check box is deactivated.

    The default flow is indicated on the source side by means of a backslash.

Defining a Local Condition on a Sequence Flow

Context

Conditions normally need to be defined and a default flow with no condition needs to be set on outgoing sequence flows for data-based exclusive or inclusive gateways and/or a complex gateway.

Conditions can be defined as a local condition directly on a sequence flow.

How to proceed

  1. Select the sequence flow which you want to create a condition for.

  2. Enter the condition's text in the Properties tool window as a value of the property condition (local).

    The text is shown in its own field on the sequence flow. The size of the text box can be changed using the frame surrounding the text box.

    The conditional sequence flow is indicated on the source side by a diamond if the source of the sequence flow is not a gateway flow.

Using a Global Condition on a Sequence Flow

Context

Conditions normally need to be defined and a default flow with no condition needs to be set on outgoing sequence flows for data-based exclusive or inclusive gateways and/or a complex gateway.

You can use a condition already defined as its own model element (expression).

The condition's drop-down list at a sequence flow depends on the decision used and all decisions and business logics available above, among other factors. All decision tables, lists and relations defined within these elements can provide values for the drop-down list. These are the values of the outputs for decision tables, and the rows for lists and relations respectively. The values of the columns separated with commas are joined into one value for relations.

How to proceed

  1. Select the sequence flow which you want to create a condition for.

  2. Activate the Uses Global Condition check box in the Properties tool window.

    The Condition (local) properties box is replaced by Condition (global).

  3. Click on the selection button.

    The selection dialog appears.

  4. Select the condition you want from the selection dialog and confirm the selection with OK.

    The condition is inserted and shown in the diagram on the sequence flow. The size or position of the text can be changed using the frame surrounding the text box.

    The conditional sequence flow is indicated on the source side by a diamond if the source of the sequence flow is not a gateway flow.