Page 183 -
P. 183

5  Exception Handling                                           173
                           this research initiative. Significant attempts to include advanced transactional con-
                           cepts and exception handling capabilities in workflow systems include WAMO [86],
                           which provided the ability to specify transactional properties for tasks that identified
                           how failures should be dealt with; ConTracts [210], which proposed a coordinated,
                           nested transaction model for workflow execution allowing for forward, backward,
                           and partial recovery in the event of failure; and Exotica [34], which provided a
                           mechanism for incorporating Sagas and Flexible transactions in the commercial
                           FlowMark workflow product. OPERA [113, 114] was one of the first initiatives to
                           incorporate language primitives for exception handling into a workflow system, and
                           it also allowed exception handling strategies to be modeled in the same notation as
                           that used for representing workflow processes. TREX [243] proposed a transaction
                           model that involves treating all types of workflow failures as exceptions. A series of
                           exception types were delineated and the exception handler utilized in a given situ-
                           ation was determined by a combination of the task and the exception experienced.
                           WIDE [55] developed a comprehensive language – Chimera-Exc – for specifying
                           exception handling strategies in the form of Event-Condition-Action (ECA) rules.
                              Other important contributions include the concepts of compensation spheres and
                           atomicity spheres and their applicability to workflow systems [149], a proposal for
                           independent models for the specification of workflow and transaction properties
                           using generic rules to integrate the workflow specification and the atomicity specifi-
                           cation into a single model based on Petri Nets [76], modeling workflow systems as
                           a set of reified objects with associated constraints and conceptualizing exceptions as
                           violations of those constraints that are capable of being detected and managed [47],
                           a high-level framework for handling exceptions in web-based workflow applications
                           together with an implementation based on extensions to WebML [48] and the iden-
                           tification of the pivot, retriable, and compensation transaction concepts widely used
                           in subsequent research [159].
                              Identifying potential exceptions and suitable handling strategies is a significant
                           problem for large, complex workflows and recent attempts [112, 123] to address
                           this have centered on mining previous execution history to gain an understand-
                           ing of past exception occurrences and using this knowledge (either at design or
                           runtime) in order to determine a suitable handling strategy. Klein et al. [134] pro-
                           pose a knowledge-based solution to the issue based on the establishment of a
                           shared, generic, and reusable taxonomy of exceptions. Luo et al. [153] use a case-
                           based reasoning approach to match exception occurrences with suitable handling
                           strategies.
                              Until recently, the area of unexpected exceptions has mainly been investigated in
                           the context of adaptive or evolutionary workflow [212], which center on dynamic
                           change of the process model. A detailed review of this area is beyond the scope of
                           this chapter; however, an initiative that offers the potential to address both expected
                           and unexpected exceptions simultaneously is ADOME-WFMS [58], which provides
                           an adaptive workflow execution model in which exception handlers are speci-
                           fied generically using ECA rules, providing the opportunity for reuse in multiple
                           scenarios and user-guided adaptation where they are not found to be suitable.
   178   179   180   181   182   183   184   185   186   187   188