Formalization and verification of event-driven process chains

https://doi.org/10.1016/S0950-5849(99)00016-6Get rights and content

Abstract

For many companies, business processes have become the focal point of attention. As a result, many tools have been developed for business process engineering and the actual deployment of business processes. Typical examples of these tools are Business Process Reengineering (BPR) tools, Enterprise Resource Planning (ERP) systems, and Workflow Management (WFM) systems. Some of the leading products, e.g. SAP R/3 (ERP/WFM) and ARIS (BPR), use Event-driven Process Chains (EPCs) to model business processes. Although the EPCs have become a widespread process modeling technique, they suffer from a serious drawback: neither the syntax nor the semantics of an EPC are well defined. In this paper, this problem is tackled by mapping EPCs (without connectors of type ∨) onto Petri nets. The Petri nets have formal semantics and provide an abundance of analysis techniques. As a result, the approach presented in this paper gives formal semantics to EPCs. Moreover, many analysis techniques are available for EPCs. To illustrate the approach, it is shown that the correctness of an EPC can be checked in polynomial time by using Petri-net-based analysis techniques.

Introduction

As a response to increased competitive pressure in the global marketplace, enterprises are looking to improve the way they are running their businesses. The term business process engineering [1] subsumes the set of principles, activities, and tools to support improvements of business processes. At the moment many software tools are available to support and enable business process engineering efforts. Typical examples of these tools are:

  • Business Process Reengineering (BPR) tools

    A BPR tool can be used to model and analyze business processes. The visual representation of processes and the ability to evaluate alternatives support the (re)engineering of business processes.

  • Enterprise Resource Planning (ERP) systems

    ERP systems such as SAP R/3, BAAN, PeopleSoft, and Oracle automate manufacturing processes, organize accountants’ books, and streamline corporate departments like human resources. An explicit representation of the business processes is used as a starting point for configuring these systems.

  • Workflow Management (WFM) systems

    A WFM system is a generic software tool, which allows for the definition, execution, registration and control of workflows (cf. Ref. [2], [3]). In essence, the WFM system is a generic building block to support business processes.

BPR tools support the ‘re-thinking’ of business processes, ERP and WFM systems are the software applications that make these reengineered processes possible. Each of these tools requires an explicit representation of the business processes at hand. Most of the business process modeling techniques that are used, are vendor specific, i.e. they are supported by just one tool. Only a few tools use a generic technique such as Petri nets, SADT, IDEF, or EPC.

In this paper, we focus on the process modeling technique used by some of the leading tools in the field of business process engineering. Process models made with this technique are called Event-driven Process Chains (EPCs), (cf. Ref. [4]). EPCs are used in tools such as SAP R/3 (SAP AG), ARIS (IDS Prof. Scheer GmbH), LiveModel/Analyst (Intellicorp Inc.), and Visio (Visio Corp.). SAP R/3 [5], [6] is the leading ERP-system and is used in more that 7500 companies in 85 countries. ARIS [7] leads BPR tool market (7000 licenses). LiveModel/Analyst and Visio are also examples of BPR tools based on EPCs.

EPCs have become a widespread process modeling technique, because of the success of products such as SAP R/3 and ARIS. Unfortunately, neither the syntax nor the semantics of an EPC are well defined. As a result, an EPC may be ambiguous. Moreover, it is not possible to check the model for consistency and completeness. These problems are serious, because EPCs are used as the specification of business processes and need to be processed by the ERP and WFM systems. The absence of formal semantics also hinders the exchange of models between tools of different vendors and prevents the use of powerful analytical techniques.

In this paper, these problems are tackled by an approach based on Petri nets (cf. [8]). The Petri net formalism is a popular and powerful process modeling technique for the representation of processes which exhibit concurrency, parallelism, synchronization, non-determinism, and mutual exclusion. The building blocks used in an EPC (events, functions and connectors) are close to the building blocks used in a Petri net (places and transitions). In fact, EPCs correspond to a subclass of Petri nets. We will show that it is possible to map an EPC onto a Petri net. This way, we can use the Petri net formalism to give formal semantics to EPCs. Moreover, we can use advanced Petri-net-based techniques to analyze EPCs. To show the potential of this approach, we present a technique to verify the correctness of an EPC. For this purpose, we use the so-called soundness property introduced in Ref. [9]. An EPC is sound if, for any case, the process terminates properly, i.e. termination is guaranteed, there are no dangling references, and deadlock and livelock are absent. We will show that for EPCs the soundness property can be checked in polynomial time. Throughout this paper, we consider EPCs without connectors of type ∨ (i.e. OR connectors). The semantics of a join connector of type ∨ is not clear and subject to multiple interpretations. Therefore, we discuss the problems associated to such a connector and review the possible solutions.

This paper builds on the results presented in [9], [10]. The application of Petri nets to workflow modeling is also described in [11], [12], [13], [14], [15]. In Germany, several research groups have been working on the formalization of EPCs [16], [17], [18], [19], [20], [21]. Researchers of both the University of Hamburg [17], [18] and the University of Saarland [16] have investigated the relation between the EPCs and the Petri nets. There are several differences between these approaches and the approach described in this paper. First of all, in this paper, the translation to Petri nets is formalized. Secondly, our approach is based on the classical Petri net instead of a high-level variant. Finally, we provide tools and techniques to check the soundness property in polynomial time.

Section snippets

Event-driven process chains

EPCs are an intuitive graphical business process description language introduced by Keller, Nüttgens and Scheer in 1992 [4]. The language is targeted to describe processes on the level of their business logic, not necessarily on the formal specification level, and to be easy to understand and use by business people. The methodology inherited the name from the diagram type shown in Fig. 1. Such a diagram shows the control flow structure of the process as a chain of events and functions, i.e. an

Formalization of EPCs

Not every diagram composed of events, functions and connectors is a correct EPC. For example, it is not allowed to connect two events to each other (cf. Ref. [4]). Unfortunately, a formal syntax for EPCs is missing. In this section, we give a formal definition of an EPC. This definition is based on the restrictions described in Ref. [4] and imposed by tools such as ARIS and SAP R/3. This way we are able to specify the requirements that an EPC should satisfy.

Definition 1 Event-driven process chain (1)

An EPC is a five-tuple (E, F, C, T, A

Mapping EPCs onto Petri nets

Definition 1, Definition 4 only relate to the syntax of an EPC and not to the semantics. In this section, we define the semantics in terms of a Petri net. As Petri nets have formal semantics, it is sufficient to map EPCs onto the Petri nets to specify the behavior unambiguously.

Note that some users may have problems with these formal semantics. They are used to drawing diagrams, which only give an intuitive description: the actual behavior is approximated by hiding details and exceptions. A

Verification of EPCs

The correctness, effectiveness, and efficiency of the business processes supported by ERP or WFM systems are vital to the organization. An information system, which is based on erroneous EPCs may lead to serious problems such as angry customers, back-log, damage claims, and loss of goodwill. Flaws in the design of an EPC may also lead to high throughput times, low service levels, and a need for excess capacity. Therefore, it is important to analyze the EPC before it is put into production. In

Connectors of type ∨

In the second half of this paper (i.e. 4 Mapping EPCs onto Petri nets, 5 Verification of EPCs), we abstracted from ∨-connectors. The reason for this abstraction is the fact that the semantics of join connectors of type ∨ are not clear. Consider for example the EPC shown in Fig. 9. If event X holds, function A or B needs to be executed. There are three possibilities: (1) function A, (2) function B, or (3) function A and function B are executed. Although the intention of the construct shown in

Conclusion

In this paper, we have presented formal semantics for EPCs. Although EPCs have become a widespread process modeling technique, such a basis was missing. By mapping EPCs onto Petri nets, we have tackled this problem. In addition, many analysis techniques have become available for EPCs. This has been demonstrated by a decision procedure, which verifies the correctness (i.e. soundness) in polynomial time. The results presented in this paper give designers a handle to construct correct EPCs.

The

References (28)

  • A.W. Scheer

    Business Process Engineering, Reference Models for Industrial Enterprises

    (1994)
  • S. Jablonski et al.

    Workflow Management: Modeling Concepts, Architecture, and Implementation

    (1996)
  • G. Keller, M. Nüttgens, A.W. Scheer, Semantische Processmodellierung auf der Grundlage Ereignisgesteuerter...
  • H. Bancroft, H. Seip, A. Sprengel, Implementing SAP R/3: how to introduce a large system into a large organization,...
  • J. Hernandez, The SAP R/3 Handbook,...
  • A.W. Scheer

    Business Process Engineering, ARIS-Navigator for Reference Models for Industrial Enterprises

    (1994)
  • T. Murata

    Petri nets: properties, analysis and applications

    Proceedings of the IEEE

    (1989)
  • W.M.P. van der Aalst

    Verification of workflow nets

  • W.M.P. van der Aalst

    The application of Petri nets to workflow management

    The Journal of Circuits, Systems and Computers

    (1998)
  • W.M.P. van der Aalst

    Three good reasons for using a Petri-net-based workflow management system

  • W.M.P. van der Aalst et al.

    Workflow Management: Modellen, Methoden en Systemen (in Dutch)

    (1997)
  • C. Ellis, K. Keddara, G. Rozenberg, Dynamic change within workflow systems, in: N. Comstock, C. Ellis, (Eds.),...
  • C.A. Ellis et al.

    Modelling and enactment of workflow systems

  • Cited by (0)

    View full text