The transaction concept is essentially a central paradigm for correctly synchronizing concurrent activities and for achieving reliability in database systems (23,9,55). Moreover, it is nowadays available outside database systems, e.g. in TP monitors (10,6) or among the CORBA Services (37,45), for achieving similar purposes. The rationale behind the transaction concept together with these recent technical developments make transactional services amenable to a variety of novel applications, which are less and less centered around databases. The area we look into here is that of workflow management (43,26,27,280, which has gained increasing attention recently. For capturing essential execution requirements of workflows (including atomicity as well as isolation issues, notions of correctness, parallelism and fault-tolerance), the transaction concept seems appropriate. Indeed, transaction schedulers and wrkflow engines accomplish tasks that have similar requirements and involve similar ingredients. However, a variety of transactional issues also need to be reconsidered, since they are specific for workflow scenarios and previously irrelevant in other contexts.
展开▼