You are here

Opportunities For Students

 Master/Bachelor Stages and Thesis

We are currently offering several opportunities for undergrad and master thesis as well as stages. The topics are listed and briefly described below. The precise scope and workload of each assignment will be discussed with the students in order to match the effort required for the different types of  work (thesis vs stage, master vs undergrad, and so on).

An overview of topics and challenges addressed in previous internships may be found here.


TITLE: Javascript in the deep [Stage only]

The student will work on the source code of the Signavio-core javascript library [1]: a library specifically created for modeling business processing directly on web pages. Recent updates of web browsers and of the policies of cross-domain interactions led to new versions of the most known javascript frameworks in order to make them compliant to such policies. Unfortunately, the Signavio-core library is not maintained since 2012 and some maintenance is required. During this stage the student will be responsible of: - fixing the library in order to make it compliant with recent web standards and policies; - add some functionalities useful for improving the effectiveness of the process modeling task; - analyze the structure of the library and produce documentation easing the integration of new functionalities.


  • Knowledge of the Javascript language.
  • Knowledge about how the Canvas object works.


  • Improve javascript competencies.
  • Capacity of analyzing complex source code.
  • Produce effective documentation for supporting further development activities.



TITLE: Refactor of the MoKi Tool source code

MoKi [1] is a process and knowledge modeling tool, currently maintained by the PDI research unit, as extension of the MediaWiki library [2].
The current integration between MoKi and Mediawiki is quite strong and this dependency limits, sometimes, the possibility of extending or optimizing MoKi functionalities.
The long term goal is to detach many MoKi components from Mediawiki in order to improve the overall efficiency of the tool.
During this stage, that can be extended also for a thesis, the student will be responsible of:

  • analyze the MoKi source code and draw the interaction between all components;
  • understand the points of interaction between MoKi and Mediawiki in order to develop a first abstraction layer;
  • design a proposal for a new architecture;
  • update MoKi components by adapting them to the new architecture;
  • refactor and clean the MoKi code in order to optimize it.


  • Knowledge of the object-oriented paradigm.
  • Knowledge of the PHP language.
  • Knowledge of the Javascript language.


  • Improve PHP and Javascript competencies.
  • Increase the capability of analyzing complex source code architectures.
  • Improve object-oriented development competences.
  • Improve software design capabilities.



TITLE: Deviance Mining [THESIS]

Deviance mining aims at identifying business process cases that deviate from the standard behavior (e.g., process executions that do not respect a constraint, process executions that are slower than expected, etc.) and at explaining the reasons why those cases present a deviance based on the control flow and the data flow characteristics of the process cases.
Purpose of the work is identifying and explain deviant behaviors using declarative rules to describe control flow and the data flow characteristics of the process cases.


  • Programming skills (preferably Java)


  • Knowledge on business process modelling languages (Petri Net, BPMN).
  • Knowledge on deviance mining.
  • Knowledge on declarative process modelling languages (Declare).
  • Knowledge and analysis of ML algorithms.
  • UI programming skills.


TITLE: Monitoring of Business Processes with Fuzzy Logic

In different research fields a research issue has been to establish if the external, observed behavior of an entity is conformant to some rules/specifications/expectations.
Most of the available systems, however, provide only simple yes/no answers to the conformance issue.
Some works introduce the idea of a gradual conformance, expressed in fuzzy terms.
The conformance degree of a process execution is represented through a fuzzy score.
In this thesis, we provide an approach to monitor process executions ad give at runtime diagnostics based on fuzzy conformance.
The approach will be implemented in the process mining tool ProM and experimented in real life case studies.


  • Programming skills (preferably in Java)


  • Knowledge on business process modelling languages (Petri Net).
  • Knowledge and analysis of conformance checking algorithms.
  • ProM tool.
  • UI programming skills.