ADEPT1 - Flexible Workflow Management
Long regarded as technology for the automation of well-structured, repetitive business processes, workflow (WF) management is in the throes of transformation as more and more non-traditional applications require comprehensive process support. In many domains like hospitals, engineering environments, or e-business, however, high requirements with respect to functionality, flexibility, and scalability exist. In the ADEPT1 project, which started in 1997, we addressed these requirements from the very beginning. Particularly, we tried to look at the different facets of advanced process-aware information systems in conjunction with each other: WF modeling, temporal constraints, exception handling, ad-hoc changes, schema evolution, inter-workflow dependencies, user interfaces, scalability, distributed WF management, and implementation issues. Among these different features many non-trivial interdependencies exist which must be carefully analyzed and understood. We developed sophisticated concepts as well as an advanced proof-of-concept prootoype for the support of enterprise-wide application scenarios.
Workflow Modeling Concepts: Within the ADEPT1 project we developed advanced concepts for the modeling, analysis, and verification of WF templates. They enable the explicit definition of control and data flow, actor and resource assignments, temporal constraints, and pre-planned exceptions (e.g., forward and backward jumps). This can be done in an integrated and consistent manner. ADEPT1 guarantees correctness properties (e.g., no missing input data when invoking activity programs, no undefined work assignments, no deadlocks). Note that this constitutes an important prerequisite for process schema as well as instance changes. For control flow modeling a simple, yet powerful formalism is offered. It is based on serial-parallel graphs with several extensions necessary to adequately capture real-world processes. Nevertheless the resulting WF models are easy to understand for designers as well as for end users. In addition to this graph-based interpretation of the ADEPT1 meta model, a precise formal semantics, an equivalent operational semantics, and an efficient implementation exists.
Management of Temporal Constraints: The correct and efficient handling of temporal constraints is an important requirement for any workflow system. ADEPT1 allows workflow designers to specify minimal and maximal durations for workflow activities. At runtime, in addition, concrete dates may be associated with activities. Furthermore, time constraints between activities are definable (e.g., "complete activity X two days before starting activity Y"). ADEPT1 offers advanced concepts for specifying such temporal constraints and for checking at build-time whether they can be met or not. Internally, we have used Temporal Constraint Networks for representing temporal constraints and for enabling checking consistency. At runtime, ADEPT1 schedules activities according to their starting times, supervises temporal constraints, and informs users when deadlines are going to be misssed. Problems we have to deal with in this context include uncertainty, delays, and temporal inconsistencies (e.g., due to workflow model changes).
Exception Handling and Ad-hoc Workflow Changes: The support of ad-hoc changes is a must for WfMS to cover a broad spectrum of processes. At the process instance level, ADEPT enables different kinds of ad-hoc deviations from the pre-modeled WF schema (e.g., to omit activities, to change activity sequences, or to insert activities). Such dynamic changes, however, must not lead to an unstable system behavior; i.e., none of the guarantees achieved by formal checks at build-time must be violated due to the dynamic change. ADEPT1 ensures this by introducing formal pre- and post-conditions for change operators. Among other things, a consistent state and temporal constraints must be preserved when a WF instance is going to be adapted. ADEPT1 properly integrates changes with respect to authorization and documentation. Furthermore, all complexity associated with the adaptation of WF instance states, the re-mapping of input/output parameters of the components affected by a change, the problem of missing input data due to activity deletions, or the problem of deadlocks are hidden to a large degree from users.
Workflow Schema Evolution and Change Propagation: The ad-hoc adaptation of single instances is one special kind of dynamic change. In order to adequately deal with business process changes it is important that adaptations can be quickly performed at the WF type level as well. Since versioning is not always sufficient in this context, ADEPT supports the propagation of type changes to in-progress WF instances as well. In doing so, change propagation is restricted to those instances for which the type change does not conflict with current instance state or previous ad-hoc changes. Basic to this is a comprehensive framework for change propagation which is based on well-defined compliance criteria for WF instances and on advanced rules for automatically and efficiently adapting instance markings. This feature had been not fully implemented in the ADEPT1 prototype, but was only available as demonstrator (see the ADEPTevolution project for details).
Specification and Synchronization of Inter-Workflow-Dependencies: Many WfMS do not provide adequate means for (semantic) inter-workflow coordination as concurrently executed workflow instances are considered completely independent. Though workflow templates are modeled independently from each other in order to remain comprehensible and manageable, very often corresponding instances are semantically inter-related in the one way or another. Pragmatical approaches like inter-workflow message passing or merging interdependent workflows within one template do not satisfactorily solve the inter-workflow coordination problem. The latter, for example, would lead to a large number of templates, each of them very complex and hard to maintain. Within the ADEPT project we have developed interaction expressions and interaction graphs as a simple yet powerful mechanisms for the specification and implementation of inter-workflow dependencies. In addition to a graph-based semi-formal interpretation, a precise formal semantics, an equivalent operational semantics, an efficient implementation, and detailed complexity analyses exist, which allow us to actually apply this formalism to coordinate inter-workflow dependencies. ADEPT uses different coordination and subscription protocols to acutally employ interaction expressions for the efficient synchronization of concurrent workflows.
Scalability and Distributed Workflow Control: In large-scale, enterprise-wide application scenarios performance is a critical issue. Due to the high amount of communication between server(s) and clients the communication network may become a bottleneck, especially if a large amount of "long-distance" communication occurs. To avoid bottlenecks, ADEPT allows to reduce the network load by partitioning WF graphs and by migrating the control of WF instances from one server to another during run-time; i.e., a WF instance may no longer be controlled by only one WF server. When performing such a migration, a description of the instance state is transmitted to the target server. This includes information about activity states as well as WF relevant data. To avoid unnecessary communication between servers, ADEPT allows to control parallel branches of a WF instance independently from each other (at least as no synchronization due to other reasons, e.g. a dynamic WF change, becomes necessary). For further details see the ADEPTdistribution homepage.
Proof-of-concept implementation: We realized the described features in the ADEPT1 workflow system. This powerful research prototype supports workflow control and monitoring, demonstrates the feasibility of dynamic workflow changes in a (distributed) WfMS, deals with temporal constraints, shows which user and programming interfaces are required, and proves that the concepts work in conjunction with each other as well. All system components have been implemented in Java, for communication Java RMI has been used. Tool presentations and demonstrations of different versions of the ADEPT1 workflow system were given at several conferences and industrial fairs, including BPM'2003, EDBT'2000, BIS’2000, and CeBIT'2000.
End of 2004 design and implementation of ADEPT2 was started. ADEPT2 is a completely new implementation with many improvements in detail. Among other things it has complemented ADEPT's ad-hoc deviation facility by the support of process schema evolution as described in our related papers.
Cooperations. To gain concrete usability experience we have elaborated the ADEPT1 concepts and prototypes in several application and research projects. Some of them have been carried out by our department in close cooperation with partners from different application domains (e.g., the Women's Hospital of the University of Ulm). Additionally, we deployed the ADEPT workflow system to other research groups who have used it as implementation platform for realizing adaptive workflow scenarios. Projects which used ADEPT1 include CONSENSUS (Flexible E-Negotiations), AgentWork (Automatic Workflow Adaptations), WebFlow (Cross-organizational workflows), and a DSTO research project (Flexible Workflows in Defence Applications).
- Institute of Databases and Information Systems
The ADEPT1 project was funded by different sources, including
- State of Baden-Württemberg
- German Research Foundation (DFG)
- Industrial Partners
- 1997 - 2003