Business Process Modeling

and Simulation with DPMN

Gerd Wagner

Brandenburg University of Technology

Germany

This EDOC 2022 tutorial presentation is available from
https://dpmn.info/presentations/2022-EDOC.

This tutorial is based on the Open Access book Business Process Modeling and Simulation with DPMN, available from https://sim4edu.com/reading/bpms-dpmn/

DPMN = Discrete Event Process Modeling Notation

... is a diagram language for modeling discrete processes, including business processes.

It combines the intuitive flowchart modeling style of BPMN (the Business Process Modeling Notation) with the rigorous semantics provided by

Overview

  • Issues in BP Modeling and Simulation
  • Ontological Considerations
  • Event-Based Modeling of Discrete Processes
  • Modeling Activity Networks with DPMN
  • Modeling Processing Networks with DPMN
  • Modeling Agents as Interactive Objects
  • Summary

Issues in
BP Modeling
and Simulation

resource
cardinality constraints
multitasking
constraints
task priorities
activity preemption

Issues in BP Modeling

  • Using a simplistic concept of BPs due to a focus on administrative workflows (as in Banking, Insurance, etc.), neglecting:
    • passive resources such as equipment, rooms, vehicles, etc. (as in Health Care, Manufacturing, etc.)
    • resource cardinality constraints
    • multitasking constraints
    • resource modeling concepts such as alternate resource pools, task priorities, activity preemption, etc.
  • Unnatural semantics of BP models (by translating them to various types of Petri Nets)

Resource Cardinality and Multitasking Constraints 1:1

  • Resource cardinality constraint: an examination involves exactly one doctor.
  • Multitasking constraint: a doctor performs at most one examination activity (at the same time).

Resource Cardinality and Multitasking Constraints M:N

  • Resource cardinality constraint: teaching a course involves at least one and at most two teachers.
  • Multitasking constraint: a teacher is involved in at most seven course teaching activities (at the same time).

Unnatural Semantics of BP Models

  • It has been an unfortunate choice in the history of BPM to view business process models as Petri Nets.
  • Mapping business process models to Petri Nets, instead of Event Graphs, is like mapping SQL queries to C code instead of predicate logic formulas, for obtaining their semantics.

Issues in BP(MN) Simulation

  • Using a simplistic concept of BP simulation models:

    e.g., modeling decisions in an abstract manner with probabilistic branching, instead of conditions that are based on attribute values.

  • Not learning from Discrete Event Simulation (DES), where discrete processes, including BPs, have been modeled for many years before BPM.

Not Learning from DES

BPMN Process Model Pizza Service

No consideration of: alternate resource pools, task priorities, activity preemption.

As opposed to DES, BPM has a limited concept of "business processes" as isolated "cases".

BPMN

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

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

  • adding probability distributions for the rate of incoming "cases" and for activity durations,
  • assigning probabilities to the outgoing branches of decision nodes,
  • defining human resources and assigning them to performer pools.

as defined by the BPSim standard.

BPMN-Based Simulation

... has severe limitations:

  • Artificial/ad-hoc "token flow" semantics (instead of Event Graph semantics)
  • No conditional, but only probabilistic, branching
  • Only one performer resource per activity (a BPMN swimlane)
  • No alternate resource pools, no task priorities, no activity preemption

What's Wrong with BPMN?

  1. Overloading/ambiguity of sequence flow arrows
  2. Insufficient integration of the objects that participate in a process
  3. Insufficient resource modeling
  4. No support of processing activities
  5. No convincing formal/operational semantics: according to its (not mandatory) "execution semantics", an activity is started by incoming "tokens" and available "data InputSets"(!)

What's Good about DPMN?

  1. It has an ontologically well-founded formal semantics based on Event Graphs (Schruben 1983)
  2. It integrates the objects that participate in a process
  3. It allows general forms of declarative resource modeling for resource-constrained activities with resource roles, pools and constraints
  4. It allows modeling processing activities in Processing Networks

Ontological Considerations

Based on common sense and on the
Unified Foundational Ontology (UFO)
of Guizzardi et al
objects
events
causal regularities
activities

Objects and Events

Objects-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, a soccer match is a composite event that has a duration of 90 minutes.

Causal Regularities

Objects-Events

Events, under certain conditions on the state of their participating objects, cause state changes of affected objects and follow-up events.

Activities

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

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

Resource Constrained Activities

In a BP, 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. Activity Networks
    • with a flow of events
    • with queues of planned activities (task queues)
    • ⇒ BPMN-style business processes
  2. Processing Networks
    • with a flow of processing objects and a flow of events
    • with queues of processing objects, in addition to task queues
    • generalizing the Queuing Networks of Operations Research
    • ⇒ GPSS/SIMAN/Arena-style business processes

Discrete Dynamic Systems

  • ... are real-world systems consisting of objects, the state of which is changed by a discrete flow of events;
  • ... can be viewed as state transition systems where events correspond to transitions that change the state of objects.

An Example of a Discrete Dynamic Systems

We consider a service station as a system characterized by the following narrative:

  • service-desk
    Customers arrive at a service desk at random times.
  • If there is no other customer in front of them, and the service desk is available, they are served immediately, otherwise they have to queue up in a waiting line.
  • The duration of services varies, depending on the individual case.
  • When a service is completed, the customer departs and the next customer is served, if there is still any customer in the queue.

Objects: customers, the service desk.

Events: arrivals, service starts, service ends.

Discrete Processes

Event-Based Modeling of
Discrete Processes

The Layers of DPMN

   LayerConceptsDiagrams
Event-Based
Simulation
Event Graphs (Schruben 1983)Events, Event Scheduling Arrows, Assignments
Object Event Simulation Object Event Graphs (Basic DPMN)+ Objects w/ State Changes
Activity Networks (DPMN-AN) Activities, ... ...

Event Graphs

... have been proposed for event-based simulation modeling by Schruben in 1983.

service station model

The integer variable Q denotes the length of the queue.
The Boolean variable B denotes the busy/available status of the service station.

The semantics of an Event Graph is obtained by decomposing it into event rules.

Decomposing Event Graphs into Event Rules (1)

service station model

Decomposing Event Graphs into Event Rules (2)

service station model
service station model

Decomposing Event Graphs into Rules (3)

Strengths and Weaknesses of Event Graphs

Strengths:

  1. They provide an intuitive visual modeling language.
  2. They capture the fundamental ES paradigm.

Weaknesses:

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

An Example of a Discrete Process

StepTimeCurrent EventsSystem StateFuture Events
00Q: 0, B: false[email protected]
11ArrivalQ: 1, B: false[email protected], [email protected]
21.01ServiceStartQ: 1, B: true[email protected], [email protected]
35.4ArrivalQ: 2, B: true[email protected], [email protected]
46.5ArrivalQ: 3, B: true[email protected]
58.47ServiceEndQ: 2, B: true[email protected]
68.48ServiceStartQ: 2, B: true[email protected]
711.95ServiceEndQ: 1, B: true[email protected]
811.96ServiceStartQ: 1, B: true[email protected]
917.48ServiceEndQ: 0, B: false

Conceptual Models and Design Models

  • A conceptual information model describes the object/event types of a real world process.
  • An information design model defines object/event types in the form of object/event classes that define attributes, associations, operations and constraints.
  • A conceptual process model describes the causal regularities of a real world process.
  • A process design model defines event rules that capture causal regularities.
Service Desk Information Model

An OE Class Model as Information Design Model

«rv» = random variable

{Tri(3,4,8)} is a constraint requiring the operation to implement (or comply with) the triangular probability distribution with lower bound 3, mode 4 and upper bound 8.

{Exp(1/6)} is a constraint requiring the operation to implement (or comply with) the exponential probability distribution with an event rate of 1/6 (that is, on average 1 event every 6 time units).

An Object Event Graph as Process Design Model

Service Desk Information Model

The Complete Simulation Design Model

Service Desk Information ModelService Desk Information Model

Modeling Activity Networks with DPMN

The Layers of DPMN (1)

   LayerConceptsDiagrams
Event-Based
Simulation
Event Graphs (Schruben 1983)Events, Event Scheduling Arrows, Assignments
Object Event Simulation Object Event Graphs (Basic DPMN)+ Objects w/ State Changes
Activity Networks (DPMN-AN)
  • Activities
  • Resource-Dependent Activity Scheduling Arrows
  • Resource Roles
  • Resource Multiplicity Constraints
  • Resource Pools

Introducing Activities
as Paired Start/End Events

Resource-Dependent Activity Scheduling Arrows

DPMN Process Design Model Pizza-Server-1

DPMN Process Design Model Pizza-Server-2

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.
OE Class Design Model Pizza Service

OE Class Model

«rv» = random variable

{U(1,4)} is a constraint requiring the operation to implement (or comply with) the uniform probability distribution with lower bound 1 and upper bound 4.

DPMN Process Model

DPMN Process Design Model Pizza Service
Run the model with OESjs

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

Modeling Processing Networks with DPMN

Processing Networks

  1. ... generalize Queueing Networks (M/M/c, etc.)
  2. ... have been pioneered by GPSS (1961), SIMAN (1982) and Arena (1992)
  3. ... are often characterized by "entities flowing through a system"
  4. More precisely:
    1. A Processing Object enters a Processing Network via an Arrival event at an Entry Station,
    2. is subsequently routed along a chain of Processing Stations where it is subject to Processing Activities,
    3. and finally exits the network via a Departure event at an Exit Station.

The Layers of DPMN (2)

   LayerConceptsDiagrams
Object Event Simulation Activity Networks (DPMN-AN) Activities, RDAS Arrows, ...
Processing Networks (DPMN-AN)
  • Processing Activities
  • Entry/Processing/Exit Nodes
  • Processing Flow Arrows

Example:
A Single Workstation System as a Processing Network

A Processing Flow arrow represents a combined object and event flow.

The Real Meaning of Processing Network Nodes

Event/activity flows are complemented by corresponding flows of processing objects.

Processing Networks extend Activity Networks, which extend Object Event Graphs.

Modeling Agents as Interactive Objects

Terminological/Ontological Considerations

  • The term "agent-based modeling" is an umbrella term that subsumes many different approaches to simulation, typically focused on modeling (collections of) entities/objects/individuals/agents and their interactions with each other and with their environment.
  • Since the interactions of agents are based on discrete perception and action events, it is natural to define an agent-based modeling and simulation approach as an extension of a DES approach, such that the concept of agents can be used along with the more basic concepts of objects and events.
  • In academic research, the term "agent-based" M&S is used ambiguously both for individual-based M&S and cognitive agent M&S.

A Minimal Concept of Agents

  • ... considers agents are objects that interact with their environment (via perceptions and actions) and with each other (via communication),
  • based on their information state (beliefs).
  • The information state of agents contains propositional information about their environment and about themselves resulting both from perception and from communication.

The Information State of an Agent

  • A propositional information item of an information state can be expressed in the form of a triple statement (or, simply, triple), which is an atomic predicate logic sentence that consists of (1) an object name, (2) a property name, and (3) a property value.
  • Such an information item can be viewed as a belief of an agent, or as a knowledge item, where knowledge means correct information or true belief.
  • Beliefs represent the typically partial and sometimes incorrect subjective information of agents about their environment and about themselves. They are the most basic component of the cognitive state of an agent.
Service Desk Information Model

Four Stage Supply Chain (Beer Game)

Four nodes: a retailer, a wholesaler, a distributor and a factory. Each node...

... receives orders from, and ships the ordered items to, its downstream node,

... sends orders to, and receives deliveries from, its upstream nodes.

Each Node Is Modeled as an Agent

... that reacts to three types of events:

  • ... in-message events of type "receive order",
  • ... perception events of type "perceive delivery of items"
  • ... time events of type "end of week";

and performs two types of actions:

  • ... out-message actions of type "send order",
  • ... physical actions of type "ship items".

Summary

  • 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 (OESjs), a Python implementation is work in progress.
  • DPMN supports
    • Activity Network Modeling and Simulation (in the style of BPMN)
    • Processing Network Modeling and Simulation (in the style of Arena)
    • Agent-Based Modeling and Simulation

References