Abstract
During the past decade a new class of systems has emerged, which plays an important role in the support of efficient business process implementation: workflow systems. Despite their proliferation however, workflow systems are still being developed in an ad hoc way without making use of advanced software engineering technologies such as component-based system development and reuse of architecture artifacts.This work proposes a modern approach to workflow system construction. The approach is centered around a domain-specific software architecture metamodel (the REWORK metamodel) and a repository-based composition framework for workflow system construction out of reusable reactive components. The architecture metamodel defines the component and connector abstractions necessary for describing the static and dynamic aspects of a workflow system. The composition framework defines the lifecycle of a workflow system and supports the dynamic extension of a kernel workflow management system with application-specific elements. Appropriately, resulting systems are called REWORK systems.An event- and repository-based style underlies the REWORK framework. Events are the only component integration mechanism used in REWORK systems. Repositories support both system development by storing artifacts which are used for workflow system development and system operation by making explicit the structure of a running REWORK system.The iterative workflow system composition lifecycle proposed in this thesis comprises the following phases: the architecture analysis phase allows the identification and characterization of processing entities which participate in workflow execution; this phase is supported by a classification framework for processing entities in accordance to their integration-related properties. During the architecture definition phase workflow system components are defined and their behavior is tailored to specifications of workflows which are intended to be executed by the resulting system; furthermore, organizational relations and task assignment policies for these components are declaratively defined. The implementation phase is largely automated and consists in the instantiation of the defined components on top of an event-based operational infrastructure.As already mentioned the entire lifecycle is supported by repositories which store the workflow system artifacts. The iterative development comes into the picture once existing workflow systems have to be maintained either by adding new repository artifacts or by modifying existing ones. Thus, we dedicate a part of this thesis to the description of these repositories.