Specification of a behavior with coordinated actions.
An activity specifies the coordination of executions of subordinate behaviors, using a control and data flow model. The subordinate behaviors coordinated by these models may be initiated because other behaviors in the model finish executing, because objects and data become available, or because events occur outside the flow. The flow of execution is modeled as activity nodes connected by activity edges. A node can be the execution of a subordinate behavior, such as an arithmetic computation, a call to an operation, or manipulation of object contents. Activity nodes also include flow-of-control constructs, such as synchronization, decision, and concurrency control. Activities may form invocation hierarchies invoking other activities, ultimately resolving to individual actions. In an object-oriented model, activities are usually invoked indirectly as methods bound to operations that are directly invoked. Activities may describe procedural computation. In this context, they are the methods corresponding to operations on classes. Activities may be applied to organizational modeling for business process engineering and workflow. In this context, events often originate inside the system, such as the finishing of a task, but also outside the system, such as a customer call. Activities can also be used for information system modeling to specify system level processes. In Modelio, an activity can be owned by a NameSpace or an operation. It can also be owned by a structured activity node, but in this case, the activity is "hidden" (visually merged with the ActivityNode).
: Activity (architecture_autodiagram)
Figure 95 : Activity (architecture_autodiagram)
boolean IsSingleExecution [1..1]
If true, all invocations of the activity are handled by the same execution.
boolean IsReadOnly [1..1]
If true, this activity must not make any changes to variables outside the activity or to objects. This is an assertion, not an executable property.
OwnedGroup : ActivityGroup [0..*]
Top-level groups in the activity.
OwnedNode : ActivityNode [0..*]
Nodes coordinated by the activity.