Two Problems and One Solution:

Combining BPMN and Event Graphs

Gerd Wagner

Brandenburg University of Technology



  • Part I: What is Discrete Event Simulation (DES)?
  • Part II: Process Modeling with Event Graphs
  • Part III: Process Modeling with BPMN
  • Part IV: Process Modeling with DPMN

Part I

What is DES?

What is DES?

  • umbrella
    An umbrella term subsuming a variety of computer simulation approaches:
  • Event-Based Simulation (Event Scheduling): SIMSCRIPT (1962), Event Graphs (1983), Simio, AnyLogic, ...
  • Processing Network Simulation: GPSS (1961), SIMAN/Arena, Simio, AnyLogic, DESMO-J, ...
  • Object-Oriented Simulation: Simula (1966), Simio, AnyLogic, ...
  • Other (academic) paradigms/formalisms: Petri Nets, DEVS*, ...

What is a Discrete Dynamic System (DDS)?

A real world system consisting of objects and a discrete non-deterministic flow of events in time 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 state at t (as a combination of the states of all objects of the system), and
  3. a set of imminent events, to occur at times greater than t.

Causal Regularities

In a DDS, 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 objects, 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.

Example: A Manufacturing Workstation

  • Workstation
    Event rule 1: When a new part arrives at the workstation it is added to its input buffer.
  • Event rule 2: When the workstation is available it fetches the new part and starts processing it.
  • Event rule 3: When processing ends, the processed part departs, and, if the input buffer is not empty, the workstation fetches the next part and starts processing it.

Potentially relevant object types: parts, workstations.

Potentially relevant event types: part arrivals, processing starts, processing ends, part departures.

Conceptual Information Model


Conceptual Process Model


Simulating a DDS

An OEM defines a state transition system where

  1. a state of the transition system consists of a situation S = ⟨t, O, E

  2. a transition of a situation S consists of

    1. advancing t to the occurrence time t' of the next events NEE,

    2. processing all next events eNE by applying their event rules reR according to

      re( O) = ⟨ Δe , FEe

      resulting in Δ = ∪ {Δe | eNE } and FE = ∪ {FEe | eNE }

    such that the successor situation S' = ⟨t', O', E'⟩ with

    O' = Upd( O, Δ)
    E' = ENEFE

Part II

Process Modeling


Event Graphs

Event Graphs

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


  • Event graphs capture the fundamental event scheduling paradigm with annotated arrows between event circles.


  • Event graphs lack a visual notation for (conditional and parallel) branching.
  • Event graphs do not support OO state structure modeling (with objects and attributes).

An Event Graph Model of
the Workstation Process


Part III

Process Modeling



A BPMN Model of
the Workstation Process


BPMN Can Be Used in Two Ways

  • For documenting, and designing improved versions of, existing (non-executable) business processes
  • For defining automated business processes based on a specific BP automation platform

BUT: BPMN does not allow defining a computationally complete logical design of an executable business process

Issues with BPMN

  • BPMN does not provide a clear/unambiguos meaning of Sequence Flows
  • According to the semantics of BPMN, actions/activities are not events
  • The official BPMN (token flow) semantics is limited to case handling processes
  • It disallows, for instance, to model processes where several cases are handled in parallel and compete for resources
  • For a long time, it was an open issue how to best use BPMN, and how to adapt its syntax and semantics, for simulation modeling
  • This issue has been solved in the Discrete Event Process Modeling Notation (DPMN)

Part IV

Process Modeling



Defining Object and Event Types


A DPMN Model of
the Workstation Process


Using an Activity Type

The pair of corresponding event types ProcessingStart and ProcessingEnd can be replaced by an activity type:


An Activity-Based DPMN Model
of the Workstation Process


See also