A Transition defines the logical movement from one State to another, in a State Machine diagram. The Transition can be controlled through the following connector Properties dialog fields:



See also


Type in the expression that is to be evaluated after an Event is dispatched, but before the corresponding Transition is triggered.

If the guard is true at that time, the Transition is enabled; otherwise, it is disabled.



Effect is a Behavior

Convert the Effect field from a free-text field to the definition of a specific Activity or behavior.

Enterprise Architect displays the Select <Item> dialog to prompt you to select the Activity or behavior element from the model.


Select <Item> Dialog



Type a description of the effect of the Transition, or
If you have selected the Effect is a Behavior check box, select an Activity or behavior to be performed during the Transition (to change this subsequently, click on the (  ...  )  button to redisplay the Select <Item> dialog)






Specify the name of the trigger; either:

Type the name, or
Select an existing trigger in the model using the Select <Item> dialog, which you display by clicking on the (  ...  ) button



Specify the type of trigger: Call, Change, Signal or Time:

Call - specifies that the event is a CallEvent, which sends a message to the associated object by invoking an operation
Change - specifies that the event is a ChangeEvent, which indicates that the transition is the result of a change in value of an attribute
Signal - specifies that the event is a SignalEvent, which corresponds to the receipt of an asynchronous signal instance
Time - corresponds to a TimeEvent; which specifies a moment in time

Code generation for State Machines currently supports Change and Time trigger events only, and expects a specification value.




Specify the event instigating the Transition; either:

Type the event (time or change), or
Select an existing specification in the model using the Select <Item> dialog, which you display by clicking on the (  ...  ) button



Clear the fields ready to begin defining a new trigger.




Save the newly created or edited trigger.




Remove the selected trigger from the list.



<trigger list>

List the existing triggers, which might or might not have names and types, and which can include Call and Signal triggers created in older models.




Fork and Join segments can have neither triggers nor guards
You can identify hidden triggers and locate triggers in the Project Browser, using the Find Triggers Associated option on the Transition connector context menu -  if one trigger exists for the Transition, it is immediately highlighted in the Project Browser; if more than one trigger exists, the Element Usage dialog displays; select the required trigger and click on the Open button to highlight the trigger in the Project Browser

Toolbox icon


Learn more

OMG UML Specification:

The OMG UML specification (UML Superstructure Specification, v2.1.1, p. 568) states:

A transition is a directed relationship between a source vertex and a target vertex. It may be part of a compound transition, which takes the state machine from one state configuration to another, representing the complete response of the state machine to an occurrence of an event of a particular type.