A transition is a directed relation between a source state
(any kind, e.g. composite state)
and a destination state
(any kind, e.g. composite state).
Within the UML metamodel, Transition
is a sub-class of
ModelElement
.
A transition is represented on a statechart diagram in ArgoUML as a
line with arrow connecting the source to the destination state.
Next to this line is a string containing the following parts:
If the transition is named, then the name is shown alongside the line
followed by a colon (:
).
Then follows (if any) the trigger action (e.g. a Call Event).
Next follows (if any) the guard in square brackets ([]
).
Finally, if there is an effect (e.g. Call Action) defined, a slash (/
)
followed by the expression of the action.
The details tabs that are active for transitions are as follows.
ToDoItem
Standard tab.
Properties
See Section 19.5.2, “Transition Property Toolbar” and Section 19.5.3, “Property Fields For Transition” below.
Documentation
Standard tab.
Style
Standard tab. The values for the bounds of the transition have no effect, since the position of the transition is defined by its end points.
Source
Standard tab, containing just the name of the transition, any guard and any effect in the same format as the diagram.
![]() | Note |
---|---|
In the fullness of time this tab will contain any code to implement the transition (code for the effect and guard will be associated with their artifacts). This is not implemented in the current release of ArgoUML. |
Constraints
Standard tab. ArgoUML only supports constraints on Classes and Features (Attributes, Operations, Receptions, and Methods), so this tab is grayed out.
Tagged Values
Standard tab. In the UML metamodel,
Transition
has the following standard
tagged values defined.
derived
(from the
superclass, ModelElement
). Values
true
, meaning the transition is
redundant—it can be formally derived from other
elements, or false
meaning it
cannot.
![]() | Note |
---|---|
Derived transitions still have their value in analysis and design to introduce useful names or concepts, and in design to avoid re-computation. |
![]() | Note |
---|---|
The UML |
Go
up
Navigate up in the hierarchy to the parent state machine.
Delete
This deletes the transition from the model.
![]() | Warning |
---|---|
This is a deletion from the model
not just the diagram. To delete a
transition from the diagram, but keep it within the model, use
the main menu |
Name
Text box. The name of the transition. By convention transition names start with a lower case letter and use bumpy caps to divide words within the name.
![]() | Note |
---|---|
ArgoUML does not enforce this naming convention. |
Stereotype
Drop down selector. Transition has no stereotypes by default in the UML standard.
Navigate Stereotype
icon. If a
stereotype has been selected, this will navigate to the
stereotype property panel (see
Section 15.4, “Stereotype”).
StateMachine
Text box. Shows the name of the parent StateMachine for the transition.
Button 1 double-click navigates to the StateMachine shown.
State
Text box. Shows the name of the parent State in case of an internal transition.
Button 1 double-click navigates to the State shown.
Source
Text box. Shows the source state for the transition.
Button 1 double-click navigates to the selected entry.
Target
Text box. Shows the target state for the transition.
Button 1 double-click navigates to the selected entry.
Trigger
Text box. Shows the trigger event (if any) which invokes this transition.
![]() | Note |
---|---|
UML does not require there to be a trigger, if a guard is defined. The transition is taken immediately if the guard is true. |
Button 1 double-click navigates to the selected entry, button 2 gives a pop up menu with two entries.
New
.
Add a new trigger event. A sub-menu opens with
4 choices: Call Event, Change Event, Signal Event, Time Event.
Delete From Model
.
Delete the trigger event from the model.
This feature is always downlighted in the current version of ArgoUML.
Guard
Text box. Shows the name of a guard (if any). The expression of a guard must be true before this transition can be taken.
Button 1 double-click navigates to the selected entry, button 2 gives a pop up menu with one entry.
New
.
Add a new guard.
Effect
Text box. Shows the action (if any) to be invoked as this transition is taken.
Button 1 double-click navigates to the selected action, button 2 gives a pop up menu with two entries.
New
.
Add a new Effect (action) of a certain kind.
This menu has the following submenus
to select the kind of action: Call Action, Create Action,
Destroy Action, Return Action, Send Action, Terminate Action,
Uninterpreted Action.
Delete From Model
.
Delete the selected action from the model.
This feature is always downlighted in the current version of ArgoUML.