Process Conformance Checking using Python (Bachelor’s, SS 2018/2019)



Alessandro Berti



+49 241 80 21949



Course Details

Language: The language of the course is English; therefore, all meetings and the written reports will be in English.

Important Dates

Kick-off Meeting

05/04/2019, 16:30 Uhr – 18:00 Uhr

Location: Ahornstrasse 55 52074 Aachen, Main Building (2350), Room: 2010

The attendance to the kick-off meeting is strictly mandatory.


The milestones for the project are the following:

  • Milestone 1 - Project Initiation document (deadline Friday 19/04/2019 23:59:59 CET)
  • Milestone 2 - Requirements Specification document (deadline Friday 26/04/2019 23:59:59 CET)
  • Milestone 3 - Design Analysis & dummy P.o.C. (deadline Friday 10/05/2019 23:59:59 CET)
  • Milestone 4 - Sprint 1 code & documentation (deadline Monday 31/05/2019 23:59:59 CET)
  • Milestone 5 - Sprint 2 code & documentation (deadline Friday 14/06/2019 23:59:59 CET)
  • Milestone 6 - Sprint 3 code & documentation (deadline Friday 21/06/2019 23:59:59 CET)
  • Milestone 7 - Testing, assessment and deployment (deadline Friday 28/06/2019 23:59:59 CET)
  • Milestone 8 - Final report on the project (deadline Friday 05/07/2019 23:59:59 CET)

Contact Hours

The proposed contact hours are the following. It is highly advised to ask an appointment to the teaching assistant, preferably in the proposed dates and hours.

Modification to the contact hours will be communicated to students through e-mail and promptly reported on this web-site.

  • Monday April 8, 09:15-10:45
  • Thursday April 11, 09:15-10:45
  • Friday April 12, 08:30-10:00
  • Monday April 15, 09:15-10:45
  • Wednesday April 17, 08:30-10:00
  • Monday April 29, 09:15-10:45
  • Thursday May 2, 09:15-10:45
  • Friday May 3, 08:30-10:00
  • Monday May 6, 09:15-10:45
  • Thursday May 9, 09:15-10:45
  • Friday May 10, 08:30-10:00
  • Monday May 13, 09:15-10:45
  • Thursday May 16, 09:15-10:45
  • Monday May 20, 09:15-10:45
  • Thursday May 23, 09:15-10:45
  • Friday May 24, 08:30-10:00
  • Monday May 27, 09:15-10:45
  • Thursday May 30, 09:15-10:45
  • Friday May 31, 08:30-10:00
  • Monday June 3, 09:15-10:45
  • Thursday June 6, 09:15-10:45
  • Friday June 7, 08:30-10:00
  • Monday June 10, 09:15-10:45
  • Thursday June 13, 09:15-10:45
  • Monday June 17, 09:15-10:45
  • Thursday June 20, 09:15-10:45
  • Friday June 28, 08:30-10:00


Process Mining is a growing branch of Data Science that focuses on analysing event data recorded in Information Systems, focusing on the process perspective.

Investments in Process Mining from public and private companies are steadily increasing, and are expected to more than double in the next five years.

Hence a good knowledge of Process Mining is an important skill for Data Scientists.

Conformance Checking is a part of Process Mining discipline and consists in techniques to compare the process model and the real behaviour recorded in an Information Systems to find commonalities and discrepancies. These may signal the need of better control of the process, or that the model needs to be improved to capture reality better. Common implementations of Conformance Checking on Information Systems are event listeners that trigger some kind of alert when deviations occur, or post-mortem analysis to detect fraudulent behaviour, for example violations of the Four Eyes Principle.

This Software Lab course includes tutorials describing the existing ProM Framework and Conformance checking techniques.

The course will use Python as the core language for implementation. It is expected that the students will follow the Software engineering principles during the course term.

Introductory Sessions

All the above topics will be introduced in brief. Participation is mandatory throughout the course. In the introductory sessions, topics will be assigned to the students and deadline for submitting the report and implementation will be discussed.

Groups will be formed to work on the assignments

Student work structure

Students will be required to understand and implement the assignment requirements in Python and provide proper visualizations. A proper SDLC lifecycle will be followed during this phase to track the development. The details of the methodology will be communicated in the introductory session.

A written report on the implementation, its advantages and issues should be produced individually by the students.


The grading will take into account the written report and the Python code implemented.


  • Software Engineering knowledge(Design, development and testing)
  • Prior programming experience. Not necessarily Java or Python.
  • Interest to learn and code in Python


• Coursera "Process Mining: Data Science in Action" course

• Business Process Intelligence (BPI) Course

• Introduction to Data Science (IDS) Course



The registration is carried out by the central registration process in January 2019

In order to increase your chance for being elected for this lab, please state your qualifications, experiences, and overall grades in your enrolled study as detailed as possible. Please give clearly why you are definitely a suitable candidate for this lab.

You will be informed about the first meeting in the weeks after the registration closes.