Zicomi Systems Logo Zicomi Site Banner
uml examples  |  home  |  contact us  |  your privacy
Company
Services
Products
Support
Resources
  OMG Standards
OMG Logo
Action
Action  
An action is an executable activity node. It is the atomic unit of processing or behavior specification in an activity. An action may receive inputs in the form of control flows and object flows (the latter via input pins) and passes the results of its processing or transformations to one or more outgoing control flows or object flows (the latter via output pins) and onto downstream nodes. Execution of the action cannot begin until all its prerequisites are satisfied. Typically this means that all incoming control flows have control tokens and all input pins have object tokens.

This is alternative content.

Explanation

While an activity is comprised of a number of actions joined by flows an action itself is where the execution is described and it cannot be decomposed into smaller pieces. It is the fundamental (atomic) unit of behavior specification. An action can have any number of incoming control flows and can have any number of input pins. Control tokens arrive on the incoming control flows and objects (data) are offered to the input pins. When all these have tokens the action begins execution. When the processing specified by the action is complete control tokens are presented to all outgoing control flows and object (data) tokens are placed in all output pins. These tokens are offered to downstream nodes that possibly perform further actions. An action typically continues its execution without interruption until it is completed.

Important Points

An activity can be placed within a swimlane to show responsibility. Activities (and other elements such as, decisions, forks and joins) can be placed within a swimlane. This allows responsibility or governance to be shown. The lanes in the swimlane can be user defined but may be things like people, parties, organizations, locations, systems, components or entities like UML classes.
An activity is a state that has only entry actions. It does not have an exit action, do activities, or internal transitions. An activity is an atomic action; it has an entry action, which can consist of a number of actions. While there may be other sub activities that it is comprised of, or multiple steps, it must ultimately be able to be expressed as a single activity. An activity cannot contain do activities, exit actions, or internal transitions.
As soon as the activity is completed the exit transition fires. As soon as the activity is completed the outgoing transition fires. In the case that there are two or more outgoing transitions the guards are evaluated and one (and only one) transition fires.

Related Entries

Input Pin
Input Pin  Owned Element
An input pin is related to an action in that the input pin is owned by an action. The input pin receives object tokens from incoming object flows making them available to the action.
Output Pin
Output Pin  Owned Element
An output pin is related to an action in that the output pin is owned by an action. The output pin delivers object tokens to outgoing object flows making the tokens available to downstream nodes.
Control Flow
Control Flow  Used Together
A control flow is related to an action in that when a line emerges directly from an action it is a control flow. Control flows deliver control tokens to actions and once the action has completed its work it offers tokens to outgoing control flows. The lines arriving at input pins and leaving from output pins are object flows.
State
State  Confused with,  Graphically Similar
A state is related to an action in that they have the same fundamental shape, a rectangle with rounded corners. They have very different semantics and are used on different diagrams. A state represents a condition of an object at a point in time whereas an action is an atomic unit of processing or behavior specification. States are used in state machine diagrams whereas actions are used in activity diagrams.

back to the index...
Unified Modeling Language and UML are either registered

trademarks or trademarks of Object Management Group, Inc. in the

United States and/or other countries.