A composite state is a state that contains other states
(known as sub-states), allowing hierarchical state machines to
A composite state is represented on a statechart diagram
in ArgoUML as a large rectangle with rounded corners, with a
horizontal line separating the name at the top from the
description of the behavior and the model of the sub-state
machine below. The description of the behavior includes the
entry, exit and do actions and any internal transitions.
Sub-states are placed within a composite machine by
placing them entirely within the composite state. This can be
done at creation time, i.e. when creating the state for the
first time in the editing pane. Alternatively, an existing
state can be dragged onto a composite state.
The description of a composite state is almost identical
to that of a state (see Section 20.2, “
” and so
is not duplicated here. The only differences is one additional
tool, one missing field,
and one additional field, which are described as
New Concurrent Region
Adds a new concurrent region to the selected
This field is missing from V0.20 of ArgoUML.
Text area. Lists all the sub-states contained
within this composite state.
Button 1 double-click navigates to the selected
entry, button 2 gives a pop up menu with two
New. A submenu pops up, with
a selection of 7 kinds of states, which can be added
to the model. The 7 kinds of states supported are:
Pseudo State, Synch State, Stub State, Composite
State, Simple State, Final State, Submachine
Using this way of adding states to the model
is not a good idea, since you will have to add the
state to the diagram later. This can be done by
selecting it in the explorer, and activating the
pop-up menu, and selecting “Add to
Diagram”. It is advisable to use the toolbar
of the diagram instead.
Delete From Model Delete the
selected state from the model.