Modeling and Simulation of

Business Processes with DPMN

Resource-Constrained Activities

Gerd Wagner

Brandenburg University of Technology


This WSC 2020 tutorial presentation is available from


  • Introduction
  • Part I: Basic DPMN
  • Part II: DPMN with Simple Activities
  • Part III: DPMN with Resource-Constrained Activities
  • Part IV: DPMN with Processing Activities
  • Outlook


Objects and Events


(1) Objects ("endurants") and events ("perdurants") are the two most fundamental ontological categories.

(2) Objects participate in events.

(3) Events need not be atomic, nor instantaneous. They may be composite and have non-zero duration.

For instance, WW2 is a historic event that is composite and has a duration of 6 years and 1 day.


... are composite events that are composed of a start event and an end event.

... have a performer, which is an agent.

Resource Constrained Activities

A performer is a resource.

Processing Activities

Processing activities are performed at processing stations, such that processing objects move from one processing station to the next one.

Two Kinds of Business Processes

  1. Resource-Constrained Activity Networks
    • with a flow of events
    • with queues of planned activities
    • ⇒ BPMN-style business processes
  2. Processing (Activity) Networks
    • with a flow of processing objects
    • with queues of processing objects
    • = "entities flowing through a system"
    • generalizing Queuing Networks
    • ⇒ GPSS/SIMAN/Arena-style business processes


The Business Process Modeling Notation (BPMN) does not support simulation.

However, BPMN models can be turned into limited forms of simulation models by...

  • adding distributions for the case rate and for activity durations,
  • defining human resources and assign them to performer pools.

BPMN-Based Simulation

Examples of BPMN simulators:

QBP Simulator (Univ. of Tartu)

• Simul8

• Lanner L-Sim (supports the BPSim standard)

Severe limitations:

  • Artificial "token flow" semantics (instead of Event Graph semantics)
  • No state changes
  • No conditional, but only probabilistic, branching
  • Only one actor resource per activity (BPMN swimlanes = "performers")
  • No alternative resource pools, no pre-emption

What's wrong with BPMN?

  1. A limited concept of "business processes" as isolated "cases"
  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/operational semantics

What's wrong with DES software packages?

  1. ArenaSimul8SimioAnyLogic
    EntityWork ItemTokenAgent
    CreateStart PointSourceSource
    Process Queue+ActivityServerService or Seize+Delay+Release
    DisposeEnd PointSinkSink
    There is no common conceptual foundation for Arena/Simio/AnyLogic/etc. (therefore, it's hard to compare and evaluate them)
  2. They use proprietary terminologies and proprietary diagram languages
  3. They only support their own proprietary form of PN simulation.
    • No support for Event-Based DES
    • No support for Activity-Based DES
  4. No formal semantics

The Layers of DPMN

Event Graphs (Schruben 1983)Events, Event Scheduling Arrows, Assignments
Object Event Simulation Basic DPMN+ Objects w/ State Changes
DPMN with Simple Activities+ Activities
DPMN with Resource-Constrained Activities
  • Resource Roles
  • Resource Cardinality Constraints
  • Resource Pools
  • Resource-Dependent Activity Start Arrows

The HiStory of DPMN

  1. 2000-2004. Working in the group of Wil van der Aalst, G. Wagner is unhappy about the lack of ontological foundations of Petri-Net-based Business Process Modeling.
  2. WSC 2009. G. Wagner, O. Nicolae and J. Werner. Extending Discrete Event Simulation by Adding an Activity Concept for Business Process Modeling and Simulation.
  3. WSC 2010. G. Guizzardi and G. Wagner. Towards an Ontological Foundation of Discrete Event Simulation.
  4. EOMAS 2011. G. Guizzardi and G. Wagner. Can BPMN Be Used for Making Simulation Models?
  5. WSC 2014. G. Wagner. Tutorial: Information and Process Modeling for Simulation.
  6. WSC 2016. G. Wagner, M. Seck and F. McKenzie. Process Modeling for Simulation: Observations and Open Issues.
  7. WSC 2017. G. Wagner. Tutorial: Information and Process Modeling for Simulation.
  8. JSimE 2018. G. Wagner. Information and Process Modeling for Simulation – Part I: Objects and Events. Journal of Simulation Engineering.
  9. 2019. G. Wagner. Information and Process Modeling for Simulation – Part II: Activities and Processing Networks.

Part I: Basic DPMN

Discrete Processes

  • ... are governed by causal regularities, which relate events with (1) state changes of affected objects and (2) follow-up events.
  • A discrete process consists of a partially ordered set of events.
  • A business process is a discrete process that "happens in the context of an organization".

Event Graphs (EGs)

... have been proposed for DES modeling by Schruben in 1983.


The integer variable L denotes the length of the input buffer.
The Boolean variable B denotes the busy/available status of the "server".

Strengths and Weaknesses of EGs


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


  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.

Object Event Modeling and Simulation (OEM&S)

  • Service Desk Information Model Service Desk Event Graph
    Since events depend on objects (as their participants), we first need to model object types and then event types.
  • A process model is based on an underlying information model defining the types of its objects and events.
  • A conceptual process model describes the causal regularities of a real world process.
  • A process design model defines event rules that capture causal regularities.

Simulation Design in OEM&S

A simulation design model consists of

  1. an information design model defining object types and event types, e.g., in the form of classes in a UML Class Diagram, such as in an Object Event (OE) Class Diagram.
  2. a process design model defining event rules that represent causal regularities, e.g., in a DPMN Process Diagram.

A simulation design model is a computationally complete specification that can be directly implemented.

Part II: DPMN with Simple Activities

Pizza-Server-1 OE Class Design Model

Conceptual OE Class Model Pizza Server
«rv» = random variable

Pizza-Server-1 DPMN Process Design Model

Conceptual OE Class Model Pizza Service

Exercise 1: Download/Run the Pizza-Server-1 Model

  1. Load the Pizza-Server-1 model webpage.
  2. Click the button.
  3. Take a look at the resulting statistics output.
  4. If there is anything you'd like to get an explanation for, post your questions on the Chat.

Part III: DPMN with Resource-Constrained Activities

Pizza-Server-2 Design Model

OE Class Design Model Pizza-Server-2

DPMN Process Design Model Pizza-Server-2
Using a Resource-Dependent Activity Start Arrow

Pizza-Server-1 versus Pizza-Server-2

DPMN Process Design Model Pizza-Server-1

DPMN Process Design Model Pizza-Server-2

Exercise 2: Run the Pizza-Server-2 Model

  1. Load the Pizza-Server-2 model webpage.
  2. Click the button.
  3. Take a look at the resulting statistics output and compare it with the output in Exercise 1.
  4. If there is anything you'd like to get an explanation for, post your questions on the Chat.

The Make-and-Deliver-Pizza Model

  • A pizza service company takes phone orders
  • for making and delivering pizzas,
  • with the help of order takers, pizza makers, ovens and a crew of pizza delivery scooter drivers.
Run the model
Conceptual OE Class Model Pizza Service

Conceptual OE Class Model

«rr» = resource role

«rp» = resource pool

OE Class Design Model Pizza Service

OE Class Design Model

«rv» = random variable

DPMN Process Design Model

DPMN Process Design Model Pizza Service

The Load-Haul-Dump Model

  • A haul service company accepts requests for hauling large quantities of earth from a loading site to a dump site,
  • using dump trucks and wheel loaders.
Run the model

Conceptual DPMN Process Model

Conceptual process model Load-Haul-Dump

DPMN Process Design Model

process design model Load-Haul-Dump

Summary 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 OE/UML Class Diagrams and DPMN Process Diagrams.
  • OES has been implemented in JavaScript, a Python implementation is work in progress.
  • DPMN supports
    • Activity-Based Discrete Event Simulation (Activity Networks)
    • Processing Networks (PN) Simulation

Next Steps

  1. Elaborate the PN modeling and simulation layer of OEM&S.
  2. Extend OEM&S by adding Agents with Beliefs, Perceptions and Communications.

Provide Inspiration

  1. DPMN can inspire the improvement of BPMN
  2. DPMN can inspire the improvement and harmonization of process modeling in Arena/Simio/AnyLogic/etc.