MPB 2021/22 (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.
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), Process performance analysis. Process simulation. Process Mining.
Date | Time | Name | Place | |
---|---|---|---|---|
day | date | time | session start | Microsoft Teams |
date | name | Project: Pending/Approved | ||
time | 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.
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.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 | Wed 15/09 | 16:00-18:00 | C1 - Teams | Lecture 1 | Course introduction: course objectives, textbooks, BPM aim and motivation, models and abstraction | |
2 | Thu 16/09 | 16:00-18:00 | M1 - Teams | Lecture 2 | Introduction to Business Processes: Taylorism, work units, processes, terminology, organizational structures, process orientation and reengineering, visual notations | |
3 | Wed 22/09 | 16:00-18:00 | C1 - Teams | Exercises Lecture 3 (1st part) | Exercises: Alice-Bob car selling scenario Examples: Orchestration diagrams | |
4 | Thu 23/09 | 16:00-18:00 | M1 - Teams | Exercises Lecture 3 (2nd part) | Examples and Exercises Examples: Collaboration diagrams, choreography diagrams | |
5 | Wed 29/09 | 16:00-18:00 | C1 - Teams | Lecture 4 | Business Process Modelling Abstractions: Separation of concerns, horizontal abstraction, aggregation abstraction, vertical abstraction | |
6 | Thu 30/09 | 16:00-18:00 | M1 - Teams | Lecture 5 Lecture 6 | Business Processes Lifecyle: design and analysis, configuration, enactment, evaluation, administration and stakeholders Business Process Methodology: levels of business processes, business strategies, operational goals, organizational BP, operational BP, implemented BP, design guidelines, from business functions to processes, separation of concerns, sw architectures, individual enterprise applications, enterprise resource planning system, siloed enterprise applications, enterprise application integration, message-oriented middleware, enterprise service computing | |
7 | Wed 06/10 | 16:00-18:00 | C1 - Teams | Lecture 7 | From automata to nets: Inductive definitions, Kleene star, finite state automata, transition function, destination function, language accepted by an automaton, from automata to Petri nets, places, transitions, tokens | |
8 | Thu 07/10 | 16:00-18:00 | M1 - Teams | Exercises (from Lecture 7) Lecture 8 (1st part) | Petri nets basics: multisets and markings, transition enabling and firing, firing sequences Woped basics | Woped |
9 | Wed 13/10 | 16:00-18:00 | C1 - Teams | Lecture 8 (2nd part) | Petri nets basics: reachable markings, occurrence graph, modelling with Petri nets, examples and exercises Woped basics | |
10 | Thu 14/10 | 16:00-18:00 | M1 - Teams | Exercises (from Lecture 8) Lecture 9 (1st part) | Petri nets basics: Examples and Exercises Behavioural properties: liveness, dead transitions, place liveness, dead places, deadlock freedom | |
11 | Wed 20/10 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 8) Exercises (from Lecture 9) Lecture 9 (2nd part) | Behavioural properties: boundedness, safeness, cyclicity Structural properties: weak and strong connectedness, S-systems, T-systems, free-choice nets | |
12 | Thu 21/10 | 16:00-18:00 | M1 - Teams | Lecture 10 (1st part) | Nets as matrices: markings as vectors, incidence matrices, Parikh vectors, marking equation lemma | |
13 | Wed 27/10 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 9) Lecture 10 (2nd part) | Nets as matrices: recap of marking equation lemma, monotonicity lemma (1, 2 and corollary) | |
14 | Thu 28/10 | 16:00-18:00 | M1 - Teams | Exercises (from Lecture 10) Lecture 10 (3rd part) Lecture 11 (1st part) | Nets as matrices: boundedness lemma, repetition lemma Invariants: S-invariants, fundamental property of S-invariants, alternative characterization of S-invariant, support, positive S-invariants, about boundedness, reachability and liveness |
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 |
---|---|---|---|---|---|---|
15 | Wed 03/11 | 16:00-18:00 | C1 - Teams | Lecture 11 (2nd part) Exercises (from Lecture 11) | Invariants: S-invariants and reachability, T-invariants, fundamental property of T-invariants, alternative characterization of T-invariants, reproduction lemma, about liveness and boundedness | |
16 | Thu 04/11 | 16:00-18:00 | M1 - Teams | Lecture 12 Lecture 13 Lecture 14 (1st part) | On strong connectedness: connectedness theorems Workflow nets: definition, syntax sugar, subprocesses, control flow aspects, triggers Analysis of workflow nets: structural analysis, activity analysis, token analysis, net analysis | Woped |
17 | Wed 10/11 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 11) 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 | |
18 | Thu 11/11 | 16:00-18:00 | M1 - Teams | Lecture 14 (3rd part) Lecture 15 Lecture 16 | Analysis of workflow nets: proof of main soundness theorem Safe Workflow nets: soundness (and safeness) by construction S-systems: fundamental property of S-systems, S-invariants of S-nets, liveness theorem, reachability lemma, reachability theorem, boundedness theorem, workflow S-nets | |
19 | Wed 17/11 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 14) Exercises (from Lecture 15) Exercises (from Lecture 16) Lecture 17 A note on P and NP (optional reading) | T-systems: 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 Decision problems and computational complexity (optional reading) | |
20 | Thu 18/11 | 16:00-18:00 | M1 - Teams | Lecture 18 Lecture 19 (1st part) | Free-choice nets: Fundamental property of free-choice nets, clusters, stable sets, siphons, proper siphons, fundamental property of siphons, siphons and liveness, Rank theorem, 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 | Woped |
21 | Wed 24/11 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 17) Exercises (from Lecture 18) Lecture 19 (2nd part) Lecture 20 | Diagnosis of Workflow nets: TP-handles, PT-handles, well-handled nets, well-structured wf nets, Woflan, ProM, error sequences, non-live sequences, unbounded sequences Workflow systems: I/O interfaces, workflow modules, stuctural compatibility, workflow system, weak soundness | Woped Woflan ProM |
22 | Thu 25/11 | 16:00-18:00 | M1 - Teams | Lecture 21 | EPC: 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 | VP yEd |
23 | Wed 01/12 | 16:00-18:00 | C1 - Teams | Exercises (from Lecture 19) Exercises (from Lecture 20) Exercises (from Lecture 21) Lecture 22 | BPMN: Notation, swimlanes, flow objects, artefacts, connecting objects, collaborations, choreographies, from BPMN to nets | Yaoqiang BPMN.io BPMS Bizagi VP ProM |
24 | Thu 02/12 | 16:00-18:00 | M1 - Teams | Exercises (from Lecture 22) Lecture 23 Exercises (from Lecture 23) A final note (with project instructions) | Quantitative analysis: Performance dimensions and objectives, KPI, cyle time analysis, Little's law, cost analysis | ProM |
end |
Date | Time | Room | Info | |
---|---|---|---|---|
day | date | time | Teams | Exam Exams registration system The actual date of the oral exam will be agreed with the teacher |