uk.ac.ucl.cs.uml.jmi.BehavioralElements.ActivityGraphs
Interface ActivityGraph
- All Superinterfaces:
- Element, ExtObject, ModelElement, javax.jmi.reflect.RefBaseObject, javax.jmi.reflect.RefFeatured, javax.jmi.reflect.RefObject, StateMachine
- All Known Implementing Classes:
- ActivityGraph_Impl
public interface ActivityGraph
- extends StateMachine
An activity graph is a special case of a state machine that defines
a computational process in terms of the control-flow and object-flow
among its constituent activities. It does not extend the semantics
of state machines in a major way but it does define shorthand forms
that are convenient for modeling control-flow and object-flow in
organizational processes.
The primary purpose of activity graphs is to describe the states of
an activity or process involving one or more classifiers. Activity
graphs can be attached to packages, classifiers (including use
cases) and behavioral features. As in any state machine, if an
outgoing transition is not explicitly triggered by an event then it
is implicitly triggered by the completion of the contained actions.
A subactivity state represents a nested activity that has some
duration and internally consists of a set of actions or more
subactivities. That is, a subactivity state is a “hierarchical
action” with an embedded activity subgraph that ultimately resolves
to individual actions. Junctions, forks, joins, and synchs may be
included to model decisions and concurrent activity.
Activity graphs include the concept of Partitions to organize
states according to various criteria, such as the real-world
organization responsible for their performance. Activity graphing
can be applied to organizational modeling for business process
engineering and workflow modeling. In this context, events often
originate from inside the system, such as the finishing of a task,
but also from outside the system, such as a customer call. Activity
graphs can also be applied to system modeling to specify the
dynamics of operations and system level processes when a full
interaction model is not needed.
Methods inherited from interface uk.ac.ucl.cs.uml.jmi.Foundation.Core.ModelElement |
getAsArgument, getBehavior, getClientDependency, getComment, getConstraint, getContainer, getDefaultElement, getIsSpecification, getName, getNamespace, getPackage, getPresentation, getReferenceTag, getSourceFlow, getStereotype, getSupplierDependency, getTaggedValue, getTargetFlow, getTemplate, getTemplateArgument, getTemplateParameter, getVisibility, setDefaultElement, setIsSpecification, setName, setNamespace, setTemplate, setVisibility |
Methods inherited from interface javax.jmi.reflect.RefObject |
refClass, refDelete, refImmediateComposite, refIsInstanceOf, refOutermostComposite |
Methods inherited from interface javax.jmi.reflect.RefFeatured |
refGetValue, refGetValue, refInvokeOperation, refInvokeOperation, refSetValue, refSetValue |
Methods inherited from interface javax.jmi.reflect.RefBaseObject |
equals, hashCode, refImmediatePackage, refMetaObject, refMofId, refOutermostPackage, refVerifyConstraints |
getPartition
Collection getPartition()
throws javax.jmi.reflect.JmiException
- Throws:
javax.jmi.reflect.JmiException