Ebook On the Choice Between Graph-Based and Block-Structured Business Process Modeling Languages

s p o n s o r e d   l i n k s

Workflow technology is a central aspect of Business Process Management (BPM) and an important technology in both industry and academia. Workflows are instances of workflow models, which are representations of real-world business processes [LR00, Wes07]. Basically, a workflow model consists of activities and the ordering amongst them. Workflow models can serve different purposes: on the one hand, they can be employed for documentation of business processes itself, e.g. for facilitating business process modeling by business analysts; on the other hand, workflow models defined by IT experts can serve as input for Workflow Management Systems (WfMS) that allow their machine-aided execution.

The problem of facilitating the creation of executable business process models based on abstract business process descriptions, e.g. through enhancing them with enough information to facilitate their automated execution, is known as the Business-IT gap [DvdAtH05]. A number of workflow languages exists for the specification and the graphical representation of processes. One important aspect is the control flow, which specifies the execution order of the activities. Conceptually, workflow languages can be classified according to whether their control flow modeling style is centered around the notion of blocks or the notion of graphs. In block-structured languages, control flow is defined similar to existing programming languages by using block-structures such as if or while. In contrast, process control flow in graph-oriented workflow languages is defined through explicit control links between activities.

The intended use of a workflow language places a number of requirements and restrictions on the kind of language employed; whether used primarily for documentation purposes (abstract processes) or whether it is used to provide a detailed process model that can be deployed on a WfMS for automatic execution (executable processes) highly depends on the process to be modeled and the intended use of the resulting model. Moreover, certain languages even allow for modeling abstract processes as well as executable processes. As a result, guidelines have to be provided to process modelers to allow them choosing the “right” language for their purpose.

In this paper, a number of workflow languages are compared with respect to their intended use, their notation and serialization, their basic modeling approach (block-structured vs. graph-oriented vs. hybrid), their supported structure of loops (structured loops vs. arbitrary cycles) and their support for expressing explicit data flow. Block-structured and graph-oriented workflow languages differ in their representation of loops, splits and joins. We see these aspects as the main distinction between these languages. Therefore, this paper focuses on the comparison of loops, splits and joins.

The compared workflow languages comprise Event-driven Process Chains (EPC, [STA05, KNS92]) and the Business Process Modeling Notation (BPMN, [Obj08]) on the side of languages targeted primarily on modeling processes for documentation purposes and the Web Service Business Process Execution Language (BPEL, [Org07]) and the Windows Workflow Foundation (WF, [Mic08]) as languages for modeling (also) executable processes.

Download
PDF Ebook On the Choice Between Graph-Based and Block-Structured Business Process Modeling Languages