Pseudostates

In UML modeling, a pseudostate is used to combine and direct transitions.

Pseudostate type Description Icon
Initial Placed within a region to identify the starting state when a transition targets the boundary of a composite state. One or more transitions from the initial state each target a starting state. When more than one transition originates from the initial state, the starting state is determined by the evaluation of the guard condition of each transition. The initial pseudostate is displayed as a small solid circle.
Choice Receives a single incoming transition and outputs two transitions each with a guard condition, one of which is true. The choice pseudostate is displayed as a hollow diamond.
Junction Used between two or more fragments of a transition that each have a distinct entry or exit actions. The junction pseudostate is displayed as a large solid circle.
Deep history A transition to the deep history state within a composite state, invokes the state that was active, immediately before the most recent exit of the composite state. The last active state can be nested at any depth. A transition must have taken the last active state directly out of the composite state. The initial pseudostate is displayed as a hollow circle with an upper case H and a superscript asterisk in the center of the circle.
Shallow history A transition to the shallow history state in a composite state invokes the last state that was active, at the same depth as the history state itself, prior to the most recent exit of the composite state. The shallow history pseudostate is displayed as a hollow circle with an upper case H in the center of the circle.
Join Receives two or more incoming transitions that meet to form one outgoing transition. Each incoming transition to the join pseudostate must originate from a different region of an orthogonal state. The join pseudostate is displayed as a solid vertical bar.
Fork Receives one incoming transition that splits into two or more outgoing transitions. Each outgoing transition from the join pseudostate must target a state in a different region of an orthogonal state. The fork pseudostate is displayed as a solid vertical bar.
Entry point Placed on the boundary or in a region of a state machine or composite state with a single outgoing transition to a substate. Used when there are multiple ways to enter a state and there is no single default substate for the transition to target. The entry point pseudostate is displayed as a small hollow circle.
Exit point Placed on the boundary or in a region of a state machine or composite state with a single incoming transition from a substate. Used when there are multiple ways to exit a state. Each exit point can be the source of an external transition. The exit point pseudostate is displayed as a small hollow circle with a lower case X at the center of the circle.
Terminate Identifies the end of the execution of a state machine. The terminate pseudostate is displayed an upper case X.

Parent topic: State machines

Related tasks
Adding transitions to states and pseudostates

Terms of use | Feedback
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.