Modeling and Simulation of

Organizations and Business Processes with

DPMN

Gerd Wagner

Brandenburg University of Technology

Germany

This EEWC 2020 keynote presentation is available from
https://dpmn.info/reading/EEWC2020.

Overview

  • Setting the Scene
  • Part I: Discrete Dynamic Systems
  • Part II: Object-Event Modeling and Simulation (OEM&S)
  • Part III: Outlook

Setting the Scene (1)

  1. First things first: objects and events before agents and actions
  2. A Business Process Modeling (BPM) language is only meaningful if it allows making Business Process Simulation (BPS) models
  3. The Business Process Modeling Notation (BPMN) does not allow making BPS models

Setting the Scene (2)

  1. Discrete Event Simulation (DES) frameworks for BPS use proprietary modeling languages based on the 70-years old Processing Networks (PN) paradigm
  2. BPMN-based BPS is incompatible with DES-based BPS
  3. The Discrete Event Process Modeling Notation (DPMN) combines BPMN with DES-based BPS

First Things First

ResourceConstrained-Activities

What's wrong with BPMN?

  1. A limited concept of "business process" (e.g., only human resources)
  2. Overloading/ambiguity of sequence flow arrows
  3. Insufficient integration of the objects that participate in a process
  4. Insufficient support of resource management
  5. No support of processing activities
  6. No convincing formal semantics

Baking a Blueberry Cake

process model 1 baking blueberry cake
Which resources are there?

Baking with Two Performers

process model 2 baking blueberry cake

A Haul Service Company

process model Load-Haul-Dump

Compare with DPMN

process model Load-Haul-Dump

BPM versus DES (1)

  • When a BPM language allows simulation, it does have an execution semantics
  • There are various proposals how to extend BPMN for BPS: Signavio, BIMP (Univ. Tartu), etc.)
  • All of them result in quite limited forms of BPS:
    • no conditional branching
    • only human, but no other, resources
    • lack of support for important resource management features (alternative resources, pre-emption)

BPM versus DES (2)

  1. In DES, there are many paradigms (and a lot of conceptual confusion)
  2. The two main paradigms are Event-Based Simulation and (higher-level) Processing Network (PN) Simulation
  3. There are 10+ commercial DES tools, all of them focusing on PN Simulation, but with different (proprietary) terminologies and diagram languages
  4. PN Simulation is a form of BPS, but it is incompatible with BPMN

Part I

Discrete Dynamic Systems

What is a Discrete Dynamic System (DDS)?

A real world system consisting of objects and a discrete flow of events such that at any moment in time, the system's past is a sequence of situations each characterized by

  1. a time point t (the situation time)
  2. the system's object states O at t , and
  3. a set of imminent events, to occur at times greater than t.

and each situation St+1 is created from St via causal regularities triggered through the events occuring at t.

Causal Regularities

An event e@t causes:

  1. state changes Δ of affected objects, and
  2. follow-up events e1@t1, e2@t2,...

according to the dispositions of affected objects, which can be generalized as causal regularities of the form

t, O, e@tΔ, {e1@t1, e2@t2,...} with ti > t

with O being the set of the system's object states at time t, such that

O' = Upd( O, Δ)

is the resulting changed system state.

Modeling a DDS

Computationally, a DDS can be represented by an Object Event Model (OEM) consisting of:

  1. object types OT, e.g., in the form of classes of an object-oriented language;

  2. event types ET, e.g., in the form of classes of an object-oriented language;

  3. event rules R representing causal regularities, e.g., in the form of onEvent methods of the class that implements the triggering event type.

While OT and ET can be defined by a UML Class Diagram, the set of event rules R can be defined by a DPMN Process Diagram.

Part II

Object-Event Modeling and Simulation (OEM&S)

Events and Discrete Processes

  1. Discrete processes are governed by causal regularities, which relate events with (1) state changes of affected objects and (2) follow-up events.
  2. A discrete process consists of a partially ordered set of events that happen in a spatio-temporal region determined by the events' participants and the causal regularities involved.
  3. A business process is a discrete process that "happens in the context of an organization".

Modeling Objects and Events (1)

  1. Since events depend on objects, we first need to model object types and then event types.
  2. A process model is based on an underlying information model defining the types of its objects and events.
  3. A conceptual process model describes the causal regularities of a real world process.

Modeling Objects and Events (2)

  1. A simulation design model consists of an information design model and a process design model.
  2. An information design model defines object types and event types (e.g., in the form of classes in a UML Class Diagram).
  3. A process design model defines event rules that represent causal regularities (e.g., in a DPMN Process Diagram).

Event Graphs

Event Graphs (EGs) have been proposed for DES modeling by Schruben in 1983.

Strengths:

  • EGs provide an intuitive visual modeling language.
  • EGs capture the fundamental event scheduling paradigm.

Weaknesses:

  1. EGs lack a visual notation for (conditional and parallel) branching.
  2. EGs do not support OO state structure modeling (with objects/classes and attributes).
  3. EGs do not support activities.

An Event Graph Model

workstation

The integer variable L denotes the length of the input buffer.
The Boolean variable B denotes the busy/available status of the service desk or machine.

DPMN

...is the Discrete Event Process Modeling Notation, which extends Event Graphs by adding:

  1. Exclusive/Inclusive/Parallel Gateways for conditional/parallel branching
  2. Data Objects for replacing "state variables" (like L) with attributes (like WorkStation::inputBufferLength)
  3. Activities

A DPMN Process Model is composed of Event Rule Models.

Modeling Resources in an Information Model

Model with an Activity

A Resource-Constrained Activity

Service Desk Event Graph

A Resource-Dependent Activity Start Arrow

Service Desk Event Graph

Conclusion and Outlook

  • OEM&S is a new modeling and simulation paradigm with a formal semantics and an ontological foundation.
  • The preferred modeling languages for OEM&S are UML Class Diagrams and DPMN Process Diagrams.
  • OES has been implemented in JavaScript, a Python implementation will follow.
  • DPMN allows modeling of message-based communication (with out-message and in-message events).
  • OEM&S can be extended by adding Agents with Beliefs about, and Perceptions of, their environment
  • How to model (DEMO) transactions in DPMN still has to be investigated.

See also