MPB 2023/24 (295AA / 372AA, 6 cfu)
Lecturer: Roberto Bruni
Contact: web - email - phone 050 2212785 - fax 050 2212726
Office hours: Wednesday 16:00-18: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.Microsoft Teams: Additional material is available on Teams.
N | Date | Time | Room | Lecture notes | Topics | Links |
---|---|---|---|---|---|---|
- | 19/09 | 11:00-13:00 | canceled | |||
1 | 21/09 | 16:00-18:00 | L1 | Lecture 1 | Course introduction: course objectives, textbooks, BPM aim and motivation, models and abstraction | |
2 | 26/09 | 11:00-13:00 | M1 | Lecture 2 | Introduction to Business Processes: Taylorism, work units, processes, terminology, organizational structures, process orientation and reengineering, visual notations | |
3 | 28/09 | 16:00-18:00 | L1 | Exercises Lecture 3 (1st part) | Exercises: Alice-Bob car selling scenario Examples: Orchestration diagrams, collaboration diagrams | |
4 | 03/10 | 11:00-13:00 | M1 | Exercises Lecture 3 (2nd part) Lecture 4 (1st part) | Examples and Exercises: Travel agency ochestration, choreography diagrams Business Process Guidelines: levels of business processes, business strategies, operational goals, organizational BP, operational BP, business process definition, design guidelines, functional decomposition | |
5 | 05/10 | 16:00-18:00 | L1 | Exercises Lecture 4 (2nd part) | Exercises: Buyer-reseller collaboration, vending machine interactions Business Process Guidelines: implemented BP, software architectures, separation of concerns, sw architectures, individual enterprise applications, enterprise resource planning system, siloed enterprise applications, enterprise application integration, point-to-point integration, hub-and-spoke integration, workflow definition, enterprise service computing | |
- | 10/10 | 11:00-13:00 | canceled | |||
6 | 12/10 | 16:00-18:00 | L1 | Lecture 5 Lecture 6 (1st part) | Business Processes Lifecyle: design and analysis, models and instances, horizontal abstraction, aggregation abstraction, vertical abstraction, separation of concerns, validation, simulation, verification, configuration, testing, enactment, logging, evaluation, monitoring, mining, administration, stakeholders EPC: Event-driven Process Chain, events, functions, connectors, EPC diagrams | VP yEd |
7 | 17/10 | 11:00-13:00 | M1 | Lecture 6 (2nd part) Lecture 7 (1st part) | EPC: guidelines, diagram repair, function annotations, EPML, folder-passing semantics, candidate split, corresponding split, matching split, OR-join policies (wait-for-all, first-come, every-time), examples BPMN: Notation, swimlanes | VP yEd |
8 | 19/10 | 16:00-18:00 | L1 | Lecture 7 (2nd part) | BPMN: flow objects, artefacts, connecting objects, collaborations, choreographies | yEd Yaoqiang BPMN.io Camunda Bizagi VP |
9 | 24/10 | 11:00-13:00 | M1 | Exercises (from Lectures 6 and 7) Lecture 8 (1st part) | Exercises: EPC and BPMN modelling From automata to nets: Inductive definitions, Kleene star, finite state automata, transition function, destination function, language accepted by an automaton | |
10 | 26/10 | 16:00-18:00 | L1 | Lecture 8 (2nd part) Lecture 9 (1st part) | From automata to nets: from automata to Petri nets, places, transitions, tokens Petri nets basics: multisets and markings, transition enabling and firing, firing sequences, reachable markings Woped basics | Woped |
11 | 31/10 | 11:00-13:00 | M1 | Exercises (from Lectures 8 and 9) Lecture 9 (2nd part) Lecture 10 (1st part) | Exercises: automata and Petri nets Petri nets basics: occurrence graph, modelling with Petri nets, examples and exercises Woped basics Behavioural properties: liveness, non live transitions, dead transitions | |
12 | 02/11 | 16:00-18:00 | L1 | Exercises (from Lecture 10) Lecture 10 (2nd part) | Exercises: modelling with Petri nets Behavioural properties: place liveness, non live places, dead places, deadlock freedom, boundedness, safeness |
Microsoft Teams: Additional material is available on Teams.
N | Date | Time | Room | Lecture notes | Topics | Links |
---|---|---|---|---|---|---|
13 | 07/11 | 11:00-13:00 | M1 | Exercises (from Lecture 10) Lecture 10 (3rd part) Lecture 11 (1st part) | Exercises: behavioural properties Behavioural properties: home marking, cyclicity Structural properties: weak and strong connectedness, S-systems, T-systems, free-choice nets Nets as matrices: markings as vectors, incidence matrices | |
14 | 09/11 | 16:00-18:00 | L1 | Lecture 11 (2nd part) Exercises (from Lectures 10 and 11) Lecture 12 (1st part) | Nets as matrices: Parikh vectors, marking equation lemma, monotonicity lemma (1, 2 and corollary), boundedness lemma, repetition lemma Exercises: structural properties, net as matrices Invariants: S-invariants, fundamental property of S-invariants, alternative characterization of S-invariant | |
15 | 14/11 | 11:00-13:00 | M1 | Lecture 12 (2nd part) Exercises (from Lecture 12) Lecture 13 (1st part) | Invariants: support, positive S-invariants, S-invariants and boundedness, S-invariants and liveness, S-invariants and reachability, T-invariants, fundamental property of T-invariants, alternative characterization of T-invariants, reproduction lemma, about liveness and boundedness, two connectedness theorems Exercises: invariants Workflow nets: definition, syntax sugar, subprocesses | |
16 | 16/11 | 16:00-18:00 | L1 | Lecture 13 (2nd part) Lecture 14 (1st part) | Workflow nets: control flow aspects, triggers Exercise: modelling with workflow nets Analysis of workflow nets: structural analysis, activity analysis, token analysis, net analysis, verification and validation, reachability analysis, bags, coverability graph, soundness, N* | Woped |
17 | 21/11 | 11:00-13:00 | M1 | Exercises (from Lectures 13 and 14) Lecture 14 (2nd part) Lecture 15 Lecture 16 | Exercises: workflow nets and soundeness Analysis of workflow nets: strong connectedness of N*, 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 | Woped |
18 | 23/11 | 16:00-18:00 | L1 | Exercises (from Lectures 15 and 16) Lecture 17 A note on P and NP (optional reading) Lecture 18 (1st part) | 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) Free-choice nets: Fundamental property of free-choice nets, place-liveness = liveness in f.c. nets, Commoner's theorem, Rank theorem, clusters, stable sets, siphons, proper siphons, fundamental property of siphons, siphons and liveness Exercises: soundness by construction, S-nets properties, T-nets properties | |
19 | 28/11 | 11:00-13:00 | M1 | Exercises (from Lectures 14 and 18) Lecture 18 (2nd part) Lecture 19 | Free-choice nets: traps, Commoner's theorem and its complexity issues, Rank theorem and its complexity issues Workflow systems: I/O interfaces, workflow modules, stuctural compatibility, workflow system, weak soundness Exercises: workflow net analysis with Woped, properties of free-choice nets, workflow systems | Woped |
20 | 30/11 | 16:00-18:00 | L1 | Lecture 20 | EPC: soundness analysis, from EPC to wf nets, net fragments, dummy style, fusion style, unique start, unique end, three transformations, semantics ambiguities, relaxed sound nets, relaxed sound EPC diagrams, from restricted EPC diagrams to f.c. nets, problems with (X)OR joins, OR join policies (wfa, fc, et), from decorated EPC diagrams to nets | VP yEd Woped |
21 | Lecture 21 | BPMN: from BPMN diagrams to nets | yEd Yaoqiang BPMN.io Camunda Bizagi VP Woped |
|||
22 | Lecture 22 | Diagnosis of Workflow nets: Woped, S-components, S-cover, sound f.c wf nets are safe, TP-handles, PT-handles, well-handled nets, well-structured wf nets, Woflan, ProM, error sequences, non-live sequences, unbounded sequences | Woped Woflan ProM |
|||
23 | Lecture 23 | Process mining: intro, Event logs, discovery, conformance, enhancement, perspectives, play-in, play-out, replay, overfitting, underfitting, alpha-algorithm, footprint matrix, naive fitness, improved fitness, comparing footprints | ProM | |||
24 | Lecture 24 | Quantitative analysis: Performance dimensions and objectives, KPI, cyle time analysis, Little's law, cost analysis A final note (with project instructions) | ||||
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 |