Workflow management is emerging as a powerful tool to improve productivity of organizations. However in its current state, it still lacks certain features that are essential for supporting advanced database applications.
Advanced database applications like office automation, CAD/CAM and Software Engineering are characterized by the presence of long-duration, cooperative or multidatabase tasks. These applications can be data-centric or process-centric or both. Extended transaction models designed to address the requirements of these applications use a data-centric approach and they do not have adequate implementation support. Workflow management as promoted by industry uses a process-centric approach. Due to lack of concrete guidelines, they contain customized features for modeling and executing applications. While they certainly have many practical features that extended transaction models do not provide, they do not have adequate support to satisfy the modeling & correctness requirements of advanced applications. To date, no systematic studies have been undertaken to design proper support for these applications. Our work attempts to fill the lacuna by unifying the workflow and extended transaction model based approaches in an effort to meet the needs of these applications. By studying the requirements of different applications and the features provided by current workflow systems as well as advanced transaction models we identify the modeling features essential for supporting advanced database applications.
Three important defining properties for modeling have been identified --- supporting coordinated tasks, supporting cooperative tasks and features to handle heterogeneity and interoperability. For each of them we discuss the required modeling primitives and correctness options. We also describe an implementation architecture on the lines of the reference model provided by the workflow coalition. Our workflow engine contains a semantic transaction manager along with a workflow navigation manager to handle all the different types of modeling primitives we have identified. Based on this architecture we explain implementation mechanisms for each of the modeling primitives. We discuss concurrency control, recovery and commit processing issues wherever appropriate. We also discuss problems that can arise in implementing our schemes. A secondary contribution of our work is the classification of advanced transaction models based on the functionality they provide. Our future plans include building a prototype system based on this architecture to study modeling, correctness and implementation issues when mobile users are involved, and when there are network/site failures.
Also check out ongoing work in the CREW Project and the WorldFlow Project.[ The following publications are associated with the work performed while Mohan U. Kamath was visiting the Exotica Project (related to Workflow Management) at the IBM Almaden Research Center, San Jose, CA ]
Back to the Database Systems Home Page