Database Reference
In-Depth Information
of the state transitions are triggered by completion of activities in the source states. Activity
diagrams are not designed to handle events. Since exceptions may happen during the execu-
tion of a workfl ow instance and exceptions are best modeled as events, activity diagrams
can only model very simple workfl ows. In this sense, statecharts are more appropriate for
modeling realistic workfl ows.
Before we show how to use statecharts to model workfl ow concepts, we present an
example, adapted from Harel (1987), that shows the problem of exponential growth of states
that plague ordinary state transition diagrams. In Figure 2, a statechart and its equivalent state
transition diagram are presented. Note that by making use of an and-state in the statechart,
we can easily model concurrency in a system by orthogonal components in the and-state.
On the other hand, to perform the same modeling in the equivalent state transition diagram,
we require six states. Using the same reasoning, for an and-state with two orthogonal
components with a thousand states in each of them, the equivalent state transition diagram
would require a million states. It is easy to see that it is diffi cult, if not impossible, to model
concurrency in ordinary state transition diagrams because of the problem of exponential
growth of states.
BASIC CONCEPTS AND TERMINOLOGY
The Workfl ow Management Coalition 3 (WfMC) has published numerous documents
on various aspects of business workfl ow. We now introduce some basic concepts and termi-
nology defi ned by WfMC. A business workfl ow , or simply a workfl ow, is a set of activities
which collectively realize a business objective. An insurance claims process is an example.
A workfl ow is defi ned in a workfl ow defi nition that consists of a network of activities. Usu-
ally a workfl ow defi nition is a formal representation of a business workfl ow. An activity is
a logical step within a workfl ow. As such, it is usually the smallest unit of work within a
workfl ow. Further, an activity can be manual or automated. A workfl ow management system
is used to manage automated activities, but not manual activities. A workfl ow instance is the
representation of a single execution of a workfl ow. It has its own workfl ow instance data
and is capable of independent control as it progresses towards completion. The processing
of an insurance claim for a particular customer is thus an example of a workfl ow instance
of the insurance claims process.
Similarly, an activity instance is the representation of a single invocation of an activity
within a workfl ow instance. Several activity instances may be associated with a workfl ow
instance, but one activity instance cannot be associated with more than one workfl ow in-
stance.
MODELING WORKFLOW CONCEPTS
A business workfl ow can be formally represented by a statechart. Each workfl ow in-
stance has its own copy of the statechart. An activity of a workfl ow, whether it is manual or
automated, is represented by a state in the statechart. An activity is being carried out only
if the system resides in the state that corresponds to that activity.
Transitions between activities are thus modeled as transitions between states in the
statechart, which are triggered by events and guarded by conditions . Events can be external
Search WWH ::




Custom Search