Default Sequence Flow



Default Sequence Flow is one type of Sequence Flow, which is set to be "default" so that it is activated when no other Conditional Flow is taken. Default Flow.

Overview
In BPMN, Default Sequence Flow is used in two cases shown below.
 * When data-based exclusive judgment (XOR Split) is exercised:
 * Among multiple outgoing Flows (Conditional Sequence Flow) at a Split, only one Flow is selected. A conditional expression defined for each split Flow is treated as data. The Token goes on the Flow with the conditional expression judged as "true" first. "(Data-based) Exclusive Gateway" is used for this judgment.



Among multiple outgoing Flows (Conditional Sequence Flow) at a Split, at least one Flow is selected. Based on conditional expressions defined for each split Flow, the Token passes on all Flows with conditional expressions judged as "true." For this judgment, either "Activity" or "Inclusive Gateway" is used.
 * When inclusive judgment (OR Split) is exercised:



These judgment can have multiple outgoing Conditional Sequence Flows (A and B in the figure.).

Here, let's think about a case in which all outgoing flows are defined as Conditional Sequence Flows and no Default Flow exists. For each flow, a conditional expressions, "If A," "If B," or "If C," is defined. However, this notation has two drawbacks.
 * If all conditional expressions are accidentally judges as "false," we have a problem.
 * The flow of the Token is stopped at a split, and the process after that becomes meaningless.
 * Defining complex conditional expressions is not good for users.
 * Taking usability into consideration, processes are simply and clearly defined. Cases in which we can combine conditions as "Otherwise" would not be so unlikely.

To overcome these drawbacks, at a judgment described above, Default Sequence Flow, which is assigned a default condition, is often used.

The Token passes on this Default Sequence Flow only when all other conditional expressions defined on the same judgment are judged as "false." If any of Conditional Sequence Flow is "true," the Token does not pass on Default Sequence Flow, but it goes through a Flow with a conditional expression judged as "true." Also, a judgment can use just one Default Sequence Flow.

Default Sequence Flow is represented by a backslash near the starting point of a Sequence Flow.

Usage
Default Sequence Flow is used in the same situation as Conditional Sequence Flow. That is, the source object (a flow object connected to the starting point) is either of the two listed below.


 * Activity
 * Decision/Split Gateway (Exclusive Gateway and Inclusive Gateway)

However, all conditional Sequence Flows do not necessarily have a Default Sequence Flow.

Redundancy of BPMN
For example, a process with XOR Split (see the figure on the right) that exclusively judges two conditional expressions A and B, generally uses two Conditional Sequence Flows. However, even if one of the two conditional Sequence Flows is changed into a Default Sequence Flow, the notational meaning is exactly the same. This is because the condition on B is always "if not A."

Thus, in BPMN, there are sometimes multiple ways to represent the same business process. What process to draw depends on judgment of process designers, so workers in the field may mistakenly consider an identical process as different one. This characteristic is called "redundancy of BPMN."

Related Articles

 * BPMN
 * Activity
 * Gateway
 * Flow
 * Sequence Flow
 * Conditional Sequence Flow
 * XOR Split
 * OR Split