Action (UML)
Encyclopedia
In the Unified Modeling Language
, 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
. An action execution represents the run-time behavior
of executing an action within a specific behavior execution. All action executions will be executions of specific kinds of actions because Action is an abstract class. When the action executes, and what its actual inputs are, is determined by the concrete action and the behaviors in which it is used.
An action is the specification of an executable
statement
and is the fundamental unit of processing or behavior in an activity node
that represents some transformation in the modeled system
.
An action forms an abstraction
of a computational procedure which is an atomic execution and therefore completes without interruption. An action is considered to take zero time and cannot be interrupted. In contrast, an activity is a more complex
collection of behavior
that may run for a long duration. An activity may be interrupted by events, in which case, it does not run to completion.
An action is a result
of a system
state
change, and is realized by sending a message
to an object
or modifying a link or a value
of an attribute
.
An action may receive inputs in the form of control flow
s and object flows (the latter via input pins) and passes the result
s of its processing or transformations to one or more outgoing control flow
s or object flows (the latter via output pins) and onto downstream
nodes.
Execution of the action cannot begin until all its prerequisites are satisfied. All incoming control flow
s have control tokens and all input pins have object tokens.
An action refers to the suite of rules and policies associated with a state machine state
, and is represented as an object
method.
Actions are contained within, and are provided context by activities.
An action behavior
accompanies a transition event.
Unified Modeling Language
Unified Modeling Language is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created, by the Object Management Group...
, 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
System
System is a set of interacting or interdependent components forming an integrated whole....
. An action execution represents the run-time behavior
Behavior
Behavior or behaviour refers to the actions and mannerisms made by organisms, systems, or artificial entities in conjunction with its environment, which includes the other systems or organisms around as well as the physical environment...
of executing an action within a specific behavior execution. All action executions will be executions of specific kinds of actions because Action is an abstract class. When the action executes, and what its actual inputs are, is determined by the concrete action and the behaviors in which it is used.
An action is the specification of an executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...
statement
Statement (programming)
In computer programming a statement can be thought of as the smallest standalone element of an imperative programming language. A program written in such a language is formed by a sequence of one or more statements. A statement will have internal components .Many languages In computer programming...
and is the fundamental unit of processing or behavior in an activity node
Vertex (graph theory)
In graph theory, a vertex or node is the fundamental unit out of which graphs are formed: an undirected graph consists of a set of vertices and a set of edges , while a directed graph consists of a set of vertices and a set of arcs...
that represents some transformation in the modeled system
System
System is a set of interacting or interdependent components forming an integrated whole....
.
An action forms an abstraction
Abstraction
Abstraction is a process by which higher concepts are derived from the usage and classification of literal concepts, first principles, or other methods....
of a computational procedure which is an atomic execution and therefore completes without interruption. An action is considered to take zero time and cannot be interrupted. In contrast, an activity is a more complex
Complexity
In general usage, complexity tends to be used to characterize something with many parts in intricate arrangement. The study of these complex linkages is the main goal of complex systems theory. In science there are at this time a number of approaches to characterizing complexity, many of which are...
collection of behavior
Behavior
Behavior or behaviour refers to the actions and mannerisms made by organisms, systems, or artificial entities in conjunction with its environment, which includes the other systems or organisms around as well as the physical environment...
that may run for a long duration. An activity may be interrupted by events, in which case, it does not run to completion.
An action is a result
Result
A result is the final consequence of a sequence of actions or events expressed qualitatively or quantitatively. Possible results include advantage, disadvantage, gain, injury, loss, value and victory. There may be a range of possible outcomes associated with an event depending on the point of...
of a system
System
System is a set of interacting or interdependent components forming an integrated whole....
state
State (computer science)
In computer science and automata theory, a state is a unique configuration of information in a program or machine. It is a concept that occasionally extends into some forms of systems programming such as lexers and parsers....
change, and is realized by sending a message
Message
A message in its most general meaning is an object of communication. It is a vessel which provides information. Yet, it can also be this information. Therefore, its meaning is dependent upon the context in which it is used; the term may apply to both the information and its form...
to an object
Object (computer science)
In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...
or modifying a link or a value
Value (computer science)
In computer science, a value is an expression which cannot be evaluated any further . The members of a type are the values of that type. For example, the expression "1 + 2" is not a value as it can be reduced to the expression "3"...
of an attribute
Attribute (computing)
In computing, an attribute is a specification that defines a property of an object, element, or file. It may also refer to or set the specific value for a given instance of such....
.
An action may receive inputs in the form of control flow
Control flow
In computer science, control flow refers to the order in which the individual statements, instructions, or function calls of an imperative or a declarative program are executed or evaluated....
s and object flows (the latter via input pins) and passes the result
Result
A result is the final consequence of a sequence of actions or events expressed qualitatively or quantitatively. Possible results include advantage, disadvantage, gain, injury, loss, value and victory. There may be a range of possible outcomes associated with an event depending on the point of...
s of its processing or transformations to one or more outgoing control flow
Control flow
In computer science, control flow refers to the order in which the individual statements, instructions, or function calls of an imperative or a declarative program are executed or evaluated....
s or object flows (the latter via output pins) and onto downstream
Downstream (computer science)
In a telecommunications network or computer network, downstream refers to data sent from a network service provider to a customer.Although the best voiceband modems are called 56 kbit/s modems, downstream speeds can be limited to a few tens of kilobits per second with even lower upstream speeds...
nodes.
Execution of the action cannot begin until all its prerequisites are satisfied. All incoming control flow
Control flow
In computer science, control flow refers to the order in which the individual statements, instructions, or function calls of an imperative or a declarative program are executed or evaluated....
s have control tokens and all input pins have object tokens.
An action refers to the suite of rules and policies associated with a state machine state
State (computer science)
In computer science and automata theory, a state is a unique configuration of information in a program or machine. It is a concept that occasionally extends into some forms of systems programming such as lexers and parsers....
, and is represented as an object
Object (computer science)
In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...
method.
Actions are contained within, and are provided context by activities.
An action behavior
Behavior
Behavior or behaviour refers to the actions and mannerisms made by organisms, systems, or artificial entities in conjunction with its environment, which includes the other systems or organisms around as well as the physical environment...
accompanies a transition event.
Action types
- On Entry: occurs when an activity is entered.
- Do: occurs while an activity is occurring. These are the steps within the activity.
- On Exit: occurs when you leave an activity.
- On Event: occurs upon a specific eventEvent (UML)An event in the Unified Modeling Language is a notable occurrence at a particular point in time.Events can, but do not necessarily, cause state transitions from one state to another in state machines represented by state machine diagrams....
.