Mediator approach to direct workflow simulation

https://doi.org/10.1016/j.simpat.2010.01.009Get rights and content

Abstract

This paper presents a direct workflow simulation method with which the future enactment service processes of a BPM system can be simulated directly (i.e., without a model conversion). The proposed method may easily be implemented on a commercial BPM system by plugging in a couple of software modules (no internal modification of the BPM system is required). Previous researches on workflow simulation relied mostly on conversion methods in which process definition models (PDMs) are converted to simulation models and the simulation is performed by a separate simulator. More recently, a direct workflow simulation method based on the concept of listener was proposed. However, with the listener approach, (1) some internal modification of the BPM system is required, (2) PDMs have to be modified slightly, and (3) reliable simulation is not guaranteed. The direct workflow simulation approach proposed in this paper, which we call the mediator approach, is free of these shortcomings. Moreover, the mediator approach is suitable for workflow simulation involving multiple BPM systems. In a ‘direct’ workflow simulation, (1) the work-list handler of each participant is replaced by a participant simulator, (2) simulation is carried out by the workflow engine of the BPM system, and (3) a software module called synchronization manager (mediator or listener) handles time synchronization during simulation. In this paper, the architecture and detailed logic of the mediator are described as DEVS models. The behaviors of participant simulators are also described as DEVS models. The proposed workflow simulation method has been implemented on a commercial BPM system as well as on an academic BPM system, and an illustrative workflow simulation example is provided.

Introduction

According to the Workflow Management Coalition, the workflow management system (WfMS) is a software system that completely defines and automatically executes workflows in order to manage the actual flow of work so that the right work is done at the right time with the right information by the right person in the organization [10]. Recently, a WfMS used for business process management (BPM) is often called a BPM system, with an emphasis on orchestrating operational business processes that are driven by explicit process designs [2], [9]. Along with this development is an increased awareness of need for workflow simulation in BPR (business process reengineering) [9], and the simulation is regarded as a key function of a BPM system [2], [3].

The software module of a BPM system in charge of managing the actual flow of work is called a workflow engine or enactment server (we use the latter term throughout the rest of the paper), the service provided by the enactment server to automatically execute workflows is called enactment service, and the people involved with enactment service are called participants. An explicit model of business processes to be managed is called PDM (process definition model), and an instance of PDM being executed is called process instance. A process instance is a directed graph with each node representing an activity to be performed by a participant. Activities are sent to the participants via work-list handlers.

The process life cycle of BPM consists of a series of phases [9]: Discovery (clarification of how business processes work), design (building PDMs for business processes), execution (providing enactment services), operation (interacting with participants while monitoring the business processes), optimization (improving PDM), and analysis phases. There may be three levels of feedback in the BPM life cycle: (1) feedback from the operation phase to the execution phase at run time, (2) feedback from the optimization phase to the design phase at build time, and (3) feedback from the analysis phase to the discovery phase. Workflow simulation corresponding to each level of feedback is referred to as run-time workflow simulation (for dynamic rescheduling of process instances), build-time workflow simulation (for improving PDM), and BPR workflow simulation, respectively. A BPM system equipped with these feedback mechanisms (i.e., workflow simulations) is called a closed-loop BPM system [34]. Often the terms workflow simulation and BPM simulation are used interchangeably [18].

Early researches on workflow simulation focused mostly on BPR [17], [19], [20], [21], [23], [24], [33], where general business processes or workflows were simulated. These researches had little to do with BPM systems. Another line of workflow simulation researches focused on validating and/or optimizing PDMs of a BPM system, where the PDM is converted into a formal model such as Petri-net and DEVS or to a proprietary simulation language and then simulation is carried out with the converted model [1], [14], [15], [26], [28], [30], [31], [32]. The build-time simulation concept was also employed in animation-based debugging of software systems [6]. With this conversion approach, there may be some information loss during the conversion, and the participants’ behaviors may not be easily converted.

Recently, the authors’ group presented a listener approach to direct workflow simulation with which process instances, together with the behaviors of participants, can be simulated directly (i.e., without a model conversion) using the enactment service mechanism of a BPM system [22], [29]. In a direct workflow simulation, (1) the work-list handler of each participant is replaced by a participant simulator, (2) simulation is carried out by the enactment server of the BPM system, and (3) a software module called synchronization manager handles time synchronization during simulation. However, with the listener approach, (1) some internal modification of the BPM system is required, (2) PDMs have to be modified slightly, and (3) reliable simulation is not guaranteed. More details of the listener approach will be given in the next section.

This paper proposes a different method of direct workflow simulation in which the synchronization manager ‘mediates’ the communications between the enactment server and participant simulators. The direct workflow simulation approach proposed in this paper, which we call a mediator approach, is free of all the shortcomings of the listener approach. Another advantage of the mediator approach is that it is suitable for workflow simulation involving multiple BPM systems. In this paper, details of the mediator approach are described employing the DEVS formalism [13], and an illustrative implementation using a commercial BPM system [1] is presented.

The rest of the paper is organized as follows. In order to make the paper self-contained, basics of enactment service mechanism and a review of previous works are presented in the next section. DEVS models of the mediator approach are presented in Section 3 and an implementation example is given in the section that follows. Conclusion and discussions are provided in the final section.

Section snippets

Enactment service mechanism of a BPM system

As the proposed workflow simulation method makes use of the enactment service mechanism of the BPM system, basics of enactment service are briefly described using Fig. 1. For each instance of workflow, a process instance (PI) is created from its process definition model (PDM). Depicted in Fig. 1 is a PI consisting of seven activities including start and end activities (note that there may be a large number of PIs in the enactment server). Right after the completion of activity W1, two

Mediator approach to direct workflow simulation

Now we present a novel approach to direct workflow simulation that overcomes all of the shortcomings of the listener approach mentioned above. Namely, with the proposed approach (1) no internal modification of the BPM system is required, (2) existing PDMs and process instances are used as the simulation model without any modification, (3) correct simulation is guaranteed, and (4) a direct workflow simulation may be performed with multiple BPM systems. Presented in this section are an overview

Implementation of build-time workflow simulator

The build-time workflow simulator depicted in Fig. 7(a) has been implemented as a prototype workflow simulator using a commercial BPM system [1] and an academic BPM system [34] both of which are in compliance with the WfMC standards [11]. The software structure of the prototype simulator is shown in Fig. 9. The synchronization manager and single and group participant simulators have been developed under a Microsoft .NET Framework 3.5 environment using the C# programming language, and they are

Conclusions and discussion

In this paper, we proposed a mediator approach to direct workflow simulation so that software modules required for workflow simulation can be plugged in an existing BPM system without any modification of workflow engine. In the proposed approach, the synchronization manager mediates all interactions between the enactment server and the participant simulators. Detailed DEVS models of the enactment server and (single and group) participant simulators are presented. Also presented are

Acknowledgment

This work was supported by the Korea Science and Engineering Foundation (KOSEF): No. R01-2006-000-11118-0.

References (35)

  • J.L. Peterson

    Petri Net Theory and the Modeling of Systems

    (1981)
  • D.L. Schruben et al.

    Event Graph Modeling Using SIGMA

    (2001)
  • H. Smith et al.

    Business Process Management: The Third Wave

    (2003)
  • WfMC-TC-00-1003, The Workflow Reference Model, Workflow Management Coalition, 1995....
  • WfMC-TC-1009, Workflow Management Application Programming Interface Specification, Workflow Management Coalition, 1998....
  • WfMC-TC-1025, Process Definition Interface: XML Process Definition Language, Workflow Management Coalition, 2008....
  • B. Zeigler et al.

    Theory of Modeling and Simulation

    (2000)
  • Cited by (8)

    • Business process management-based job assignment in ship hull production design

      2014, Ocean Engineering
      Citation Excerpt :

      This is demonstrated by the approval process: this process is accomplished when different participants confirm in sequential order (e.g., staff, assistant manager, manager, and director). When BPM is adopted, not only process execution and management using BPMS but also other functionalities are possible; these include business activity monitoring (BAM) for grasping work progress in an instant and rescheduling of job assignments or load balancing during run-time, the rearrangement and optimization of the process definition model (PDM) during build-time, and business process reengineering (BPR) to improve the business process itself after log analysis for certain periods of time (Lee et al., 2010). When a ship is ordered, the following processes are necessary for building a ship in a shipyard: basic design, detail design, fabrication including steel cutting, assembly, erection, launch, trial test, and delivery (Lamb, 2003; Storch et al., 2007).

    • e-Design: Computer-aided engineering design

      2015, e-Design: Computer-Aided Engineering Design
    • Product Design Modeling using CAD/CAE: The Computer Aided Engineering Design Series

      2014, Product Design Modeling using CAD/CAE: The Computer Aided Engineering Design Series
    View all citing articles on Scopus
    View full text