Strumenti Utente

Strumenti Sito


Business Processes Modeling

MPB 2020/21 (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).

Due to time constraints the following topics were just mentioned: Process performance analysis. Process simulation. Process Mining.


Quick reference(s)

Tool(s) 188072_149141125103453_6888195_q.jpg

More tools, not discussed in the course:

  • YAWL: Yet Another Workflow Language platform
  • BIMP: Business Process Simulator

Oral Exams: schedule

Date Time Name Place
Weekday DD/MM/YYYY HH:MM session start Microsoft Teams
DD/MM/YYYY first name, last name Project: Pending/Approved
HH:MM session end


The evaluation will be based on a group project and an oral exam.

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.

Project FAQ

  • What are the prerequisites for having a project assigned? There are no prerequisites, but the teacher will assume that you have already studied all the material of the course (if this is not the case, then it is very likely that you won't be able to deliver the project in time).
  • How many people can work together on the same project? Projects are assigned to individuals or to groups of two people. Exceptionally, groups of three people can be allowed, but a solid motivation is needed.
  • When is it possible to request the project description? After the end of the lectures, any (working) day of the year.
  • How do we request a project description? By sending an email to the teacher (possibly including the text BPM project request in the object, and mandatorily including full names, student ids and email addresses of all students in the group). The teacher will then reply (in a few days) with the project description.
  • Which graphical notation should we use in the modelling? You decide: typically EPC is fine for representing orchestrations, BPMN for both orchestration and choreography (collaboration diagrams).
  • Which tools should we use to design EPC diagrams or BPMN diagrams? Some tools are suggested in this page, but you are free to evaluate any other tool and then choose the one that you prefer. For example some cross-platform tools are: yEd is versatile, uder-friendly, has powerful automatic layout features but cannot export diagrams in .epml and .bpmn formats; Visual Paradigm online is also versatile and can export diagrams in several formats; Camunda modeler offers the essential features for drawing nice BPMN diagrams. Please, briefly motivate your choice in the report.
  • Which tools should we use for soundness analysis of workflow nets? My suggestion is to try to use Woped first, and then Woflan as a backup (as a Microsoft Windows application or as a ProM plugin, running on all platforms) if Woped is not responding fast enough or you like to collect information about error sequences to repair your model. If you find out other tools that can be used to the purpose, feel free to use them as well.
  • How do we convert graphical diagrams into workflow nets? I am afraid the short answer is: manually. ProM offers some plugins but the outcome is very different and typically more complex than the one presented in the course. If you find other tools that can help you to speed up the conversion, feel free to use them.
  • When is the deadline for submitting the project? The deadline will be sent by the teacher together with the project description: typically it leaves three weeks to complete the project (but vacation periods are taken into account).
  • What does it happen if we miss the deadline? You will have to request a new project, unless you inform the teacher a few days before the deadline, asking for a short extension of the deadline and explaining the reasons for the delay.
  • What does it happen if a person leaves the group? You must notify immediately the teacher and choose if you prefer to complete the work individually or to request another project later on.
  • How do we deliver the project? You must send the teacher a short project report in .pdf format together with the source files of all diagrams and nets you designed. Optionally, you can submit the soundness analysis checklist (available on the Microsoft Teams channel) for any of your model.
  • When do we discuss the project? Preferably, at the first exam session that follows the delivery of the project.
  • Is it necessary to have already delivered the project in order to register for the exam? No it is not. But of course the project must be delivered in time for being discussed at the actual oral exam.

Exam FAQ

  • How do we register for the exam? As usual, you must enter your choice on the ESAMI portal.
  • What are the dates of the exam? THE DATES ADVERTISED IN THE ESAMI PORTAL ARE NOT NECESSARILY THOSE OF THE ACTUAL EXAM. After you register for the exam, on the basis of the projects received and any other constraint communicated by each student, the teacher will post a tentative schedule on this web page and will inform you by email or on Teams.
  • How is the exam organized? The exam is oral and it is organised in two parts: the first part will focus on the project discussion, the second part will involve all topics covered by the course. Due to the current pandemic situation, all exams will take place remotely, via the Microsoft Teams platform.
  • How is the project discussion organized? ALL GROUP MEMBERS MUST BE PRESENT TO THE PROJECT DISCUSSION. All group members must demonstrate they have participated to all the activites of the project. A negative evaluation of the project may require to rework some parts, submit a revised report and schedule a new exam (possibly at the next exam session). A positive evaluation of the project allows each group member to access the second part of the exam.
  • How is the second part of the exam organized? DIFFERENT GROUP MEMBERS CAN ASK TO SCHEDULE THE SECOND PART OF THE EXAM ON DIFFERENT DAYS. Questions may involve (but are not limited to): most relevant concepts, definitions, terminology and techniques; their intuitive meaning and formalization; proof sketches of formal statements; small-sized exercises. Arguments marked as optional in the lectures table below can be discussed upon student request.
  • Is it possible to pass the first part of the exam and fail the second? Let's hope it won't happen, but yes, it is possible, in which case the student will need to register for one of the next exam sessions. Depending on each single case, a new project may also be assigned.


  • lecture rescheduled:
    The lecture of thursday Oct. 15 has been rescheduled on wednesday Oct. 28, 16:15-18:00
  • lecture canceled:
    The lecture of thursday Oct. 15 is canceled due to personal matters and will be rescheduled (possibly on a wednesday)
  • lecture canceled:
    The lecture of monday Sept. 21 is canceled due to election day
  • covid-19:
    Due to the covid-19 alert, all lectures are held online on the Microsoft Teams platform. Click to enter the virtual classroom
  • as the course starts:
    Each student should send an email to the professor from his/her favourite email account with subject MPB20 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)

Virtual classroom: To join a lecture enter the virtual classroom, go to the Calendar tab and click on the scheduled lecture.

N Date Time Room Lecture notes Topics Links
1 Mon 14/09 11:00-12:45 Microsoft Teams Lecture 1 Course introduction:
course objectives, textbooks,
BPM aim and motivation,
models and abstraction
2 Wed 16/09 16:15-18:00 Microsoft Teams Lecture 2 Introduction to Business Processes:
Taylorism, work units, processes, terminology,
organizational structures
- Mon 21/09 11:00-12:45 Canceled Election day
3 Thu 24/09 16:15-18:00 Microsoft Teams Lecture 2 (2nd part) Introduction to Business Processes:
Processo orientation and reengineering, main definitions,
visual notations
4 Mon 28/09 11:00-12:45 Microsoft Teams Exercises
Examples and Exercises
5 Thu 01/10 16:15-18:00 Microsoft Teams Examples (ctd.) Examples and Exercises
6 Mon 05/10 11:00-12:45 Microsoft Teams Examples and Exercises (ctd.)
Lecture 3
Examples and Exercises

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
7 Thu 08/10 16:15-18:00 Microsoft Teams Lecture 3 (2nd part)
Lecture 4
Evolution of Enterprise Systems Architectures:
enterprise service computing

Business Process Modelling Abstractions:
Separation of concerns, horizontal abstraction,
aggregation abstraction, vertical abstraction
8 Mon 12/10 11:00-12:45 Microsoft Teams Lecture 5
Lecture 6
Business Process Methodology:
levels of business processes,
business strategies, operational goals,
organizational BP, operational BP,
implemented BP, design guidelines,
from business functions to processes

Business Processes Lifecyle:
design and analysis, configuration,
enactment, evaluation,
administration and stakeholders

Mathematical background:
Sets, functions, relations
- Thu 15/10 16:15-18:00 Canceled
9 Mon 19/10 11:00-12:45 Microsoft Teams Lecture 7 (1st part) Mathematical background:
predicate logic, induction, recursion

Introduction to Petri nets:
finite state automata
10 Thu 22/10 16:15-18:00 Microsoft Teams Exercises (from Lecture 7)
Lecture 7 (2nd part)
Lecture 8 (1st part)
Introduction to Petri nets:
from automata to Petri nets

More concepts about Petri nets:
multisets and markings
11 Mon 26/10 11:00-12:45 Microsoft Teams Woped basics
Lecture 8 (2nd part)
More concepts about Petri nets:
multisets and markings,
transition enabling and firing, firing sequences,
reachable markings, occurrence graph
12 Wed 28/10 16:15-18:00 Microsoft Teams Exercises (from Lecture 8) Modelling with Petri nets:
Examples and Exercises
13 Thu 29/10 16:15-18:00 Microsoft Teams Exercises (from Lecture 8)
Lecture 9 (1st part)
Modelling with Petri nets:
Examples and Exercises

Behavioural properties:
14 Mon 02/11 11:00-12:45 Microsoft Teams Lecture 9 (2nd part)
Exercises (from Lecture 9)
Behavioural properties:
dead transitions, place liveness, dead places
15 Thu 05/11 16:15-18:00 Microsoft Teams Exercises (from Lecture 9)
Lecture 9 (3rd part)
Behavioural properties:
deadlock freedom, boundedness, safeness, cyclicity

Structural properties:
weak and strong connectedness,
S-systems, T-systems, free-choice nets
16 Mon 09/11 11:00-12:45 Microsoft Teams Exercises (from Lecture 9)
Lecture 10 (1st part)
Nets as matrices:
markings as vectors
17 Thu 12/11 16:15-18:00 Microsoft Teams Lecture 10 (2nd part) Nets as matrices:
incidence matrices, Parikh vectors,
marking equation lemma, monotonicity lemma,
boundedness lemma, repetition lemma

Lectures (second half)

Virtual classroom: To join a lecture enter the virtual classroom, go to the Calendar tab and click on the scheduled lecture.

N Date Time Room Lecture notes Topics Links
18 Mon 16/11 11:00-12:45 Microsoft Teams Exercises (from Lecture 10)
Lecture 11 (1st part)
S-invariants, fundamental property of S-invariants,
alternative characterization of S-invariant,
support, positive S-invariants,
about boundedness, reachability and liveness
19 Thu 19/11 16:15-18:00 Microsoft Teams Lecture 11 (2nd part)
Exercises (from Lecture 11)
Lecture 12
T-invariants, fundamental property of T-invariants,
alternative characterization of T-invariants,
reproduction lemma,
about liveness and boundedness

On strong connectedness:
connectedness theorems
20 Mon 23/11 11:00-12:45 Microsoft Teams Lecture 13
Exercises (from Lecture 13)
Lecture 14 (1st part)
Workflow nets:
definition, syntax sugar, subprocesses,
control flow aspects, triggers

Analysis of workflow nets:
structural analysis, activity analysis,
token analysis, net analysis, verification and validation,
reachability analysis, coverability graph
21 Thu 26/11 16:15-18:00 Microsoft Teams Lecture 14 (2nd part)
Exercises (from Lecture 14)
Lecture 15
Lecture 16 (1st part)
Analysis of workflow nets:
soundness, N*, strong connectedness of N*,
main soundness theorem

Safe Workflow nets:
soundness (and safeness) by construction

fundamental property of S-systems,
S-invariants of S-nets
22 Mon 30/11 11:00-12:45 Microsoft Teams More Exercises (from Lecture 14)
Exercises (from Lecture 15)
Lecture 16 (2nd part)
Lecture 17
Lecture 18 (1st part)
liveness theorem, reachability lemma,
reachability theorem, boundedness theorem,
workflow S-nets

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,
workflow T-nets

Free-choice nets:
Fundamental property of free-choice nets
clusters, stable sets, siphons, proper siphons,
fundamental property of siphons,
siphons and liveness, Rank theorem
23 Thu 03/12 16:15-18:00 Microsoft Teams Exercises (from Lecture 16)
Exercises (from Lecture 17)
Exercises (from Lecture 18)
A note on P and NP (optional reading)
Lecture 18 (2nd part)
Lecture 19
Decision problems and computational complexity (optional reading)

Free-choice nets:
traps (optional reading),
place-liveness = liveness in f.c. nets (optional reading),
Commoner's theorem and its complexity issues,
Rank theorem and its complexity issues,
sound f.c wf nets are safe

Diagnosis of Workflow nets:
Woped, S-components, S-cover,
T-cover (optional reading),
TP-handles, PT-handles,
well-handled nets, well-structured wf nets,
Woflan, ProM, error sequences,
non-live sequences, unbounded sequences
24 Mon 07/12 11:00-12:45 Microsoft Teams Exercises (from Lecture 19)
Lecture 20
Lecture 21
Workflow systems:
I/O interfaces, workflow modules,
stuctural compatibility, workflow system,
weak soundness

Events, functions, connectors,
EPC diagrams, guidelines,
soundness analysis, from EPC to wf nets,
net fragments, dummy style, fusion style,
unique start, unique end,
three transformations, semantics ambiguities,
relaxed sound nets (optional),
relaxed sound EPC diagrams (optional),
from restricted EPC diagrams to f.c. nets,
problems with (X)OR joins, candidate split,
corresponding split, matching split,
OR join policies (wfa, fc, et),
from decorated EPC diagrams to nets
25 Thu 10/12 16:15-18:00 Microsoft Teams Exercises (from Lecture 20)
Exercises (from Lecture 21)
Lecture 22
Exercises (from Lecture 22)
A final note (with project instructions)
Notation, swimlanes, flow objects,
artefacts, connecting objects,
collaborations, choreographies,
from BPMN to nets

Exam sessions

Date Time Room Info
Fri 22/01 09:00 Teams Exam
Fri 12/02 09:00 Teams Exam
Mon 12/04 11:00 Teams Extra-ordinary Exam
Tue 01/06 11:00 Teams Exam
Exams registration system
The actual date of the oral exam will be agreed with the teacher
Mon 21/06 11:00 Teams Exam
Exams registration system
The actual date of the oral exam will be agreed with the teacher
Tue 20/07 11:00 Teams Exam
Exams registration system
The actual date of the oral exam will be agreed with the teacher
Mon 30/08 11:00 Teams Exam
Exams registration system
The actual date of the oral exam will be agreed with the teacher

Past courses

magistraleinformaticaeconomia/mpb/start.txt · Ultima modifica: 01/05/2021 alle 13:13 (9 giorni fa) da Roberto Bruni