Prev Next

Decision

A Decision Node used in Activity Diagrams as depicted using Sparx Systems Enterprise Architect.

Description

A Decision is an element of an Activity diagram or Interaction Overview diagram that indicates a point of conditional progression: if a condition is True, then processing continues one way; if not, then another.

The element can also be used as a Merge node in that multiple alternative flows can be merged (but not synchronized) to form one flow. These examples show both of these methods of using the Decision element.

Used as a decision:

Example of a Decision Element used to model a decision in Sparx Systems Enterprise Architect.

See UML Superstructure Specification, v2.1.1, figure 12.77, p. 363.

Used as a merge:

An example of a Decision element as a merge, in Sparx Systems Enterprise Architect

See UML Superstructure Specification, v2.1.1, figure 12.106, p. 388.

Notes

  • Moving a diagram generally does not affect the location of elements in Packages; if you move a diagram out of one Package into another, all the elements in the diagram remain in the original Package

    However, Decision elements are used only within one diagram, have no meaning outside that diagram, and are never re-used in any other diagram; therefore, if you move a diagram containing these elements, they are moved to the new parent Package with the diagram

Toolbox icon

Decision element

Learn more

OMG UML Specification:

The OMG UML specification (UML Superstructure Specification, v2.1.1, p.361 (Decision symbol)) states:

A decision node is a control node that chooses between outgoing flows. A decision node has one incoming edge and multiple outgoing activity edges.

The OMG UML specification (UML Superstructure Specification, v2.1.1, p.387 (Merge symbol)) also states:

A merge node is a control node that brings together multiple alternate flows. It is not used to synchronize concurrent flows but to accept one among several alternate flows ... A merge node has multiple incoming edges and a single outgoing edge.