|Previous||UML Classes||Table of Contents||UML Packages||Next|
A control node is an abstract activity node that coordinates flows in an activity.
ActivityNode (from BasicActivities , CompleteActivities , FundamentalActivities , IntermediateActivities ,
CompleteStructuredActivities ) on page 347.
A control node is an activity node used to coordinate the flows between other nodes. It covers initial node, final node and
its children, fork node, join node, decision node, and merge node.
No additional attributes
No additional associations
No additional constraints
See semantics at Activity. See subclasses for the semantics of each kind of control node.
The notations for control nodes are illustrated below: decision node, initial node, activity final, and flow final.
Fork node and join node are the same symbol, they have different semantics and are distinguished notationally by the way edges
are used with them. For more information, see ForkNode and JoinNode below.
The figure below contains examples of various kinds of control nodes. An initial node is depicted in the upper left as triggering
the Receive Order action. A decision node after Received Order illustrates branching based on order rejected or order accepted
conditions. Fill Order is followed by a fork node that passes control both to Send Invoice and Ship Order. The join node indicates
that control will be passed to the merge when both Ship Order and Accept Payment are completed. Since a merge will just pass
the token along, Close Order activity will be invoked. (Control is also passed to Close Order whenever an order is rejected.)
When Close Order is completed, control passes to an activity final.
Control nodes are introduced to provide a general class for nodes that coordinate flows in an activity.
ControlNode replaces the use of PseudoState in UML 1.5 activity modeling.