Book a Demo

Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Prev Next


Pseudostates are a UML abstraction for various types of transient vertex used in StateMachine diagrams. Pseudostates are used to express complex transition paths.

You can create a Pseudostate by dragging one of these element icons onto a diagram in Enterprise Architect.

Diagram Toolbox Icons



See also

Initial element

The Initial element represents a pseudostate used to denote the default state of a Composite State; there can be one Initial vertex in each Region of the Composite State.

Entry element

Entry Point pseudostates are used to define the beginning of a StateMachine. An Entry Point exists for each region, directing the initial concurrent state configuration.

Entry Point
Exit element

Exit Points are used in StateMachine elements and StateMachine diagrams to denote the point where the machine is exited and the transition sourcing this exit point.

Exit Point
Choice element

The Choice pseudostate is used to compose complex transitional paths, where the outgoing transition path is decided by dynamic, run-time conditions.

Junction element

Junction pseudostates are used to design complex transitional paths in StateMachine diagrams. A Junction can be used to combine or merge multiple paths into a shared transition path.

History element

There are two types of History pseudostate defined in UML: shallow and deep history.

Terminate element

The Terminate pseudostate indicates that upon entry of its pseudostate, the StateMachine's execution ends.

Final element

The Activity Final element indicates the completion of an Activity; upon reaching the Final, all execution in the Activity diagram is aborted.


A Fork/Join element can be used to: 1) split a single flow into a number of concurrent flows, 2) join a number of concurrent flows or 3) both join and fork a number of incoming flows to a number of outgoing flows.



  • All the listed types of pseudostate can be represented in code, and can generate code under the StateMachine code generation templates from Enterprise Architect release 11 onwards

Learn more