States

A state is a condition or situation during the life of an object during which it satisfies a condition, performs an activity, or waits for an event. They are rendered in State Diagrams.

Types

Simple States

  • Name - Name of the state.

  • Stereotypes - List of stereotypes applied to the state.

  • Entry-Action - Action to be invoked upon entry the state.

  • Do-Activity - Action to be invoked after the Entry Action has completed.

  • Exit-Action - Action to be invoked before the state is exited.

  • Internal Transitions - Actions that do not change the state of the object and therefore do not invoke the entry or exit actions.

  • Incoming - Transitions that allow entrance to this state.

  • Outgoing - Transitions that exit this state.

Composite States

  • Name - Name of the state.

  • Modifiers - List of options available to the composite state.

    • Concurrent - This option is unchecked for all composite states that are not concurrent states.

  • Stereotypes - List of stereotypes applied to the state.

  • Subvertices - Vertices contained by the state machine.

  • Entry-Action - Action to be invoked upon entry the state.

  • Do-Activity - Action to be invoked after the Entry Action has completed.

  • Exit-Action - Action to be invoked before the state is exited.

  • Internal Transitions - Actions that do not change the state of the object and therefore do not invoke the entry or exit actions.

  • Incoming - Transitions that allow entrance to this state.

  • Outgoing - Transitions that exit this state.

Concurrent States

Identical to the Composite State, but the modifier Concurrent is checked.

Other States

This category of states includes Initial, Final, Choice, Junction, Synch, and History States.

  • Name - Name of the state.

  • Stereotypes - List of stereotypes applied to the state.

  • Incoming - Transitions that allow entrance to this state. Initial states cannot have incoming transitions.

  • Outgoing - Transitions that exit this state. Final states cannot have outgoing transitions.

Transitions

Between States

  • Name - Name of the transition.

  • Stereotypes - List of stereotypes applied to the transition.

  • Trigger - Name of the event whose occurrence makes a transition eligible to fire.

  • Guard - Name of the boolean expression that must be satisfied in order for the transition to fire.

  • Effect - Name of an optional activity to be performed during the transition.

  • Source - The originating state of the transition.

  • Target - The destination state of the transition.

Internal Transitions

Same properties as Between State Transitions, but are only accessible from within the owning state. Actions that do not change the state of the object and therefore do not invoke the entry or exit actions.

Actions, Triggers, and Guards

Actions and Activities

  • Name - Name of the action.

  • Modifiers - List of options available to the action.

    • Asynchronous

  • Stereotypes - List of stereotypes applied to the action.

  • Expression - Syntax that will be completed during the action.

  • Language - Indicates in which language the expression has been written. This can be anything, including plain English.

Trigger

  • Name - Name of the trigger.

  • Stereotypes - List of stereotypes applied to the trigger.

  • Parameters - List of variables that can be changed, passed or returned.

Guard

Note that entry and exit actions may not have guard conditions as they are invoked implicitly, not explicitly.

  • Name - Name of the guard.

  • Stereotypes - List of stereotypes applied to the guard.

  • Transition - The name of the owning transition.

  • Expression - A procedural expression that is executed if and when the transition fires

  • Language - Indicates in which language the expression has been written. This can be anything, including plain English.