Skip to content
/ soup Public

Soup is a WebApp that allows the end user to create an Event Knowledge Graph (EKG). Starting from an event log, saved in a .csv file, the user is guided in creating the EKG to perform object-centric process mining analysis.

License

Notifications You must be signed in to change notification settings

soup-ocpm/soup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Soup

Description

The Soup Tool is a WebApp that allows the end user to create an Event Knowledge Graph (EKG)
Starting from an event log, saved in a .csv file, the user is guided in the creation of the EKG with the aim of performing object-centric process mining analysis.

Tecnhnologies

1. Memgraph Database

As a Graph database for storing and manipulated event data.

Useful links:

2. Python

The Backend is based on the Python programming language and the Flask library.

Useful links:

3. Angular

The Angular framework is used as a frontend. Within Angular, the dagre-d3 library has been used to create graphs based on nodes and relations.

Useful links:

and other libraries in package.json.

Tool Setup - Instructions

The first step is to clone the project:

git clone https://github.com/soup-ocpm/soup.git

Make sure Git is installed on your computer. If Git is not installed, you will encounter an error message.

To download Git, visit the following page: Download Git

Start tool by Docker

First, install Docker inside your computer: Download Docker

After successfully installing Docker, open the terminal in the main folder of the cloned project.

Run the following commands from the terminal to create a Container in Docker made up of all the projects:

docker-compose -p soup-tool up --build

OR (for Mac)

docker compose -p soup-tool up --build

Once the command is completed, Docker Compose automatically creates a container that includes the following sub-containers, all of which are already running:

  • Angular container: represents the web tool, contactable at the localhost:4200
  • Python container (Backend): represents the Backend and Engine of the system, contactable at the localhost:8080
  • Memgraph container: in this container, the Memgraph database runs which offers 3 different ports.The most important is localhost:3000 which will open Memgraph Lab.

The Tool

This tool allows users to upload their own .csv files containing object-centric event data. After uploading, users can filter the data and map the file's columns to desired attributes.

Once mapping is complete, the server generates the graph of interest by executing queries on the Memgraph database. The resulting graph can then be: downloaded, filtered, aggregated based on custom attributes, and deleted if no longer needed.

Tip

Please refer to the project wiki for all the details.

📃You can download some event logs here.

Warning

To avoid undesired bugs, please upload event logs without spaces in column headers.

Note

As required by Memgraph, the timestamp should be in the following formats (optionally with milliseconds): YYYY-MM-DDThh:mm:ss or YYYY-MM-DDThh:mm or YYYYMMDDThhmmss or YYYYMMDDThhmm or YYYYMMDDThh.

Note

💭 Our tool is called Soup, with a logo showcasing a mix of rainbow noodles, symbolizing the dynamic and interconnected flow of object-centric process mining, much like the iconic image of rainbow spaghetti.

Contact

Feedback

We'd love to hear from you! Please share your feedback by filling out our form ➡️ here

Additional Features

More exciting features coming soon...🫕

About

Soup is a WebApp that allows the end user to create an Event Knowledge Graph (EKG). Starting from an event log, saved in a .csv file, the user is guided in creating the EKG to perform object-centric process mining analysis.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •