UML Diagrams Zicomi Systems publishes some UML example diagrams online from the world famous UML dictionary. more...
Version 2.5 Released Zicomi Systems is delighted to announce that version 2.5 of Zicomi Mentor is released. With support for UML 2.0 and all thirteen UML diagrams more...
Zicomi Systems' Director speaks about the UML at Objects by Design - an informative interview more...
Partner Programme Zicom Systems is delighted to announce a new world wide partner programme, become a partner today. more...
OMG Member Zicom Systems is made a member of the OMG!
Activity
An activity is a classifier that describes a set of nodes and flows that specify a coordinated behavior made up of subordinate behaviors called actions. The nodes can be actions that are the atomic executable units of behavior, control nodes that coordinate flows or object nodes that can store objects or data. The flows (edges) can be control flows that carry control tokens or object flows, which carry object (data) tokens. An activity can participate in generalization relationships with other activities, and can also have sub activities that form a hierarchy. Activities are based on token flow where the execution of one node results in token flows that ultimately affect other nodes.
Explanation
An activity is specified by connecting a number of actions (nodes) together by flows (edges). The actions are the atomic (non-divisible) units of behavior. Activities can be specified by connecting these actions with flows and possibly a number of other control nodes such as decisions and forks to co-ordinate the flows. The semantics of activities are based on the flow of tokens. The tokens have no visual representation in UML but are like invisible balls that flow through the activity in the direction of the arrows on the flows. There are rules that govern the way that tokens flow in the activity and how nodes will respond to the tokens when they arrive. Other rules specify a node,s responsibility to pass the tokens onto other downstream nodes via outgoing flows. The tokens are of two main types: control tokens that control the flows and object (data) tokens that transport data through the activity. Control tokens are transported via control flows and object tokens via object flows. The nodes in an activity are of three main types: executable nodes (actions), which specify behavior, control nodes, which coordinate traffic and object nodes, which allow data tokens to be stored. Tokens cannot reside or be detained by control nodes. Control nodes simply act as traffic controllers sometimes destroying consuming or duplicating tokens but not detaining them. The mechanism of token flow is based on passive acceptance; tokens are offered to outgoing flows (edges), never forced upon them. Guards on an outgoing edge and the state of downstream nodes can determine whether the edge will accept the token or not. A token may reside at an initial node until any outgoing edges can accept it.
An action is related to an activity in that it is owned by the enclosing activity and is one of the atomic steps in an activity that performs a unit of processing or specifies a piece of behavior.
A control flow is related to an activity in that it is the more common of the two types of activity edges forming a conduit for control tokens to flow between vertices in the activity. The other type of edge is the object flow (carrying object tokens), which along with control nodes are commonly seen on activity and interaction overview diagrams.
ActivityOwned Element, More General, More Specific
An activity is related to another activity in that an activity can itself contain other activities allowing nested hierarchies of activities to be created down to any level. An activity can also be related to another activity as a specialization of a parent activity since the activity is a generalizable element.