Ulmer Informatik-Berichte. Architectural Design of Flexible Process Management Technology

Size: px
Start display at page:

Download "Ulmer Informatik-Berichte. Architectural Design of Flexible Process Management Technology"

Transcription

1 Architectural Design of Flexible Process Management Technology Manfred Reichert, Peter Dadam, Martin Jurisch, Ulrich Kreher, Kevin Göser, Markus Lauer Ulmer Informatik-Berichte Nr Februar 2008 Ulmer Informatik Berichte Universität Ulm Fakultät für Ingenieurwissenschaften und Informatik

2

3 Architectural Design of Flexible Process Management Technology Manfred Reichert 1,2, Peter Dadam 1, Martin Jurisch 1, Ulrich Kreher 1, Kevin Göser 1, Markus Lauer 1 1 Institute for Databases and Information Systems, Ulm University, Germany {peter.dadam, martin.jurisch, ulrich.kreher, kevin.goeser, markus.lauer}@uni-ulm.de 2 Information Systems Group, University of Twente, The Netherlands m.u.reichert@utwente.de Abstract: To provide effective support, process-aware information systems (PAIS) must not freeze existing business processes. Instead they should enable authorized users to deviate on-the-fly from the implemented processes and to dynamically evolve them over time. While there has been a lot of work on the theoretical foundations of dynamic process changes, there is still a lack of PAIS implementing this dynamics. Designing the architecture of respective technology constitutes a big challenge due to the high complexity coming with dynamic processes. Besides this, performance, robustness, security and usability of the system must not be affected by the added flexibility. In the AristaFlow project we have taken a holistic approach to master this complexity. Based on a conceptual framework for flexible process enactment and dynamic processes, we have designed a sophisticated architecture for next generation process management technology. This paper discusses major design goals and basic architectural principles, gives insights into selected system components, and shows how change support features can be realized in an integrated and effective manner. 1 Introduction In today's dynamic business world the economic success of an enterprise depends on its ability to react to changes in its environment in a quick and flexible way [LeRe07,RRD04a,WRR07]. Causes for these changes can be manifold and include the introduction of new laws or changes in customers' attitudes. For these reasons, companies have recognized business agility as a competitive advantage, which is fundamental for being able to cope with business trends like increasing product and service variability, faster time-to-market, and business-on-demand. Process-aware information systems (PAIS) offer promising perspectives in this respect, and a growing interest in aligning information systems (IS) in a process-oriented way can be observed [Wesk07]. In contrast to data- or function-centered IS, PAIS are characterized by a strict separation of process logic and application code. In particular, most PAIS describe process logic explicitly in terms of a process template providing the schema for process enactment. Usually, the core of the process layer is built by a process management system which provides generic functions for modeling, executing, and

4 monitoring processes [Wesk07]. This allows for a separation of concerns, which is a well established principle for increasing maintainability and reducing cost of change. Changes to one layer often can be performed without affecting other layers; e.g., modifying the application which implements a particular process activity does usually not imply any change to the process layer as long as interfaces remain stable. In addition, changing the execution order of process activities or adding new activities to the process can, to a large degree, be accomplished without touching any of the application services. The ability to efficiently deal with process change has been identified as one of the most critical success factors for PAIS [ReDa98,RRD04,WRR07]. Through the described separation of concerns PAIS facilitate changes significantly. However, enterprises are still reluctant to change process implementations once they are running properly. High complexity and cost of change are mentioned as major obstacles for not fully leveraging the potential of PAIS. To overcome this situation more flexible PAIS are needed enabling companies to capture real-world processes adequately without leading to mismatches between computerized processes and those running in reality. Instead, users must be able to deviate from the predefined processes as required and to evolve PAIS implementations over time. Such changes must be possible at a high level of abstraction and without affecting consistency and robustness of the PAIS [RRD04a]. Basically, process changes can take place at the type as well as the instance level: Changes of single process instances, for example, often have to be carried out in an adhoc manner in order to deal with exceptional situations [ReDa98,DRK00]. Such ad-hoc changes must not affect system robustness or lead to errors in the sequel. Process type changes, in turn, are continuously applied in order to adapt the PAIS to evolving business processes [RRD04b]. This process schema evolution might require the migration of already running process instances to the new schema as well. Important challenges in this context are to perform respective migrations on-the-fly, to guarantee their compliance with the new process schema, and to avoid performance penalties. The design of a process management technology which enables efficient process execution as well as application integration, but also provides support for the different kinds of changes, constitutes a big challenge. First, many trade-offs exist which have to be balanced. For example, complexity of dynamic changes increases with higher expressiveness of the used process modeling formalism. Second, complex interdependencies between the different features of such a system exist that must be carefully understood in order to avoid implementation gaps. Process schema evolution, for example, requires high-level change operations, versioning support, logging, on-the-fly migration of running process instances, worklist adaptations, etc. Third, even if the conceptual pillars of such a technology are well understood, it still is a quantum leap to implement respective features in an efficient, robust and integrated manner. In the AristaFlow project we have followed a holistic approach to tackle these challenges. Based on a conceptual framework for dynamic process changes, which we developed in an earlier project [ReDa98,RRD04b], we have designed the architecture of the ADEPT2 process management systems and prototypically implemented parts of it. In this context high process flexibility has been one of the primary design goals. This paper

5 summarizes our major design principles, gives insights into ADEPT2 system components, shows how change support features can be realized in an integrated and efficient manner within this architecture. Sect. 2 presents background information needed for the understanding of this paper. Sect. 3 summarizes architectural design goals and gives an overview of ADEPT2 components. Sect. 4 shows how ad-hoc changes and schema evolution are supported within this architecture. Sect. 5 discusses related work and Sect. 6 concludes with a summary. 2 Conceptual Framework for Dynamic Changes in ADEPT2 In the ADEPT project we have developed a conceptual framework for dynamic process changes [ReDa98,RRD04b]. We use this framework as conceptual pillar for the design of the ADEPT2 architecture as well. Basically, this change framework covers process changes at both the process instance and the process type level. While the former provide ad-hoc flexibility to users (e.g., to deal with exceptional situations), the latter are needed to evolve process implementations over time (process schema evolution). Ad-hoc flexibility. At the process instance level the ADEPT2 framework enables different kinds of ad-hoc deviations from the pre-modeled process template (e.g., to insert, delete, or move activities). Such ad-hoc changes never lead to unstable system behavior, i.e., none of the guarantees achieved by model checks at buildtime can be violated due to the dynamic change [ReDa98]. ADEPT2 offers a complete set of change operations for defining ad-hoc deviations at a high level of abstraction; e.g., authorized users may dynamically add new activities or jump forward in the flow of control. ADEPT2 ensures correctness based on formal pre-/post-conditions of these operations. All complexity associated with the adaptation of instance states, the re-mapping of input/output parameters of the affected application components, the problem of missing input data due to activity deletions, or the problem of deadlocks is hidden from users. Process schema evolution. To cope with business process changes, the ADEPT2 change framework allows for quick and efficient adaptations of process templates (i.e., the schema of a process type) in the following denoted as process schema evolution [RRD04b]. When updating a template, usually, related process instances are finished according to the old template version, while future instances are derived from the new one. However, such rigid approach is not adequate for long-running processes. The challenge is to propagate respective schema changes to the instances of this template as well; i.e., to migrate the instances to the new schema version of the process template. The on-the-fly migration of a collection of process instances to a modified process template must not violate correctness and consistency properties of these instances. Therefore, we need a general principle for arguing whether a process instance is compliant with an updated schema or not [RRD04a,RRD04b]. The ADEPT2 change framework uses a well-defined correctness criterion in this context, which is independent of the underlying process meta model and which is based on a relaxed notion of trace equivalence. This compliance criterion considers control as well as data flow changes,

6 ensures correctness of instances after migration, works correctly in connection with loop backs, and does not needlessly exclude instances from migrations. To enable efficient compliance checks, precise and easy to implement compliance conditions are defined for each change operation (see Fig. 1 for an example). Finally, ADEPT2 automatically adapts the states of compliant instances when migrating them to an updated schema. Figure 1: Process Schema Evolution (Conceptual View) When designing ADEPT2 we have tried to look at the picture as a whole. In particular, we have not considered the different kinds of changes in an isolated manner, but have investigated their interdependencies as well. For example, the correct handling of concurrent process changes is crucial in order to cover all practical cases. In this context, we have also investigated the question how to propagate process template changes to related process instances which are in different states and to which various ad-hoc modifications have been previously applied. For such biased instances, the current instance schema differs from the original template. Therefore, change propagation must be accomplished under appropriate correctness constraints to avoid inconsistencies. Again, ADEPT2 applies a comprehensive correctness principle in this context, which excludes state-related, structural, and semantical conflicts between concurrent changes. As example consider Fig. 1 where a new template version S is created from a process template S on which three instances are running. Instance I 1 can be migrated to the new process template version. By contrast, instances I 2 and I 3 cannot migrate. I 3 has progressed too far and is therefore not compliant with the updated template schema. Though there is no state conflict regarding I 2 this instance can also not migrate to S. I 2 has been individually modified by an ad-hoc change which is conflicting with the template change. More precisely, when propagating the process template change to I 2 a deadlock-causing cycle would occur. The ADEPT2 change framework provides efficient

7 means to detect such structural conflicts. Basic to this are sophisticated conflict tests. In summary, we restrict propagation of a process template change to those instances for which the change does not conflict with instance state or previous ad-hoc changes. So far we have focused on our conceptual change framework, which constitutes the basis for the proper design of the ADEPT2 system architecture. The next two sections illustrate how we realize this conceptual framework within the ADEPT2 architecture. 3 Design Principles and Components of the ADEPT2 Architecture The design of the ADEPT2 system has been governed by a number of well-defined principles in order to realize a sustainable and modular system architecture. The considered design principles consider general architectural aspects as well as conceptual issues concerning the different system features. Our overall goal is to enable ad-hoc flexibility and process schema evolution (cf. Section 2), together with other process support features, in an integrated way, while ensuring robustness, correctness, extensibility, performance and usability at the same time. This section summarizes major design principles, and gives an overview of the developed ADEPT2 architecture. 3.1 Major Design Principles General Design Principles High-end process management technology has a complexity comparable to database systems. To master this complexity a proper and modular system architecture is needed with clear separation of concerns and well-defined interfaces. This is fundamental to enable exchangeability of implementations, to foster extensibility of the architecture, and to realize autonomy and independency of the system components to a large extent. The overall system architecture must be layered. Thereby, components of lower layers must hide as much complexity as possible from upper layers. Basic components must be combinable in a flexible way to realize higher-level services like ad-hoc flexibility or process schema evolution. To achieve this ADEPT2 system components must be reusable in different context using available configuration facilities. Process management systems must provide sophisticated buildtime and runtime components to the different user groups. This includes tools for modeling, verifying and testing processes, components for monitoring and dynamically adapting process instances, or worklist clients. Many applications, however, require adapted user interfaces and functions to integrate process support features the best possible way. On the one hand, the provided user components should be configurable in a flexible way. On the other hand, all functions offered by the process management system should be made available via programming interfaces (APIs) as well. In particular, advanced system functions (e.g., ad-hoc changes or process schema evolution) must be accessible via API.

8 Implementation and maintenance of the different system components shall be as easy as possible. Therefore each component should be kept as simple as possible and only have access to the information needed for its proper functioning. Furthermore, communication details have to be hidden from component developers and independency from the used middleware components (e.g., database management systems) shall be realized Conceptual Design Goals To provide improve maintainability, extensibility, and usability of the different system components, the conceptual design of the ADEPT2 architecture is done carefully. Due to lack of space we do not give a complete overview of all considered design issues, but illustrate our main design philosophy by means of two examples: Reuse of code fragments: A major design goal for any complex system architecture is to avoid code redundancies. For example, components for process modeling, process schema evolution, and ad-hoc process changes are more or less based on the same set of change operations. This suggests to implement these operations by one separate system component, and to make this component configurable such that it can be reused in different context. Similar considerations can be made for other components (e.g., visualization, logging, versioning, or access control). This design principle does not only reduce code redundancies, but as a consequence results results in better maintainability, decreased cost of change, and reduced error rates. Extensibility of system functions. Generally, it must be possible to add new components to the overall architecture or to adapt existing ones. Ideally, such extensions or changes do not affect other components; i.e., their implementations must be robust with respect to such changes of other components. As example assume that the set of supported change operations shall be extended (e.g., to provide higher level change patterns to users). This change, however, must not affect the components realizing process schema evolution or ad-hoc flexibility. In ADEPT2, for example, we achieve this by mapping high-level change operations internally to a stable set of low-level change primitives (e.g., to add/delecte nodes). 3.2 Overview of the ADEPT2 Architecture and its Components Figure 2 depicts the overall architecture of the ADEPT2 process management system: BT/RT ControlCenter RT BT BT RT BT ProcessEditor OrgModelEditor Monitor Simulation/Test WorklistManager User interaction layer BT/RT RT RT ChangeOperations ExecutionManager RuntimeEnvironment Execution layer BT ActivityRepository BT RT RT RT(BT) RT(BT) ProcessRepository ProcessManager DataManager OrgModelManager ResourceManager Basic services layer LogManager Persistence (DBMS) Configuration & Registry Framework Communication Low-level services layer Figure 2: Basic Architecture of ADEPT2 (BT: Builtime; RT: Runtime)

9 Development of this architecture has been based on the design principles discussed in the previous section and on the experiences we gathered in a previous project [ReDa98]. ADEPT2 features a layered and service-oriented architecture. Each layer comprises different components offering services to upper-layer components. The first layer is a thin abstraction on SQL, enabling a DBMS independent implementation of persistency. The second layer is responsible for storing and locking different entities of the process management system (e.g., process templates and process instances). The third layer encapsulates essential process support functions including process enactment and change management. The topmost layer provides different buildtime and runtime tools to the user, including a process editor and a monitoring component Layer with Low-level Services This first layer comprises basic services which accomplish tasks like logging, persistency, configuration support, and communication. In particular, idiosyncrasies of the used communication services or storage management component are hidden from upperlayer components. This allows us to use different database systems or to exchange communication middleware without need for adapting implementations of upper layers. Configuration & Registry Framework: This component provides the basic infrastructure for configuring and managing the different system components of the ADEPT2 architecture, and for enabling inter-component communication. The framework allows to start, manage and terminate ADEPT2 components (e.g., ProcessManager) as well as their services (e.g., managing instance data), and to flexibly configure them for use in different context. In addition, a generic interface is provided to realize communication between ADEPT2 system components. Thereby, communication idiosyncrasies (e.g., concerning the used transport protocols, interaction styles or message formats) are hidden from the components using this interface. For example, it remains transparent for them whether the services they request are running locally or remotely. LogManager: ADEPT2 allows to log all relevant system events occurring at build- and runtime. This includes events like changes in the state of a process instance, changes of a process template or process instance, or access to process data elements. The LogManager provides a generic interface based on which upper-layer components can log the events they want. Persistency is handled by a separate sub-component of the LogManager, which hides details of the underlying storage management component. This allows us to use different persistency components (e.g., relational DBMS, XML files, flat files) without affecting implementation of upper layers Layer with Basic Services Components of this layer provide basic services for managing build- and runtime data of the process management system and for making it available to upper-layer components. ActivityRepository: This system component manages the activity templates based on which processes can be composed and executed. An activity template encapsulates all

10 information needed for executing the respective activity. In particular, it connects the activity to an application component. In this context, details of the used component model (e.g., Web services, Enterprise Java Beans, or (D)COM) are hidden from other ADEPT2 system components. Activity templates comprise additional information needed for proper activity execution. Based on it, for example, one can figure out whether the associated application component can be interrupted or aborted during runtime. ProcessRepository: This component manages process templates and their meta data. Similar to activity templates, process templates can be used as building blocks when composing a new process. Note that this allows for the realization of sub processes in an easy and intuitive manner. Further, ProcessRepository manages all versions of a process template and the information needed to derive them from each other (e.g. change logs). ProcessManager: While the above components manage buildtime data, the Process- Manager provides exactly those information needed for process enactment during runtime. This includes, for example, schemes of active process templates and in-progress process instances as well as current instance states. In particular, ProcessManager restores the specific schemes of instances to which ad-hoc changes were applied. As opposed to ProcessRepository, the ProcessManager has no knowledge about the evolution of process or activity templates; i.e., it does not know about the different template versions and their relations. This minimalism allows for efficient process enactment. As we discuss in Sect. 4, ProcessManager also deals with the migration of (compliant) process instances to a new process template version. It then has to interact with the ProcessRepository in order to retrieve the information required in this context (i.e., the schemes of the old and the updated process template and their difference). DataManager: For each process instance the DataManager maintains all process (relevant) data created during process enactment; i.e., all data elements and their values written by certain activities and read by other ones. Since process relevant data can become quite extensive and must be also accessible by external components, they are not maintained within the ProcessManager, but through a separate component. The DataManager keeps all versions of a data element and creates a log entry each time the data element is accessed (in cooperation with the LogManager). Finally, the DataManager allows for implementing access functions for user-defined data types. OrgModelManager: To define potential actors for an activity, this activity can be associated with an actor assignment. Such an assignment refers to organizational entities (e.g., units, project teams, roles, actors) or organizational relations (e.g., is-managerof ) as captured in an organizational model. The OrgModelManager maintains this organizational model and corresponding actors. It further accepts an actor assignment as input and delivers all actors qualifying for the respective expression as result. ResourceManager: Besides actors, additional resources are usually required during process execution. Examples include rooms, machines, and software licenses. ADEPT2 allows to model respective resources and considers this information during runtime as well (e.g., for determining bottlenecks in advance).

11 3.2.3 Execution Layer This layer comprises functional components of the ADEPT2 architecture which enable the correct enactment and adaptation of process instances and related activities. ChangeOperations: This component comprises the change operations that can be applied to processes in different context (e.g., to add, delete or move activities). First, change operations are required when modeling new process templates or adapting existing ones. In the latter case the respective schema changes can be propagated to already running process instances as well (cf. Sect. 2); i.e., we (logically) apply the operations at the instance level. The same applies with respect to ad-hoc instance changes (cf. Sect. 2). Note that in all these cases same or similar change operations are needed. Our basic design principles (cf. Sect. 3.1) therefore suggest to implement these change operations in a separate component to avoid code redundancies and to improve code maintainability. Each change operation realizes certain process graph transformations and is based on well-defined pre-/post-conditions in order to guarantee soundness of a process after its change. Note that these pre-/post-conditions are varying depending on whether the operation is applied at the type or instance level. ExecutionManager: This component coordinates the execution of process instances in an efficient and correct way. For example, it evaluates predicates on instance data to choose between alternative branches or to loop back during runtime. As a prerequisite the ExecutionManager needs information about the current schema as well as the state of respective instances. This information is provided by the ProcessManager, i.e., a lowerlayer component. For the ExecutionManager it remains transparent whether a process instance is still running on its original schema or on a modified schema (due to ad-hoc changes). When an activity is started the ExecutionManager provides the invoked application component with needed input data; when the activity completes, in turn, the ExecutionManager takes over its output data and forwards it to the DataManager. RuntimeEnvironment: This component provides the container for executing arbitrary applications. It retrieves the input data of the respective application from the DataManager and prepares it for application invocation; i.e., the invoked application component does not need any knowledge about the specific process context in which it is executed. After completing an application execution successfully, in turn, the container receives the application output data and forwards it to the DataManager. Besides this, the RuntimeEnvironment allows to start application components as well as to control their execution (e.g., to abort or suspend component execution). Finally, the Runtime- Environment informs the ExecutionManager when the execution of an application fails User Interaction Layer This layer comprises those components of the ADEPT2 architecture with which the different user groups interact. According to our basic philosophy all functions provided in this context are made available via APIs as well. ControlCenter: The ADEPT2 ControlCenter provides advanced buildtime and runtime components for user interactions. This includes the ProcessEditor, the OrgModelEditor,

12 Test Clients, and the Runtime Monitor. The ProcessEditor, for example, constitutes the major component for modeling process templates and for guaranteeing model correctness in this context (see Section 5). The TestClient, in turn, is a fully-fledged test environment for process execution. Unlike commonly known simulation tools, it runs on a lightweight instance of the process management system itself. As such, various execution modes between pure simulation and production mode are possible. WorklistManager: Finally, this component manages worklists. When an activity becomes activated the WorklistManager dissolves the corresponding actor assignment (in cooperation with the OrgModelManager) and updates the respective worklists. The WorklistManager also considers deputy arrangements in this context and allows to delegate work items to other users (even if the respective activity has been already started). Finally, escalation is supported if a selected work item is not processed within a pres-specified duration. 3.3 Summary All described components of the ADEPT2 architecture are loosely coupled enabling the easy exchange of component implementations. Furthermore, basic infrastructure services like storage management or the techniques used for inter-component communication can be easily exchanged. Additional plug-in interfaces are provided which allow for the extension of the core architecture, the data models, and the user interface. 4 Architectural Support for Dynamic Process Changes in ADEPT2 So far we have introduced the ADEPT2 conceptual framework for dynamic process changes and we have sketched the different layers of the ADEPT2 system architecture. In this section we give deeper insights into the realization of our dynamic change framework within this architecture. Taking process schema evolution as example, we show in which way the different architectural components contribute to realize this feature and how they interact with each other to do this in a proper and efficient way. 4.1 General procedure of a process schema evolution When considering the ADEPT2 system architecture from Fig. 2 the general procedure for performing a process schema evolution is as follows (note that this procedure is simplified and does not consider interactions with lower-level services): I: Preparation Phase 1. Load an existing process template into the ProcessEditor and adapt its schema S using the change operations provided by ChangeOperations. Exactly the same operator set can be applied as when modeling new process templates. 2. Record the modified process template (i.e., its target schema S ), together with the applied changes (i.e., the difference between S and S), in the ProcessRepository.

13 II: Schema Evolution Phase 3. Suspend (i.e. freeze) all process instances which are running on original process schema S and which shall be migrated to target schema S (if possible). 4. Load target schema S into ProcessManager. New instances are created based on S. 5. Select original schema S and target schema S in the ProcessRepository and transmit information about the schema difference Delta to the ProcessManager. 6. Based on Delta, for each frozen instance the ProcessManager checks whether it is compliant with target schema S or not. For this purpose the ProcessManager considers the current instance state as well as instance-specific deviations from original schema S. The latter is required to detect conflicts between ad-hoc changes and the ones captured by Delta. 7. The ProcessManager migrates all compliant instances to target schema S. Among other things this is accompanied by state adaptations of the instances to be migrated. 8. Where appropriate, adapted instances whose deviations conflict with process schema changes are adapted manually. This can be done using the components ProcessEditor and ChangeOperations. Again the migration is performed by the ProcessManager. This (simplified) procedure already demonstrates that multiple system components are needed to enable a feature like process schema evolution. 4.2 How do architectural components of ADEPT2 support process changes? For selected components of the ADEPT2 architecture we exemplarily show how they contribute to process flexibility in terms of schema evolution and ad-hoc change. We revisit the described design principles and discuss their benefits in the given context. LogManager: Ad-hoc changes of single process instances as well as template changes have to be logged. The interfaces provided by the LogManager are generic; i.e., both kinds of changes can be logged with this component. Thus the LogManager can be reused in different context, which improves maintainability of the ADEPT2 architecture. ProcessRepository: If process schema evolution and related instance migrations have to be supported we must maintain information about the different schema versions and their differences. This task is accomplished by the ProcessRepository. ProcessManager: This component is fundamental for the support of ad-hoc changes as well as process schema evolution, and is therefore discussed in more detail. First, the ProcessManager maintains the control data needed for proper and efficient execution of unchanged as well as changed process instances. Second, in the context of schema evolution this component migrates compliant process instances to the new schema. One major challenge is to efficiently represent template and instance objects within the ProcessManager. Unchanged instances, for example, should be represented in a nonredundant way. The ProcessManager keeps one instance object for each of these

14 unchanged instances, which captures instance-specific data (i.e., instance states) and refers to the original template schema (denoted as template object in the following). As example, consider instances I 1, I 3, I 4, and I 6 as depicted in Fig. 3. For handling instances with ad-hoc changes a more sophisticated approach is needed. In ADEPT2 we have developed the delta layer concept (see also [Rind06, RJR07]) for this purpose. It allows to efficiently represent the difference between template and instance objects. Simply speaking, the delta layer is represented by an object with same interfaces as the process template object and therefore the same methods can be applied. However, a delta layer object does not reflect the whole process schema, but only those parts which have been adapted due to instance-specific changes. As examples consider instances I 2 and I 5 as shown in Fig. 3. Together with the template object the delta layer object allows to restore the instance-specific process schema. The instance objects which belong to changed process instances do no longer reference the associated template object but the delta layer object. The delta layer object itself references the original template object and therefore keeps the link between instance object and original template [Rind06]. The delta layer concept is also useful in the context of process schema evolution. In particular, it allows to quickly check whether instance-specific adaptations and template changes are conflicting with each other. Since the ProcessManager supports ad-hoc changes anyway, schema evolution does not cause additional efforts when realizing this component. Note that we have decided to manage the different template versions and their deltas through a separate component (i.e., the ProcessRepository). This historical information is only needed in the context of process schema evolution and should therefore not affect normal process enactment. (Here we assume that template changes constitute exceptional cases in comparison to normal process enactment.) Figure 3: Managing Template and Instance Objects in the ProcessManager (Logical View) DataManager: To support instance-specific changes the DataManager must be able to dynamically add or delete process data elements. In this context, ADEPT2 deletes data elements and their values only logically from the process in order to ensure traceability. Regarding schema evolution no additional functionality is required.

15 OrgModelManager: The support of template as well as instance changes imposes security issues as the process management system becomes more vulnerable to misuse. Therefore, the application of respective changes must be restricted to authorized users. We have developed an access control framework for (dynamic) process changes [WRW05] which can be based on the information managed by the OrgModelManager (see Section 3); i.e., similar to actor assignments specified in the context of process activities, we can define access control constraints for process changes (see [WRW05] for details). However, this requires no extensions of the OrgModelManager component. Currently, we are working on an advanced framework for also evolving organizational models and related actor assignments in a controlled way [RiRe07]. This new feature, in turn, will require extensions of the OrgModelManager (e.g., the ability to maintain different versions of an organizational model or to adapt actor assignments semiautomatically when the underlying organizational model is changed). ChangeOperations: As mentioned this component allows to use the same change operations for modeling and adapting process templates as well as for defining instancespecific changes. As not all change operations might be needed in a given context, the set of accessible operations can be restricted. Further, this component allows to add new change operations through well-defined interfaces. Finally, respective extensions do not influence the implementation of any other ADEPT2 component. This fundemantal property is achieved by internally transforming high-level change operations into a set of stable, basic change primitives (e.g., add/delecte node or edge). When modeling process templates structural schema changes are enable by ChangeOperations. Regarding instance-specific changes, in addition, state adaptations become possible. Finally, process schema evolution requires the comparison of instancespecific changes with respective template changes. Complexity of these comparisons has been be significantly reduced using the delta layer concept (see above). Schema evolution and instance-specific changes can be based on similar mechanisms. While for instance-specific adaptations the change operations and the respective state adaptations are applied in sequence, for schema evolution the structural changes and the subsequent state adaptations are applied all at once. (In case of unchanged instances this only requires the re-linking of the instance objects to the new template object.). ExecutionManager: This component (partially) locks execution of running process instances when applying dynamic changes to them. After such a change the ExecutionManager re-evaluates the execution state of the modified instances in order to correctly proceed in the flow of control. WorklistManager: The ExecutionManager notifies the WorklistManager when new activities become activated or running activities are completed. The WorklistManager then updates the user worklists accordingly; i.e., it adds new work items to worklists when enabling activities and removes items from worklists when completing activities. Basically, the same functions can be used to adapt user worklists when applying ad-hoc changes or when migrating process instances to an updated template. RuntimeEnvironment: The RuntimeEnvironment only deals with the execution of single

16 activities and related application components respectively. Therefore no specific functions with respect to schema evolution or instance-specific changes are needed. ProcessEditor: To define template as well as instance-specific changes the ProcessEditor can be used (see Fig. 4). Among other features this component triggers the logging of the applied process change. Monitor: When changing an instance, which is currently displayed by the ADEPT2 monitor, the respective visualization is adapted automatically. 4.3 Proof-of-Concept Prototype We have implemented selected components of the described architecture in a proof-ofconcept prototype in order to demonstrate major flexibility concepts and their interplay. A detailed description can be found in [Göse07]. For example, Fig. 4 shows a screen of the ADEPT2 process editor, which constitutes the main system component for modeling and adapating process templates. This editor allows to quickly compose new process templates out of pre-defined activity templates, to guarantee schema correctness by construction and on-the-fly checks, and to integrate application components (e.g., web services) in a plug-and-play like fashion. Another user component is the ADEPT2 Test Client. It provides a fully-fledged test environment for process execution and change. Unlike common test tools, this client runs on a light-weight variant of the ADEPT2 process management system. As such, various execution modes between pure simulation to production mode become possible. Figure 4: Screenshot of ADEPT2 Process Editor

17 4.4 Summary We have discussed how schema evolution and instance-specific changes have been considered in the ADEPT2 architecture. On the one hand we have shown that this architecture is able to cope with the different kinds of (dynamic) process changes. On the other hand, the given illustrations make clear that the realization of schema evolution and ad-hoc changes within one system is far from being trivial. A proper system architecture with clear separation of concerns is one necessary prerequisite in this context. Another one is a solid conceptual framework. When designing the ADEPT2 proof-of-concept prototype we have considered both perspectives. 5 Related Work The need for flexible and easily adaptable PAIS has been recognized and several competing paradigms for addressing process changes and process flexibility have been developed (see [WRR07] for an overview). Examples include adaptive process management [MGR04,MSK07,ReDa98,RRD04a+b,Wesk00], case handling [AWG05,MWR08], declarative workflows [Pesi07,SSO05], and late binding/modeling [Adam06]. However, there is still a lack of comprehensive implementations of respective technologies offering sufficient support to be applied for experimental use. Furthermore, only little work has been done with respect to the architectural design of respective systems considering requirements like extensibility, scalability, adaptivity and maintainability. Like ADEPT2, CAKE2 [MSK07] and WASA2 [Wesk00] allow for structural run-time adaptations at the process instance level. Both approaches only support change primitives (i.e., adding / removing nodes and edges respectively), while ADEPT2 provides support for a wide range of high-level change operations [WRR07]. ADEPT2 is the only system which provides common support for both process schema evolution and ad-hoc changes [WRR07,RRD04a]. Worklets [Adam06] allow for the late binding of sub-processes following a rule-based approach. Except the dynamic replacement of activities no support for ad-hoc changes is provided. Similar considerations can be made for the case handling tool Flower [AWG05.MWR08], which allows to delete activities, but does not support other kinds of ad-hoc changes. Neither Worklets nor Flower have considered issues related to process schema evolution. Finally, among all these approaches ADEPT2 scores best in respect to high-level change operations [WRR07]. 6 Summary The ADEPT2 technology meets major requirements claimed for next generation process management technology. It provides advanced functionality to support process composition by plug & play of arbitrary application components, it enables ad-hoc flexibility for process instances without losing control, and it supports process schema evolution in a controlled and efficient manner. As opposed to other approaches all these

18 aspects work in interplay as well. For example, it is possible to propagate process schema changes to individually modified process instances or to dynamically compose processes out of existing application components. All in all such a complex system requires an adequate conceptual framework and a proper system architecture. ADEPT2 is one of the very few systems which has tried to consider both conceptual and architectural considerations in the design of a next generation process management system. References [Adam06] Adams, M., ter Hofstede, A.H.M., Edmond, D., v.d.aalst,w.m.: A Service-oriented Implementation of Dynamic Flexibility in Workflows. Proc. Coopis 06 (2006) [AWG05] van der Aalst, W.; Weske, M.; Grünbauer, D.: Case handling: A new paradigm for business process support., Data and Knowledge Engineering. 53 (2) (2005) 129{162. [DRK00] Dadam, P.; Reichert, M.; Kuhn, K.: Clinical Workflows - The Killer Application for Process-oriented Information Systems? Proc. 4th Int l Conf. on Business Information Systems (BIS 2000), Poznan, Poland, April 2000, pp [Göse07] Göser, K. et al.: Next-generation Process Management with ADEPT2. Proc. of the BPM 07 Demonstration Programm, Brisbane, Australia, September 2007, pp [LeRe07] Lenz, R.; Reichert, M.: IT Support for Healthcare Processes - Premises, Challenges, Perspectives, Data and Knowledge Engineering (1) (2007) 39{58. [MGR04] Müller; Greiner, U.; E. Rahm, AgentWork: A workow system supporting rule-based workow adaptation., DKE 51 (2) (2004) 223{256. [MSK07] Minor, M.; Schmalen, D.; Koldeho, A. workflow supported by a suspension. Proc. WETICE'07, [MWR08] Mutschler, B.; Weber, B.; Reichert, M..: Workflow Management versus Case Handling: Results from a Controlled Software Experiment. Proc. SAC 08 (to appear) [Pesi07] Pesic, M.; Schonenberg, M.;Sidorova, N.; van der Aalst, W.M.P.: Constraint-Based Workow Models: Change Made Easy., Proc. CoopIS'07, [ReDa98] Reichert, M.; Dadam, P.: ADEPTflex Supporting Dynamic Changes of Workflows Without Losing Control. J of Intelligent Information Systems, 10(2):93-129, 1998 [Rind06] Rinderle, S.; Reichert, M; Jurisch, M.; Kreher, U.: On Representing, Purging, and Utilizing Change Logs in Process Management Systems. Proc. 4th Int'l Conf. Business Process Management (BPM'06), Vienna, LNCS 4102, September 2006, pp [RiRe07] Rinderle, S.; Reichert, M.: A Formal Framework for Adaptive Access Control Models. Journal on Data Semantics IX, LNCS 4601, Springer 2007, pp [RJR07] Rinderle, S.; Jurisch, M.; Reichert, M.: On Deriving Net Change Information From Change Logs The DELTALAYER-Algorithm. Proc. BTW'07, 2007, pp [RRD04a] Rinderle, S.; Reichert, M.; Dadam, P.: Correctness Criteria For Dynamic Changes in Workflow Systems - A Survey. Data and Knowledge Engineering, 50(1):9-34 (2004) [RRD04b] Rinderle, S.; Reichert, M.; Dadam, P.: Flexible Support of Team Processes By Adaptive Workflow Systems. Distributed and Parallel Databases, 16(1): (2004) [SSO05] Sadiq, S.; Sadiq, W.; Orlowska, M.: A Framework for Constraint Specification and Validation in Flexible Workflows. Information Systems 30, (2005) [Wesk07] Weske, M.: Business Process Management, Springer, [Wesk00] Weske, M.: Workflow Management Systems: Formal foundation, Conceptual design, Implementation aspects. Habilitationsschrift, University of Münster, 2000 [WRW05] Weber, B. ; Reichert, M. ; Wild, W. ; Rinderle, S.: Balancing Flexibility and Security in Adaptive Process Management Systems. Proc. CoopIS'05, LNCS 3760, pp [WRR07] Weber, B.; Rinderle, S.; Reichert, M.: Change Patterns and Change Support Features in Process-Aware Information Systems. Proc. 19th Int'l Conf. on Advanced Inform. Sys. Engineering (CAiSE'07), LNCS 4495, Trondheim, June 2007, pp

Enabling Process Support for Advanced Applications with the AristaFlow BPM Suite

Enabling Process Support for Advanced Applications with the AristaFlow BPM Suite Enabling Process Support for Advanced Applications with the AristaFlow BPM Suite Andreas Lanz 1, Ulrich Kreher 2, Manfred Reichert 1, and Peter Dadam 1 1 Institute of Databases and Information Systems,

More information

Flexible and Adaptive. Challenges and Solutions

Flexible and Adaptive. Challenges and Solutions Flexible and Adaptive Process-oriented oriented Information Systems Challenges and Solutions Peter Dadam, Manfred Reichert Institute of Databases and Information Systems University of Ulm D-89081 Ulm,

More information

Process Change Patterns: Recent Research, Use Cases, Research Directions

Process Change Patterns: Recent Research, Use Cases, Research Directions Process Change Patterns: Recent Research, Use Cases, Research Directions Manfred Reichert 1 and Barbara Weber 2 1 University of Ulm, Germany, manfred.reichert@uni-ulm.de 2 University of Innsbruck, Austria,

More information

Ulmer Informatik-Berichte. Correct Configuration of Process Variants in Provop. Alena Hallerbach, Thomas Bauer, Manfred Reichert

Ulmer Informatik-Berichte. Correct Configuration of Process Variants in Provop. Alena Hallerbach, Thomas Bauer, Manfred Reichert Correct Configuration of Process Variants in Provop Alena Hallerbach, Thomas Bauer, Manfred Reichert Ulmer Informatik-Berichte Nr. 2009-03 Februar 2009 Ulmer Informatik Berichte Universität Ulm Fakultät

More information

Towards a Framework for the Agile Mining of Business Processes

Towards a Framework for the Agile Mining of Business Processes Towards a Framework for the Agile Mining of Business Processes Barbara Weber 1, Manfred Reichert 2, Stefanie Rinderle 3, and Werner Wild 4 1 Quality Engineering Research Group, University of Innsbruck,

More information

On Dealing With Semantically Conflicting Business Process Changes

On Dealing With Semantically Conflicting Business Process Changes On Dealing With Semantically Conflicting Business Process Changes Stefanie Rinderle Manfred Reichert Peter Dadam University of Ulm, Faculty of Computer Science, Dept. Databases and Information Systems

More information

A Formal Framework For Workflow Type And Instance Changes Under Correctness Constraints

A Formal Framework For Workflow Type And Instance Changes Under Correctness Constraints A Formal Framework For Workflow Type And Instance Changes Under Correctness Constraints Manfred Reichert, Stefanie Rinderle, Peter Dadam University of Ulm Faculty of Computer Science Dept. Databases and

More information

REQUIREMENTS FOR THE WORKFLOW-BASED SUPPORT OF RELEASE MANAGEMENT PROCESSES IN THE AUTOMOTIVE SECTOR

REQUIREMENTS FOR THE WORKFLOW-BASED SUPPORT OF RELEASE MANAGEMENT PROCESSES IN THE AUTOMOTIVE SECTOR REQUIREMENTS FOR THE WORKFLOW-BASED SUPPORT OF RELEASE MANAGEMENT PROCESSES IN THE AUTOMOTIVE SECTOR Ulrich Bestfleisch, Joachim Herbst DaimlerChrysler AG Research and Technology Data and Process Management

More information

Enterprise-Wide and Cross-Enterprise Workflow Management: Challenges and Research Issues for Adaptive Workflows

Enterprise-Wide and Cross-Enterprise Workflow Management: Challenges and Research Issues for Adaptive Workflows Enterprise-Wide and Cross-Enterprise Workflow Management: Challenges and Research Issues for Adaptive Workflows Manfred Reichert, Thomas Bauer, Peter Dadam Dept. Databases and Information Systems, University

More information

Service-Oriented Architecture and Software Engineering

Service-Oriented Architecture and Software Engineering -Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based

More information

Separating Compliance Management and Business Process Management

Separating Compliance Management and Business Process Management Separating Compliance Management and Business Process Management Elham Ramezani 1, Dirk Fahland 2, Jan Martijn van der Werf 2, and Peter Mattheis 1 1 Hochschule Furtwangen, Germany (ramezani Peter.Mattheis)@hs-furtwangen.de

More information

Data-Aware Service Choreographies through Transparent Data Exchange

Data-Aware Service Choreographies through Transparent Data Exchange Institute of Architecture of Application Systems Data-Aware Service Choreographies through Transparent Data Exchange Michael Hahn, Dimka Karastoyanova, and Frank Leymann Institute of Architecture of Application

More information

IT Support for Release Management Processes in the Automotive Industry

IT Support for Release Management Processes in the Automotive Industry In: Proc. of International Conf. on Business Process Management (BPM 2006), pp. 368-377. LNCS 4102. Springer Verlag. IT Support for Release Management Processes in the Automotive Industry Dominic Müller

More information

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q Number: S90-03A Passing Score: 800 Time Limit: 120 min File Version: 14.5 http://www.gratisexam.com/ Exam Code: S90-03A Exam Name:

More information

jeti: A Tool for Remote Tool Integration

jeti: A Tool for Remote Tool Integration jeti: A Tool for Remote Tool Integration Tiziana Margaria 1, Ralf Nagel 2, and Bernhard Steffen 2 1 Service Engineering for Distributed Systems, Institute for Informatics, University of Göttingen, Germany

More information

Computer Support for Agile Human-to-Human Interactions with Social Protocols

Computer Support for Agile Human-to-Human Interactions with Social Protocols Computer Support for Agile Human-to-Human Interactions with Social Protocols Willy Picard Poznań University of Economics, Department of Information Technologies, ul. Mansfelda 4, Poznań, Poland Willy.Picard@ue.poznan.pl,

More information

Title: Basic Concepts and Technologies for Business Process Management

Title: Basic Concepts and Technologies for Business Process Management Title: Basic Concepts and Technologies for Business Process Management Presenter: prof.dr. Manfred Reichert The economic success of an enterprise more and more depends on its ability to flexibly and quickly

More information

Towards Object-aware Process Support in Healthcare Information Systems

Towards Object-aware Process Support in Healthcare Information Systems Towards Object-aware Process Support in Healthcare Information Systems Carolina Ming Chiao, Vera Künzle, Manfred Reichert Institute of Databases and Information Systems Ulm University, Germany Email: {carolina.chiao,

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

A METHOD FOR REWRITING LEGACY SYSTEMS USING BUSINESS PROCESS MANAGEMENT TECHNOLOGY

A METHOD FOR REWRITING LEGACY SYSTEMS USING BUSINESS PROCESS MANAGEMENT TECHNOLOGY A METHOD FOR REWRITING LEGACY SYSTEMS USING BUSINESS PROCESS MANAGEMENT TECHNOLOGY Gleison Samuel do Nascimento, Cirano Iochpe Institute of Informatics, Federal University of Rio Grande do Sul, Porto Alegre,

More information

Conversational Case-Based Reasoning Support for Business Process Management

Conversational Case-Based Reasoning Support for Business Process Management Conversational Case-Based Reasoning Support for Business Process Management Barbara Weber Department of Computer Science, Univ. of Innsbruck Technikerstrasse 21a 6020 Innsbruck, Austria barbara.weber@uibk.ac.at

More information

Ulmer Informatik-Berichte. Dealing with Variability in Process-Aware Information Systems: Language Requirements, Features, and Existing Proposals

Ulmer Informatik-Berichte. Dealing with Variability in Process-Aware Information Systems: Language Requirements, Features, and Existing Proposals Dealing with Variability in Process-Aware Information Systems: Language Requirements, Features, and Existing Proposals Clara Ayora, Victoria Torres, Barbara Weber, Manfred Reichert, Vicente Pelechano Ulmer

More information

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999 The ConTract Model Helmut Wächter, Andreas Reuter November 9, 1999 Overview In Ahmed K. Elmagarmid: Database Transaction Models for Advanced Applications First in Andreas Reuter: ConTracts: A Means for

More information

Semantic Analysis of Flow Patterns in Business Process Modeling

Semantic Analysis of Flow Patterns in Business Process Modeling Semantic Analysis of Flow Patterns in Business Process Modeling Pnina Soffer 1, Yair Wand 2, and Maya Kaner 3 1 University of Haifa, Carmel Mountain 31905, Haifa 31905, Israel 2 Sauder School of Business,

More information

Service Oriented Architecture (SOA) An Introduction

Service Oriented Architecture (SOA) An Introduction Oriented Architecture (SOA) An Introduction Application Evolution Time Oriented Applications Monolithic Applications Mainframe Client / Server Distributed Applications DCE/RPC CORBA DCOM EJB s Messages

More information

Managing and Tracing the Traversal of Process Clouds with Templates, Agendas and Artifacts

Managing and Tracing the Traversal of Process Clouds with Templates, Agendas and Artifacts Managing and Tracing the Traversal of Process Clouds with Templates, Agendas and Artifacts Marian Benner, Matthias Book, Tobias Brückmann, Volker Gruhn, Thomas Richter, Sema Seyhan paluno The Ruhr Institute

More information

DISCOVERY AND ANALYSIS OF ACTIVITY PATTERN CO- OCCURRENCES IN BUSINESS PROCESS MODELS

DISCOVERY AND ANALYSIS OF ACTIVITY PATTERN CO- OCCURRENCES IN BUSINESS PROCESS MODELS DISCOVERY AND ANALYSIS OF ACTIVITY PATTERN CO- OCCURRENCES IN BUSINESS PROCESS MODELS Jean Michel Lau, Cirano Iochpe Informatics Institute, Federal University of Rio Grande do Sul, 9500 Bento Gonçalves

More information

Implementation of a Healthcare Process in Four Different Workflow Systems

Implementation of a Healthcare Process in Four Different Workflow Systems Implementation of a Healthcare Process in Four Different Workflow Systems R.S. Mans 1,2, W.M.P. van der Aalst 1, N.C. Russell 1, P.J.M. Bakker 2 1 Department of Information Systems, Eindhoven University

More information

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures Carsten Hentrich IBM Business Consulting Services, SerCon GmbH c/o IBM Deutschland GmbH Hechtsheimer

More information

Service Oriented Architecture 1 COMPILED BY BJ

Service Oriented Architecture 1 COMPILED BY BJ Service Oriented Architecture 1 COMPILED BY BJ CHAPTER 9 Service Oriented architecture(soa) Defining SOA. Business value of SOA SOA characteristics. Concept of a service, Enterprise Service Bus (ESB) SOA

More information

Informe Técnico / Technical Report

Informe Técnico / Technical Report Informe Técnico / Technical Report BP Variability Case Studies Development using different Modeling Approaches Clara Ayora, Victoria Torres, Vicente Pelechano Ref. #: ProS-TR-2011-03 Title: BP Variability

More information

Configuration Management Models in Commercial Environments

Configuration Management Models in Commercial Environments Technical Report CMU/SEI-91-TR-7 ESD-9-TR-7 Configuration Management Models in Commercial Environments Peter H. Feiler March 1991 Technical Report CMU/SEI-91-TR-7 ESD-91-TR-7 March 1991 Configuration Management

More information

An Approach for Supporting Ad-hoc Modifications in Distributed Workflow Management Systems

An Approach for Supporting Ad-hoc Modifications in Distributed Workflow Management Systems An Approach for Supporting Ad-hoc Modifications in Distributed Workflow Management Systems Thomas Bauer Dept. GR/EPD Daimler AG thomas.tb.bauer@daimler.com Manfred Reichert nformation Systems Group University

More information

E-Learning as a Web Service

E-Learning as a Web Service E-Learning as a Web Service Peter Westerkamp University of Münster Institut für Wirtschaftsinformatik Leonardo-Campus 3 D-48149 Münster, Germany pewe@wi.uni-muenster.de Abstract E-learning platforms and

More information

Dynamic Business Process Management based on Process Change Patterns

Dynamic Business Process Management based on Process Change Patterns 2007 International Conference on Convergence Information Technology Dynamic Business Process Management based on Process Change Patterns Dongsoo Kim 1, Minsoo Kim 2, Hoontae Kim 3 1 Department of Industrial

More information

Ensuring Business Process Compliance Along the Process Life Cycle

Ensuring Business Process Compliance Along the Process Life Cycle Ensuring Business Process Compliance Along the Process Life Cycle David Knuplesch and Manfred Reichert Abstract Business processes are subject to semantic constraints that stem from regulations, laws and

More information

Business Process Management with @enterprise

Business Process Management with @enterprise Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase

More information

Semantic Business Process Management Lectuer 1 - Introduction

Semantic Business Process Management Lectuer 1 - Introduction Arbeitsgruppe Semantic Business Process Management Lectuer 1 - Introduction Prof. Dr. Adrian Paschke Corporate Semantic Web (AG-CSW) Institute for Computer Science, Freie Universitaet Berlin paschke@inf.fu-berlin.de

More information

CS 565 Business Process & Workflow Management Systems

CS 565 Business Process & Workflow Management Systems CS 565 Business Process & Workflow Management Systems Professor & Researcher Department of Computer Science, University of Crete & ICS-FORTH E-mail: dp@csd.uoc.gr, kritikos@ics.forth.gr Office: K.307,

More information

On Applying Normalized Systems Theory to the Business Architectures of Information Systems

On Applying Normalized Systems Theory to the Business Architectures of Information Systems Baltic J. Modern Computing, Vol. 2 (204), No. 3, 32-49 On Applying Normalized Systems Theory to the Business Architectures of Information Systems Erki EESSAAR Department of Informatics, Tallinn University

More information

Multi-Agent Based Peer-to-Peer Workflow Management System

Multi-Agent Based Peer-to-Peer Workflow Management System Multi-Agent Based Peer-to-Peer Workflow Management System A. Aldeeb, K. Crockett and M. J. Stanton Department of Computing and Mathematics, Manchester Metropolitan University, Manchester, M1 5GD, UK {a.aldeeb,

More information

A Software Framework for Risk-Aware Business Process Management

A Software Framework for Risk-Aware Business Process Management A Software Framework for Risk-Aware Business Management Raffaele Conforti 1, Marcello La Rosa 1,2, Arthur H.M. ter Hofstede 1,4, Giancarlo Fortino 3, Massimiliano de Leoni 4, Wil M.P. van der Aalst 4,1,

More information

Supporting the BPM lifecycle with FileNet

Supporting the BPM lifecycle with FileNet Supporting the BPM lifecycle with FileNet Mariska Netjes Hajo A. Reijers Wil. M.P. van der Aalst Outline Introduction Evaluation approach Evaluation of FileNet Conclusions Business Process Management Supporting

More information

COMPUTER AUTOMATION OF BUSINESS PROCESSES T. Stoilov, K. Stoilova

COMPUTER AUTOMATION OF BUSINESS PROCESSES T. Stoilov, K. Stoilova COMPUTER AUTOMATION OF BUSINESS PROCESSES T. Stoilov, K. Stoilova Computer automation of business processes: The paper presents the Workflow management system as an established technology for automation

More information

eservices for Hospital Equipment

eservices for Hospital Equipment eservices for Hospital Equipment Merijn de Jonge 1, Wim van der Linden 1, and Rik Willems 2 1 Healthcare Systems Architecture Philips Research, The Netherlands 2 Strategy and Innovation Management/Technical

More information

A standards-based approach to application integration

A standards-based approach to application integration A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist Macnair@us.ibm.com Copyright IBM Corporation 2005. All rights

More information

Supporting Ad-Hoc Changes in Distributed Workflow Management Systems

Supporting Ad-Hoc Changes in Distributed Workflow Management Systems Supporting d-hoc Changes in Distributed Workflow Management Systems Manfred Reichert 1 and Thomas auer 2 1 nformaton Systems Group, University of Twente, The Netherlands m.u.reichertcs.utwente.nl 2 Dept.

More information

Monitoring BPMN-Processes with Rules in a Distributed Environment

Monitoring BPMN-Processes with Rules in a Distributed Environment Monitoring BPMN-Processes with Rules in a Distributed Environment Lothar Hotz 1, Stephanie von Riegen 1, Lars Braubach 2, Alexander Pokahr 2, and Torsten Schwinghammer 3 1 HITeC e.v. c/o Fachbereich Informatik,

More information

Supporting the Workflow Management System Development Process with YAWL

Supporting the Workflow Management System Development Process with YAWL Supporting the Workflow Management System Development Process with YAWL R.S. Mans 1, W.M.P. van der Aalst 1 Department of Mathematics and Computer Science, Eindhoven University of Technology, P.O. ox 513,

More information

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures Part I EAI: Foundations, Concepts, and Architectures 5 Example: Mail-order Company Mail order Company IS Invoicing Windows, standard software IS Order Processing Linux, C++, Oracle IS Accounts Receivable

More information

Software Life-Cycle Management

Software Life-Cycle Management Ingo Arnold Department Computer Science University of Basel Theory Software Life-Cycle Management Architecture Styles Overview An Architecture Style expresses a fundamental structural organization schema

More information

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm...

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm... 1 Table of Contents BUSINESS RULES CONCEPTS... 2 BUSINESS RULES... 2 RULE INFERENCE CONCEPT... 2 BASIC BUSINESS RULES CONCEPT... 3 BUSINESS RULE ENGINE ARCHITECTURE... 4 BUSINESS RULE ENGINE ARCHITECTURE...

More information

SOA Planning Guide. 2015 The Value Enablement Group, LLC. All rights reserved.

SOA Planning Guide. 2015 The Value Enablement Group, LLC. All rights reserved. SOA Planning Guide 1 Agenda q SOA Introduction q SOA Benefits q SOA Principles q SOA Framework q Governance q Measurement q Tools q Strategic (long term) View 2 Introduction to SOA q Service-oriented architecture

More information

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Ludmila Penicina Institute of Applied Computer Systems, Riga Technical University, 1 Kalku, Riga, LV-1658,

More information

Pattern Language Overview

Pattern Language Overview Service Integration Patterns for Invoking Services from Business Processes Carsten Hentrich CSC Deutschland Solutions GmbH Abraham-Lincoln-Park 1 65189 Wiesbaden, Germany e-mail: chentrich@csc.com Uwe

More information

Integration of Application Business Logic and Business Rules with DSL and AOP

Integration of Application Business Logic and Business Rules with DSL and AOP Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl

More information

API Architecture. for the Data Interoperability at OSU initiative

API Architecture. for the Data Interoperability at OSU initiative API Architecture for the Data Interoperability at OSU initiative Introduction Principles and Standards OSU s current approach to data interoperability consists of low level access and custom data models

More information

SOA for Healthcare: Promises and Pitfalls

SOA for Healthcare: Promises and Pitfalls SOA for Healthcare: Promises and Pitfalls Dennis B. Smith dbs@sei.cmu.edu SOA in Health Care Conference: Value in a Time of Change Chicago, IL USA June 3, 2009 Agenda Healthcare IT Challenges SOA: The

More information

Lightweight Data Integration using the WebComposition Data Grid Service

Lightweight Data Integration using the WebComposition Data Grid Service Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed

More information

Semantic Analysis of Business Process Executions

Semantic Analysis of Business Process Executions Semantic Analysis of Business Process Executions Fabio Casati, Ming-Chien Shan Software Technology Laboratory HP Laboratories Palo Alto HPL-2001-328 December 17 th, 2001* E-mail: [casati, shan] @hpl.hp.com

More information

Objectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation

Objectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation Objectives Distributed Databases and Client/Server Architecture IT354 @ Peter Lo 2005 1 Understand the advantages and disadvantages of distributed databases Know the design issues involved in distributed

More information

Adaptive Workflow Management in the Cloud Towards a Novel Platform as a Service

Adaptive Workflow Management in the Cloud Towards a Novel Platform as a Service Adaptive Workflow Management in the Cloud Towards a Novel Platform as a Service Mirjam Minor, Ralph Bergmann, Sebastian Görg Business Information Systems II University of Trier 54286 Trier, Germany {minor

More information

Analyzing the Scope of a Change in a Business Process Model

Analyzing the Scope of a Change in a Business Process Model Analyzing the Scope of a Change in a Business Process Model Pnina Soffer Haifa University, Carmel Mountain, Haifa 31905, Israel spnina@is.haifa.ac.il Abstract. Organizations often change their business

More information

A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development

A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development A Knowledge-based Product Derivation Process and some Ideas how to Integrate Product Development (Position paper) Lothar Hotz and Andreas Günter HITeC c/o Fachbereich Informatik Universität Hamburg Hamburg,

More information

Di 6.1a. Warum naive SOA scheitert Ein Erfahrungsbericht. Adam Bien. January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich

Di 6.1a. Warum naive SOA scheitert Ein Erfahrungsbericht. Adam Bien. January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich Di 6.1a January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich Warum naive SOA scheitert Ein Erfahrungsbericht Adam Bien How To Kill a SOA Project Early? [Warum naive SOA scheitert]

More information

Service Computing: Basics Monica Scannapieco

Service Computing: Basics Monica Scannapieco Service Computing: Basics Monica Scannapieco Generalities: Defining a Service Services are self-describing, open components that support rapid, low-cost composition of distributed applications. Since services

More information

CRISTAL: Collection of Resource-centrIc Supporting Tools And Languages

CRISTAL: Collection of Resource-centrIc Supporting Tools And Languages CRISTAL: Collection of Resource-centrIc Supporting Tools And Languages Cristina Cabanillas, Adela del-río-ortega, Manuel Resinas, and Antonio Ruiz-Cortés Universidad de Sevilla, Spain {cristinacabanillas,

More information

Service-Oriented Architectures

Service-Oriented Architectures Architectures Computing & 2009-11-06 Architectures Computing & SERVICE-ORIENTED COMPUTING (SOC) A new computing paradigm revolving around the concept of software as a service Assumes that entire systems

More information

Software Service Engineering Architect s Dream or Developer s Nightmare?

Software Service Engineering Architect s Dream or Developer s Nightmare? Software Service Engineering Architect s Dream or Developer s Nightmare? Gregor Hohpe Google, 1600 Amphitheatre Parkway, Mountain View, CA 94043 gregor@hohpe.com Abstract. Architectural principles such

More information

BPCMont: Business Process Change Management Ontology

BPCMont: Business Process Change Management Ontology BPCMont: Business Process Change Management Ontology Muhammad Fahad DISP Lab (http://www.disp-lab.fr/), Université Lumiere Lyon 2, France muhammad.fahad@univ-lyon2.fr Abstract Change management for evolving

More information

NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0

NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0 NASCIO EA Development Tool-Kit Solution Architecture Version 3.0 October 2004 TABLE OF CONTENTS SOLUTION ARCHITECTURE...1 Introduction...1 Benefits...3 Link to Implementation Planning...4 Definitions...5

More information

Business Process Management In An Application Development Environment

Business Process Management In An Application Development Environment Business Process Management In An Application Development Environment Overview Today, many core business processes are embedded within applications, such that it s no longer possible to make changes to

More information

Embedded Software Development with MPS

Embedded Software Development with MPS Embedded Software Development with MPS Markus Voelter independent/itemis The Limitations of C and Modeling Tools Embedded software is usually implemented in C. The language is relatively close to the hardware,

More information

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework

More information

Oracle Application Development Framework Overview

Oracle Application Development Framework Overview An Oracle White Paper June 2011 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services

More information

Software Development Kit

Software Development Kit Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

More information

Open S-BPM: Goals and Architecture

Open S-BPM: Goals and Architecture Open S-BPM: Goals and Architecture Albert Fleischmann Werner Schmidt Table of Content 1 Introduction... 2 2 Mission, Vision and Objectives... 2 3 Research and Development Areas... 3 4 Open S-BPM Architecture...

More information

A Business Process Services Portal

A Business Process Services Portal A Business Process Services Portal IBM Research Report RZ 3782 Cédric Favre 1, Zohar Feldman 3, Beat Gfeller 1, Thomas Gschwind 1, Jana Koehler 1, Jochen M. Küster 1, Oleksandr Maistrenko 1, Alexandru

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

More information

Requirements engineering

Requirements engineering Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and

More information

Total Exploration & Production: Field Monitoring Case Study

Total Exploration & Production: Field Monitoring Case Study Total Exploration & Production: Field Monitoring Case Study 1 Summary TOTAL S.A. is a word-class energy producer and provider, actually part of the super majors, i.e. the worldwide independent oil companies.

More information

Capturing Variability in Business Process Models: The Provop Approach

Capturing Variability in Business Process Models: The Provop Approach Capturing Variability in Business Process Models: The Provop Approach Alena Hallerbach 1, Thomas Bauer 1, and Manfred Reichert 2 1 Group Research and Advanced Engineering, Daimler AG, Ulm, Germany {alena.hallerbach,thomas.tb.bauer}@daimler.com

More information

Customer Bank Account Management System Technical Specification Document

Customer Bank Account Management System Technical Specification Document Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6

More information

The Declarative Approach to Business Process Execution: An Empirical Test

The Declarative Approach to Business Process Execution: An Empirical Test The Declarative Approach to Business Process Execution: An Empirical Test Barbara Weber 1,HajoA.Reijers 2, Stefan Zugal 1, and Werner Wild 3 1 Quality Engineering Research Group, University of Innsbruck,

More information

Privacy-Aware Scheduling for Inter-Organizational Processes

Privacy-Aware Scheduling for Inter-Organizational Processes Privacy-Aware Scheduling for Inter-Organizational Processes Christoph Hochreiner Distributed Systems Group, Vienna University of Technology, Austria c.hochreiner@infosys.tuwien.ac.at Abstract Due to the

More information

JOURNAL OF OBJECT TECHNOLOGY

JOURNAL OF OBJECT TECHNOLOGY JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7, No. 8, November-December 2008 What s Your Information Agenda? Mahesh H. Dodani,

More information

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT CONTENTS 1. THE NEED FOR DATA GOVERNANCE... 2 2. DATA GOVERNANCE... 2 2.1. Definition... 2 2.2. Responsibilities... 3 3. ACTIVITIES... 6 4. THE

More information

An Object Model for Business Applications

An Object Model for Business Applications An Object Model for Business Applications By Fred A. Cummins Electronic Data Systems Troy, Michigan cummins@ae.eds.com ## ## This presentation will focus on defining a model for objects--a generalized

More information

Scientific versus Business Workflows

Scientific versus Business Workflows 2 Scientific versus Business Workflows Roger Barga and Dennis Gannon The formal concept of a workflow has existed in the business world for a long time. An entire industry of tools and technology devoted

More information

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis

Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Verifying Business Processes Extracted from E-Commerce Systems Using Dynamic Analysis Derek Foo 1, Jin Guo 2 and Ying Zou 1 Department of Electrical and Computer Engineering 1 School of Computing 2 Queen

More information

The Service Revolution software engineering without programming languages

The Service Revolution software engineering without programming languages The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)

More information

What is BPM? Software tools enabling BPM

What is BPM? Software tools enabling BPM What is BPM? BPM, or Business Process Management, is a technology, but it is also more than that. Broadly speaking, one can consider BPM as a management discipline in which processes are valued as assets

More information

Towards a Comprehensive Design-time Compliance Management: A Roadmap

Towards a Comprehensive Design-time Compliance Management: A Roadmap Towards a Comprehensive Design-time Management: A Roadmap Amal Elgammal, Ph.D. Candidate, Tilburg, The Netherlands, a.f.s.a.elgammal@uvt.nl Oktay Turetken, Post-doc Researcher, Tilburg, The Netherlands,

More information

BPM and Simulation. A White Paper. Signavio, Inc. Nov 2013. Katharina Clauberg, William Thomas

BPM and Simulation. A White Paper. Signavio, Inc. Nov 2013. Katharina Clauberg, William Thomas BPM and Simulation A White Paper Signavio, Inc. Nov 2013 Katharina Clauberg, William Thomas Table of Contents 1. Executive Summary... 3 2. Setting the Scene for Process Change... 4 3. Identifying the Goals

More information

Workflows in Dynamic Development Processes

Workflows in Dynamic Development Processes Workflows in Dynamic Development Processes Thomas Heer, Christoph Briem, and René Wörzberger RWTH Aachen University, Department for Computer Science 3, Ahornstr. 55, Aachen 52074, Germany, http://se.rwth-aachen.de,

More information

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

PRESERVING THE CONTEXT OF INTERRUPTED BUSINESS PROCESS ACTIVITIES

PRESERVING THE CONTEXT OF INTERRUPTED BUSINESS PROCESS ACTIVITIES PRESERVING THE CONTEXT OF INTERRUPTED BUSINESS PROCESS ACTIVITIES Sarita Bassil 1, Stefanie Rinderle 2, Rudolf Keller 3, Peter Kropf 4, and Manfred Reichert 5 1 DIRO, University of Montreal, C.P. 6128,

More information

SOA Success is Not a Matter of Luck

SOA Success is Not a Matter of Luck by Prasad Jayakumar, Technology Lead at Enterprise Solutions, Infosys Technologies Ltd SERVICE TECHNOLOGY MAGAZINE Issue L May 2011 Introduction There is nothing either good or bad, but thinking makes

More information

By Ramon Smitherman, Dream Catchers, Inc. Executive Summary Many companies today are in the mode of buying technology and then figuring out how to adopt their operations to fit its processing requirements.

More information