An Action element describes a basic process or transformation that occurs within a system, and is the basic functional unit within an Activity diagram. Actions can be thought of as children of Activities; both represent processes, but Activities can contain multiple steps or decomposable processes, each of which can be embodied in an Action. An Action cannot be further broken down or decomposed.
Certain properties can be graphically depicted on the Action. When you first drag the 'Action' icon from the Toolbox onto a diagram, the system prompts you to select from a list of the more common types of Action to create. If you select the 'Other' option on this list, the 'New Action' dialog displays; the 'Other' drop-down list on this dialog enables you to select a more specialized type of Action from a complete list of Action types.
If you later decide that the Action type is not appropriate, you can change it on the 'Action' tab of the Properties window - select the required new type from the 'Kind' drop-down list. For a Value Specification Action, you can also set the value on this tab.
The data values passed out of and into an Action can be represented by Action Pins. For an Action type other than a basic Action, you can also assign Action Pins to represent specific properties.
An Action can also be depicted as an Expansion Node to indicate that the Action consists of an Expansion Region.
If you have defined a Decision Table for the Action element, you can select options on the element's context menu to render the element on a diagram as the Decision Table, showing the rules as either rows or columns. You can also return the element to its normal element shape.
- Activity Element
- Activity Diagram
- Local Pre/Post Conditions
- Action Types
- Action Pin
- Assign Action Pins
- Expansion Node
- Expansion Region
- Class Operations in Diagrams
- Code Generation - Activity Diagrams
- Hyperlink Facilities
- Action Behavior By Type (Simulation)
- Element Context Menu Operations
- Decision Models
OMG UML Specification
The OMG UML specification (UML Superstructure Specification, v2.1.1, p. 241) states:
An action is a named element that is the fundamental unit of executable functionality. The execution of an action represents some transformation or processing in the modeled system, be it a computer system or otherwise.
The OMG UML specification (UML Superstructure Specification, v2.1.1, p. 313) also states:
An action may have sets of incoming and outgoing activity edges that specify control flow and data flow from and to other nodes. An action will not begin execution until all of its input conditions are satisfied. The completion of the execution of an action may enable the execution of a set of successor nodes and actions that take their inputs from the outputs of the action.