Essential notation for modeling system states, transitions, and event-driven behavior.
Represents a condition or situation in the life of an object. Depicted as a rectangle with rounded corners.
The starting point of the state machine pseudo-state. Represented by a solid filled circle.
The end of the process flow. Represented by a circle with a solid dot inside (bullseye).
Movement from one state to another, triggered by an event. Depicted as a solid arrow.
The signal that causes a transition. Written on the arrow line (e.g., 'Button Click').
A boolean condition that must be true for the transition to occur. Written in brackets: [isValid].
Activities inside a state: 'entry/' (on entering), 'do/' (while inside), and 'exit/' (on leaving).
A dynamic branch point where the path is chosen based on guard conditions. Depicted as a diamond.
A transition where the source and target states are the same. Useful for internal loops or refreshing.