Page 168 -
P. 168
158 M. Adams and N. Russell
(a) Work item account − check account task (b) Deadline expiry − organise bookings task
account in terms
C
account overdue
(d) Trigger received − travel booking process
account_frozen trigger
(c) Resource unavailable − travel booking process R
data resource unavailable
(e) Constraint violation − check account task
constraint:order value < customer credit limit − current account balance
human resource unavailable
Fig. 5.5 Exception handling strategies – travel booking process
unavailable resource is a human resource (i.e., the person undertaking the work
item), the recovery action is also shown in Fig. 5.5c and involves suspending the
work item, reassigning it to another person and then restarting it from the beginning.
Figure 5.5d indicates the exception handlingstrategywhenan account frozen
trigger is received by any of the tasks in the current process. In this situation, the
recovery action is to stop the current work item and all other work items in the
process and to undertake a rollback action, which involves undoing all changes that
have occurred right the way back to the beginning of the case. In other words, any
work that has been undertaken on dispatching goods to the customer is completely
undone.
Finally, Fig. 5.5e illustrates the recovery action that is taken when the travel
order value constraint is exceeded for the organize bookings task. In this case,
the strategy is simply to stop the work item and all other work items (if any) in the
process.
5.4 Exception Handling in YAWL
From the discussion above, it can be seen that exception handling requirements form
a specific domain drawn from the more general topic areas of flexibility and adapta-
tion. It makes sense then that a solution for exception handling would extend from
ways of making workflows more flexible. Chapter 4 described the YAWL environ-
ment’s solution to the issues of flexibility and adaptation using the Worklet Service.
An extension of the Worklet Service, called the Worklet Exception Service, extends
the capabilities of the Worklet Service to provide dynamic exception handling with
corrective and compensatory actions. This section provides a conceptual overview
and a description of the general framework of the Exception Service; a detailed