Strumenti Utente

Strumenti Sito


Business Processes Modeling

MPB 2018/19 (295AA / 372AA, 6 cfu)

Lecturer: Roberto Bruni

Contact: web - email - phone 050 2212785 - fax 050 2212726

Office hours: Wednesday 14:00-16:00 or by appointment


The course aims to reconcile abstraction techniques and high-level diagrammatic notations together with modular and structural approaches. The objective is to show the impact of the analysis and verification properties of business processes on the choice of the best suited specification and modelling languages. At the end of the course, the students will gain some familiarity with business process terminology, with different models and languages for the representation of business processes, with different kinds of logical properties that such models can satisfy and with different analysis and verification techniques. The students will also experiment with some tools for the design and analysis of business processes.

Course Overview

Business process management. Evolution of Enterprise Systems Architectures. Conceptual models and abstraction mechanisms. Petri nets: invariants, S-systems, T-systems, Free-choice systems and their properties. Workflow nets and workflow modules. Workflow patterns. Event-driven Process Chains (EPC). Business Process Modelling Notation (BPMN). Yet Another Workflow Language (YAWL). Business Process Execution Language (BPEL). Process Mining.


Quick reference(s)

Tool(s) 188072_149141125103453_6888195_q.jpg


The evaluation will be based on mid-term written exams, a group project and an oral exam. The final score will be obtained by combining the scores of the above exams with equal weight.

The mid-term exam will be held on: Wed 31/10, 14:00-16:00, room C1.
Registration to the exam is mandatory.

The student must demonstrate the ability to put into practice and to execute, with critical awareness, the activities illustrated or carried out under the guidance of the teacher during the course.


  • mid-term exam:
    The mid-term exam will be held on: Wed 31/10, 14:00-16:00, room C1.
    Registration to the exam is mandatory.
  • as the course starts:
    Each student should send an email to the professor from his/her favourite email account with subject MPB18 and the following data
    (by doing so, the account will be included in the class mailing-list, where important announcements can be sent):
    1. first name and last name (please clarify which is which, to avoid ambiguities)
    2. enrolment number (numero di matricola)
    3. bachelor degree (course of study and university)

Lectures (first half)

N Date Time Room Lecture notes Topics Links
1 Mon 17/09 11:00-13:00 N1 Lecture 1 Course introduction:
course objectives, textbooks,
BPM aim and motivation,
models and abstraction
2 Wed 19/09 11:00-13:00 N1 Lecture 2 Introduction to Business Processes:
Taylorism, work units, processes, terminology,
organizational structures,
process management
3 Mon 24/09 11:00-13:00 N1 Examples
Lecture 3
Examples and Exercises

Business Process Modelling Abstractions:
Separation of concerns, horizontal abstraction,
aggregation abstraction, vertical abstraction,
value chains and value systems
4 Wed 26/09 11:00-13:00 N1 Exercises
Lecture 4
Business Process Methodology:
levels of business processes,
business strategies, operational goals,
organizational BP, operational BP,
implemented BP, design guidelines,
from business functions to processes
5 Mon 01/10 11:00-13:00 N1 Lecture 5
Lecture 6
Business Processes Lifecyle:
design and analysis, configuration,
enactment, evaluation,
administration and stakeholders

Evolution of Enterprise Systems Architectures:
separation of concerns, sw architectures
individual enterprise applications,
enterprise resource planning system,
siloed enterprise applications,
enterprise application integration,
message-oriented middleware,
enterprise service computing
6 Wed 03/10 11:00-13:00 N1 Lecture 7 Introduction to Petri nets:
finite state automata, from automata to Petri nets
7 Mon 08/10 11:00-13:00 N1 Exercises (from Lecture 7)
Lecture 8
More concepts about Petri nets:
multisets and markings,
transition enabling and firing, firing sequences,
reachable markings, occurrence graph
8 Wed 10/10 11:00-13:00 N1 Exercises (from Lecture 8) Modelling with Petri nets:
Examples and Exercises
9 Mon 15/10 11:00-13:00 N1 Lecture 9 (1st part) Behavioural properties:
liveness, place liveness, deadlock freedom,
boundedness, safeness, cyclicity
10 Wed 17/10 11:00-13:00 N1 Exercises (from Lecture 9)
Lecture 9 (2nd part)
Lecture 10 (1st part)
Structural properties:
weak and strong connectedness,
S-systems, T-systems, free-choice nets

Nets as matrices:
incidence matrices, markings as vectors,
Parikh vectors, marking equation lemma
11 Mon 22/10 11:00-13:00 N1 Exercises (from Lecture 9)
Lecture 10 (2nd part)
Exercises (from Lecture 10)
Lecture 11 (1st part)
Nets as matrices:
monotonicity lemma, boundedness lemma,
repetition lemma

S-invariants, fundamental property of S-invariants,
alternative characterization of S-invariant
12 Wed 24/10 11:00-13:00 N1 Exercises (from Lecture 11)
Lecture 11 (2nd part)
support, positive S-invariants,
about boundedness, reachability and liveness,
T-invariants, fundamental property of T-invariants,
alternative characterization of T-invariants,
reproduction lemma,
about liveness and boundedness
13 Wed 31/10 14:00-16:00 C1 Mid-Term Exam Registration
(look at past exercises)
(see selected solutions)

Lectures (second half)

N Date Time Room Lecture notes Topics Links
14 Mon 05/11 11:00-13:00 N1 Solutions to mid-term exam
Exercises (from Lecture 11)
Lecture 12
Exercises (from Lecture 12)
Lecture 13
Lecture 14 (1st part)
Other properties of nets:
connectedness theorems, exchange lemmas
(their proofs are optional reading)

Workflow nets:
definition, syntax sugar, subprocesses,
control flow aspects, triggers

Analysis of workflow nets:
structural analysis, activity analysis,
token analysis, net analysis
15 Wed 07/11 11:00-13:00 N1 Exercises (from Lecture 13)
Lecture 14 (2nd part)
Analysis of workflow nets:
verification and validation,
reachability analysis, coverability graph,
soundness, N*, strong connectedness of N*,
main soundness theorem
16 Mon 12/11 11:00-13:00 N1 Exercises (from Lecture 14)
Lecture 15
Lecture 16
Safe Workflow nets:
soundness (and safeness) by construction

fundamental property of S-systems,
S-invariants of S-nets, liveness theorem,
reachability lemma (proof is optional reading),
reachability theorem, boundedness theorem,
workflow S-nets
17 Wed 14/11 11:00-13:00 N1 Exercises (from Lecture 15)
Exercises (from Lecture 16)
Lecture 17
Exercises (from Lecture 17)
A note on P and NP (optional reading)
Lecture 18 (1st part)
circuits and token count on a circuit,
fundamental property of T-systems,
T-invariants of T-nets,
boundedness in strongly connected T-systems,
liveness theorem for T-systems,
boundedness theorem for live T-systems,
workflow T-nets

Decision problems and computational complexity (optional reading)

Free-choice nets:
Fundamental property of free-choice nets,
clusters, stability
18 Exercises (from Lecture 18)
Lecture 18 (2nd part)
Lecture 19
Lecture 20
Free-choice nets:
siphons, proper siphons,
fundamental property of siphons,
siphons and liveness, siphons and deadlock
traps, proper traps,
fundamental property of traps,
a sufficient condition for deadlock freedom,
place-liveness and liveness in f.c. nets,
non-liveness and unmarked siphons in f.c. nets,
Commoner's theorem, complexity issues, Rank theorem
S-cover, T-cover

Diagnosis of Workflow nets:
Woped, Woflan, ProM, TP-handles, PT-handles,
well-handled nets, well-structured wf nets,
error sequences, non-live sequences,
unbounded sequences

Workflow systems:
workflow modules, strong and weak compatibility,
workflow system, weak soundness,
DF,k-controllability, LF,k-controllability
19 Exercises (from Lecture 19)
Exercises (from Lecture 20)
Lecture 21 (1st part)
Notation, semantics ambiguities and problems,
corresponding split, matching split,
policies (wfa, fc, et), from EPC to nets
20 Exercises (from Lecture 21)
Lecture 21 (2nd part)
Lecture 22 (1st part)
from EPC to free-choice nets,
relaxed soundness, from EPC to nets again

Notation, swimlanes, flow objects,
artefacts, connecting objects
21 Exercises (from Lecture 21)
Lecture 22 (2nd part)
a few patterns, conversations, choreographies,
collaborations, from BPMN to nets
22 Exercises (from Lectures 22)
Lecture 23 (optional reading)
Lecture 24 (1st part)
BPEL (optional reading):
BPEL structured constructs, links,
transition condition, join condition,
from BPEL to nets

Quantitative analysis:
Performance dimensions and objectives,
KPI, cyle time analysis, Little's law
23 Exercises (from Lecture 24)
Lecture 24 (2nd part)
Lecture 26
Quantitative analysis:
Cost analysis

Process mining:
Event logs, discovery, conformance,
enhancement, perspectives, play-in, play-out,
replay, overfitting, underfitting
alpha-algorithm, footprint matrix,
naive fitness, improved fitness
24 Exercises (from Lecture 26)
Lecture 25
resource allocation, classification diagrams,
capacity planning, simulation parameters,
task durations, BIMP

Past courses

magistraleinformaticaeconomia/mpb/start.txt · Ultima modifica: 14/11/2018 alle 12:55 (16 ore fa) da Roberto Bruni