workflow diagram. In the end, all violations are
resolved, all terminating activities have completed,
and the process goal is achieved.
Figure 6 is a diagram of the concepts and relati-
ons used to formulate our declarative business rules
for imperative workflow. An important observation
is that this declarative structure is not restricted to a
single workflow only. Other workflow models are
readily captured in the same declarative structure,
merely by populating the various binary relations
with the structural knowledge encapsulated in the
workflow models.
More details about the model, scripted in the
Ampersand toolset, will be available at the site
http://wiki.tarski.nl/index.php/Research_hub. There,
a realistic example will be available to show and
explore the benefits and issues of our approach. It
lists the binary relations, the exact formulas, and the
violations of the declarative business rules of a
workflow model fashioned like figure 1.
7 DISCUSSION
7.1 Advanced Flow Structures
This paper covered only the principal structures as
seen in workflows. We are convinced that other,
more advanced structures can also be transformed.
How, requires further analysis.
For instance, an 'empty' activity type may show
up in a workflow diagram. As we abstracted from
the actual work executed by an activity, the empty
activity type is treated like any other: it has
precedents, it may be the precedent of other activity
types, it turns up in the completed relation etc.
In practice other exceptions exist that operational
workflows must deal with, such as lack of resources,
user-initiated aborts, and crosscutting events (e.g. a
client dies, or an order is cancelled). Likewise,
quality problems may arise in workflows, such as
deadlock, irregular termination, or loops that never
terminate. Merely transforming to a declarative rules
model cannot be expected to solve the quality
problems. This area of research is beyond the scope
of this paper.
7.2 Limitations of Our Approach
The sequencing of activities in a workflow is the
outcome not only of business requirements, but also
of design decisions and implementation choices. An-
other designer may propose a different sequence that
also complies with the essential business rules.
Hence, precedence analysis is required to bring out
what aspects of the flow is due to design choices,
and which are based on actual business needs. To
some extend, is a matter of opinion whether a
workflow constitutes legitimate business rules, or
whether it is just a way to implement underlying,
more fundamental business rules (Hofstede, Aalst, et
al., 2003). It can also be debated with users which
flow features must have immediate enforcement, and
which ones may be relaxed to allow temporary
violations.
Moreover, flow rules such as precedence,
disabling and the like, are just one of the many kinds
of business rules. Business rules in general support
not only the consecutive steps of process flows but
also the rules to assess the business conditions and
facts as activities are being executed. For instance, a
workflow diagram often specifies the business rules
that determine whether iteration is required, or
which branch in an XOR-split to follow, but our
relations cannot records such business conditions.
In our approach, iterative loops are dealt with in
a slightly different way. The usual interpretation is
that an iteration branches off immediately after
completing a looping activity. Our interpretation is
that iterations are recorded by way of subordinate
identifiers, prior to completion of the looping
activity by the main case identifier.
Furthermore, our approach was found to be
limited in dealing with a disable, when there is time-
dependence involved. An example is a workflow
model with a constraint that 'an activity of type C3
may complete, but not before an activity of type C2'.
Such a non-coexistence rule would allow to record
the sequence of activities c1-c2-c3-c4, but disallow
the sequence c1-c3-c2-c4. Like all of the declarative
rules, our disabling rule is time-independent, and
therefore must be symmetric. It cannot distinguish
between the allowed sequence, c1-c2-c3-c4, and the
forbidden sequence, c1-c3-c2-c4. Hence, transfor-
ming this into declarative format is not possible. A
work-around may be to adjust the original workflow
model to capture the precedences in another way.
7.3 Lack of Temporal Features
Our approach is founded on Relation Algebra, which
does not provide temporal capabilities. Therefore, a
main limitation of our approach is the lack of time in
all of our formulas. This is not a drawback, instead
we regard it as a major advantage. Indeed, we
demonstrated how main components of workflow
can well be captured without referring to time.
Abstracting Imperative Workflow to Declarative Business Rules
83