Typeset lecture notes for Business Process Modeling (BPM), University of Pisa, academic year 2025/26, taught by Roberto Bruni and Andrea Vandin. The notes cover BPMN and EPC visual notation, Petri nets and workflow nets, occurrence graphs, liveness and boundedness, soundness and structural analysis (invariants, free-choice nets, S/T-systems), process mining, conformance checking, quantitative analysis, and diagnosis of workflow nets. The official course page with the full slide set is on didawiki.
⚠️ Disclaimer. Derived from the Business Process Modeling course materials (Academic Year 2025/2026), MSc in Data Science & Business Informatics, University of Pisa.These notes are open educational content created by a student. They are not an academic source and may contain inaccuracies. You may freely share, modify, and reuse this material for educational and non-commercial purposes with appropriate attribution. The content is my personal interpretation of the professor's course materials and should not replace official teaching resources. I assume no responsibility for any errors or misinterpretations.
These notes were produced with an AI-in-the-middle workflow: a first human pass, then Claude Code to support formulation, understanding, and rewriting, followed by a final human review.
If you find errors, have suggestions, or spot unintentionally included copyrighted material (which I will promptly remove on notification), contact me at
sclfnc@proton.me.
This course is part of the MSc Data Science lecture notes collection (University of Pisa), one repository per course. Clone the whole set with git clone --recursive.
main.tex: entry point, in the folder root; identical across the whole notes collection (it only loads the shared preamble and the course file).src/housestyle.tex, shared house style: geometry, colors, section and ToC formatting, running heads, and the math environments (theorem, definition, …).src/common-preamble.tex: the shared package set, identical across courses.src/course.tex, everything specific to this course: title metadata, math macros, the box-freedefinition/note/examplecallouts, the TikZ BPMN element styles (bpmn task/gateway/event/flow), thelistingsstyle, andhyperref/cleveref, plus the\input{sec/...}list.sec/NN_*.tex: section files (the body of the notes), pulled in bycourse.texvia\coursebody.img/: a handful of raster figures (the BPM wheel, the Königsberg bridges, a BPMN thesis example) used in the introduction; all other diagrams are native TikZ, no slide screenshots.bpm-notes.pdf: the compiled notes, in the folder root.- No bibliography: the notes carry no
.bibfile and use no\cite; sources are listed inline in the introduction's References subsection.
Suspected errors in the official slides are corrected in place and documented in
%-comments at the relevant spot.
Build from the folder root:
latexmk main.texlatexmk runs pdflatex as many times as needed. The compiled PDF is named
bpm-notes.pdf; the LaTeX auxiliaries (.aux, .log, .toc, .bcf, .bbl, …)
land in the folder root alongside it and are git-ignored (listed in
.gitignore). A .latexmkrc in the folder sets this up. To do it by hand
instead:
pdflatex -jobname=bpm-notes main && pdflatex -jobname=bpm-notes mainThe second pass resolves the table of contents and cross-references. Requires a
standard TeX Live installation. Alternatively, upload the folder to
Overleaf (New Project → Upload Project), set
main.tex as the main document, and compile.
Written by Francesco Secoli, revised with the help of Claude Code: the slide decks were transcribed and refined into LaTeX, then reworked into standalone notes and verified slide-by-slide against the official PDFs. Based on the Business Process Modeling course (a.y. 2025/26) taught by Roberto Bruni and Andrea Vandin, University of Pisa. Contributions welcome: open an issue or a pull request.
The notes are twenty sections plus three appendices, in reading order:
| # | Section | Topics |
|---|---|---|
| 1 | Introduction | What business processes and BPM are, modelling, tastes of BPMN and process mining, and why formal proofs matter (Euler's theorem) |
| 2 | Business Processes | Terminology, products and specialization, process orientation, organizational structures, actors/principals/contractors, cases and procedures |
| 3 | Visual notation | Modelling objectives, the BPM lifecycle, BPMN vs .bpmn, tasks and links, control-flow patterns, ambiguity and disambiguation, an insurance-claim example |
| 4 | Petri nets basics | Places, transitions, tokens, arcs, the token game, workflow nets, WoPeD, syntactic sugar for split/join, subprocesses, control-flow patterns, triggers |
| 5 | Process Mining | The mining framework; cases, events, attributes; discovery, conformance, enhancement; quality criteria; the α-algorithm (ordering relations, footprint matrix); noise and limitations |
| 6 | Orchestration and collaboration | Functional goals, orchestration vs choreography, collaboration and compatibility, from question to insight, when process mining makes sense |
| 7 | EPC and BPMN | EPC syntax and semantics, BPMN flow objects and swimlanes, typical patterns, lanes and sub-processes, activities and events, collaboration and choreography, data in BPMN |
| 8 | From Automata to Nets | Finite automata and DFAs, reshaping automata into nets, multisets, the formal definition of Petri nets, firing sequences |
| 9 | Occurrence graphs | Reachability graphs, boundedness, coverability |
| 10 | Liveness | Live and dead nodes, deadlock-freedom, the lattice of implications, the four-property checklist |
| 11 | Incidence matrices | The incidence matrix, Parikh vectors, the marking equation, monotonicity and its consequences |
| 12 | Analysis of Workflow Nets | Behavioural pathologies, the language of a net, soundness, the auxiliary net N*, strong connectedness, a worked repair-service example |
| 13 | Sound by construction | Composition by refinement, building blocks, refinement and abstraction, generalised substitution |
| 14 | Invariants, S-systems and T-systems | S- and T-invariants and the system properties they certify, strong connectedness via invariants, S-systems and T-systems |
| 15 | Analysis of EPC and BPMN | The translation pipeline, straight translation with relaxed soundness, simplified EPCs and free-choice nets, decorated EPCs, the BPMN translation |
| 16 | Free-choice nets | Stable sets, siphons and traps, the P/NP complexity background, NP-completeness of liveness, the Rank Theorem for liveness and boundedness |
| 17 | Workflow modules | Workflow modules, workflow systems, weak soundness |
| 18 | Conformance checking | Four models with naïve fitness, token replay (missing and remaining tokens), diagnostics and drill-down, comparing footprints |
| 19 | Quantitative analysis | Cycle-time analysis, theoretical cycle time and efficiency, Little's law, cost analysis |
| 20 | Diagnosis for workflow nets | S-coverability, well-structuredness, error / non-live / unbounded sequences, practice with WoPeD |
| A | BPM cheat sheets | Definitions, properties, general results, and an analysis summary table |
| B | Process mining hands-on with Disco | Guided walkthrough of process mining with the Disco tool |
| C | Worked figures | Nets to draw at the exam: soundness, liveness/boundedness, PT/TP handles, S/T-nets and invariants, siphons and traps, the short-circuit N* |