Return to Introduction  Previous page  Next page


A State represents a situation where some invariant condition holds; this condition can be static (waiting for an event) or dynamic (performing a set of activities). State modeling is usually related to Classes, and describes the enableable states a Class or element can be in and the transitions that enable the element to move there. There are three types of State: Simple States, Composite States (both created from the State element from the Enterprise Architect UML Toolbox) and Submachine States (created from the Submachine element from the Enterprise Architect UML Toolbox).

Furthermore, there are pseudo-states, resembling some aspect of a State but with a pre-defined implication. Pseudo-states are used to model complex transitional paths, and classify common State Machine behavior.

Toolbox Icon


OMG UML Specification

The OMG UML specification (UML Superstructure Specification, v2.0, p. 477) states:

"A state models a situation during which some (usually implicit) invariant condition holds. The invariant may represent a static situation such as an object waiting for some external event to occur. However, it can also model dynamic conditions such as the process of performing some activity (i.e., the model element under consideration enters the state when the activity commences and leaves it as soon as the activity is completed)."