22.2.  Action State

An action state represents execution of an atomic action, usually the invocation of an action. Within the UML metamodel, ActionState is a sub-class of SimpleState. It is a specialized simple state that only has an entry action, and with an implicit trigger as soon as that action is completed.

[Caution]Caution

As a consequence any outgoing transitions from an action state should not have explicit triggers defined (ArgoUML will not currently check for this). They may have guards to provide a choice where there is more than one transition.

[Note]Note

Unlike an ordinary state, an internal transition, an exit action and a Do activity are not permitted for action states.

An action state is represented on an activity diagram in ArgoUML as a rectangle with rounded corners containing the name of the action state.

[Caution]Caution

The UML standard specifies that the text shown in the action state on the activity diagram should contain the expression associated with the entry action - which is implemented as such since ArgoUML V0.18. In past versions of ArgoUML (0.16.1 and before), the diagram used to show the action state name. Loading a project created by one of the older versions, causes the project file to be converted to the correct format to conform to the UML standard. This process is designed to be transparent for the user, and the only drawback is, that the activity diagram in the project will not show correctly when reloaded in an old version of ArgoUML again.

22.2.1.  Action State Details Tabs

The details tabs that are active for action states are as follows.

ToDoItem

Standard tab.

Properties

See Section 22.2.2, “ Action State Property ToolBar and Section 22.2.3, “ Property fields for action state below.

Documentation

Standard tab.

Presentation

Standard tab. The values for the bounds of the action state define the bounding box of the action state.

Stereotype

Standard tab that shows the stereotypes of the action state. In the UML metamodel, there are no stereotypes defined by default for a action state.

Tagged Values

Standard tab. In the UML metamodel, ActionState has no standard tagged values defined.

22.2.2.  Action State Property ToolBar

Go up

Navigate up through the containment structure. Action states are contained by the (otherwise invisible) top state.

New Stereotype

This creates a new Stereotype (see Section 16.6, “ Stereotype) for the selected action state, navigating immediately to the properties tab for that stereotype.

Delete from Model

This deletes the action state from the model

[Warning]Warning

This is a deletion from the model not just the diagram. It is not possible to delete an action state from the diagram, since that concept does not fit the UML standard.

Hence ArgoUML does also not show the Add to Diagram pop-up menu for action states.

22.2.3.  Property fields for action state

Name

Text box. The name of the action state. By convention action state names start with a lower case letter and use bumpy caps to divide words within the name.

[Note]Note

ArgoUML does not enforce this naming convention.

Container

Text box. The container of the action state. This shows the otherwise invisible composite state at the top of the containment hierarchy.

Entry-Action

Text box. Shows the name of the action to be invoked on entry to this action state. According the UML standard, an Action State is obliged to have an Entry-Action.

Button 1 double-click navigates to the shown entry, button 2 gives a pop up menu with two entries.

  • New. Add a new Entry action of a certain kind. This menu has the following 7 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 Entry-Action.

Deferrable events

Text box. The deferrable events of the action state.

Incoming

Text area. Lists the transitions that enter this action state.

Button 1 double-click navigates to the selected entry.

Outgoing

Text area. Lists the transitions that leave this action state.

Button 1 double-click navigates to the selected entry.