Automating BPMN and Data Model Extraction with Process Mining

Automating BPMN and Data Model Extraction with Process Mining

Table of Contents

  1. Introduction
  2. The Goal of the Master Thesis
  3. Issues with the Current Approach
  4. Proposal: The Use of Process Mining Techniques
  5. The Tool and its Modules
    • Model Extraction Module
    • Preprocessor Module
    • Translation Module
    • Additional Analysis Module
    • Command Line Interface Module
  6. Demo: Using the Tool
  7. Conclusion
  8. Resources

🌟 Introduction

Welcome everyone! In this article, I would like to share the topic and results of my master thesis on BPMN and data model extraction using process binding techniques. My name is Kostenborn, and I will walk you through the concepts and achievements of my thesis.

🎯 The Goal of the Master Thesis

The main goal of my master thesis was to utilize Montygem, a generator framework, to create a process-aware information system. Montygem is known for its ability to automatically generate code for web applications based on a set of input models. However, in this thesis, we aimed to generate a process-aware information system, specifically.

❌ Issues with the Current Approach

The current approach has two main issues that needed to be addressed. Firstly, it assumes that the process model already exists, which creates the problem of translating the process model into a textual domain-specific language manually. This manual translation is prone to errors and lacks automation. Secondly, theoretical process models may not accurately represent real-world process behavior, raising concerns about their practicality.

💡 Proposal: The Use of Process Mining Techniques

To tackle the issues Mentioned, I proposed the utilization of process mining techniques. By replacing the process model with an event log, recorded during the execution of the process, we could extract the true behavior of the process. I implemented a tool that utilizes process mining discovery techniques to automatically extract a BPMN process model from the event log. Furthermore, the tool translates the BPMN process model into the textual domain-specific language compatible with Montygem. This enables the tool to create a process-aware information system accurately, based on real-world behavior.

⚙️ The Tool and its Modules

The tool consists of five modules, each serving a specific purpose:

1. Model Extraction Module

This module, written in Python, automatically extracts a BPMN process model from the event log using the pm4py library. The event log provides the necessary real event data to represent the true behavior of the process.

2. Preprocessor Module

The preprocessor module fixes any issues that may arise with the extracted BPMN process model, ensuring its compatibility with further steps.

3. Translation Module

The translation module transforms the BPMN process model into the domain-specific language, allowing Montygem to work seamlessly with the model.

4. Additional Analysis Module

This module conducts further analysis on the event log, providing users with valuable insights into the underlying process. Examples of analysis include a handover of work matrix and a resource activity matrix.

5. Command Line Interface Module

The command line interface module provides users with the ability to trigger specific parts of the tool depending on their requirements. This module processes different command line arguments for a customizable user experience.

🎬 Demo: Using the Tool

Let me walk you through a short demo of how the tool works. Firstly, we start with an event log that will serve as our input. We can then run the Python script, which is the model extraction module of the tool. This script will automatically generate a BPMN process model and a role model file from the event log. The role model file specifies the discovered roles and the tasks associated with each role.

Next, we can copy the generated BPMN process model, role model file, and event log into the Java project that houses the remaining modules of the tool. Within the command line interface module, we can define the paths to these files using Maven. Running the tool, the output files will be generated, including the pre-processed version of the BPMN process model, the domain-specific language representation, and an analysis HTML file.

📝 Conclusion

In conclusion, my master thesis successfully addressed the issues faced in generating a process-aware information system using Montygem. By utilizing process mining techniques, we automated the extraction and translation of the BPMN process model. The tool developed consists of various modules that work seamlessly together to provide users with insights and a convenient command line interface for a tailored user experience.

🔗 Resources

Most people like

Find AI tools in Toolify

Join TOOLIFY to find the ai tools

Get started

Sign Up
App rating
4.9
AI Tools
20k+
Trusted Users
5000+
No complicated
No difficulty
Free forever
Browse More Content