Previous UML Classes Table of Contents UML Packages Next

12.3.28 FinalNode


   A final node is an abstract control node at which a flow in an activity stops.


   ControlNode (from BasicActivities ) on page 371


   See descriptions at children of final node.


   No additional attributes


   No additional associations


   [1] A final node has no outgoing edges.


   All tokens offered on incoming edges are accepted. See children of final node for other semantics.


   The notations for final node are illustrated below. There are two kinds of final node: activity final and (IntermediateActivities ) flow final. For more details on each of these specializations, see ActivityFinal and FlowFinal.

   Activity final Flow final

   Figure 12.90 - Final node notation


   The figure below illustrates two kinds of final node: flow final and activity final. In this example, it is assumed that many components can be built and installed before finally delivering the resulting application. Here, the Build Component behavior occurs iteratively for each component. When the last component is built, the end of the building iteration is indicated with a flow final. However, even though all component building has come to an end, other behaviors are still executing. When the last component has been installed, the application is delivered. When Deliver Application has completed, control is passed to an activity final node—indicating that all processing in the activity is terminated.

   [no more components to be installed]

   [more components [no more

   to be installed][more components componentsto be built] to be built]

   Figure 12.91 - Flow final and activity final example.

   Final nodes are introduced to model where flows end in an activity.

*Changes from previous UML

   FinalNode replaces the use of FinalState in UML 1.5 activity modeling, but its concrete classes have different semantics than FinalState .