Zum Inhalt springenSkip to content

Marc Kimmel

Software Engineer & Research Assistant

About me

Portrait of Marc Kimmel

In academia I am a research assistant at the Chair of Concurrent Systems at the University of Augsburg. I work on process engineering and process mining, with a focus on process-centric objects, built the Petri-Dish tool for empirical studies on the understandability of process models, and teach from introductory computer science courses through to one-on-one supervision of theses.

As a software engineer I build bespoke websites for clubs and companies, among them the ticket portal and the official website of TSV 1862 Friedberg.

In my voluntary work I lead the trampoline gymnastics department at TSV 1862 Friedberg and host major events such as the Bavarian Championships 2024 and the Bayern-Challenge 2025. For balance I run long distances, traditionally once a year at the Vienna City Marathon.

Projects

A selection of current and past work, either self-built or co-led.

ticket.tsv-friedberg.de

Ticketing and registration portal for TSV 1862 Friedberg: public forms, QR-based entry control, user and role management (ASP.NET Core).

tsv-friedberg.de

Official sports-club website with departments, training schedules, news, events and editor backend (Angular + PHP API).

marcompile

Independent software label for Android apps and web services. Currently featured: Kleiner Kalender (Play Store, Angular, Java Spring Boot and React Native).

Petri-Dish

Survey tool for investigating the understandability of Petri nets, developed at the chair and presented at the ICPM and Petri Nets conferences (Java).

Web games

Games in the browser, no sign-up: JetLagAux on the Augsburg transit network, plus the Brain-Games for colour memory, arithmetic and geography.

Custom websites & hosting

Bespoke websites on request, with concept, development and ongoing hosting for companies and organisations.

ticket.tsv-friedberg.de

Ticketing and registration portal for TSV 1862 Friedberg: public forms, QR-based entry control, user and role management (ASP.NET Core).

tsv-friedberg.de

Official sports-club website with departments, training schedules, news, events and editor backend (Angular + PHP API).

marcompile

Independent software label for Android apps and web services. Currently featured: Kleiner Kalender (Play Store, Angular, Java Spring Boot and React Native).

Petri-Dish

Survey tool for investigating the understandability of Petri nets, developed at the chair and presented at the ICPM and Petri Nets conferences (Java).

Web games

Games in the browser, no sign-up: JetLagAux on the Augsburg transit network, plus the Brain-Games for colour memory, arithmetic and geography.

Custom websites & hosting

Bespoke websites on request, with concept, development and ongoing hosting for companies and organisations.

ticket.tsv-friedberg.de

Ticketing and registration portal for TSV 1862 Friedberg: public forms, QR-based entry control, user and role management (ASP.NET Core).

tsv-friedberg.de

Official sports-club website with departments, training schedules, news, events and editor backend (Angular + PHP API).

marcompile

Independent software label for Android apps and web services. Currently featured: Kleiner Kalender (Play Store, Angular, Java Spring Boot and React Native).

Petri-Dish

Survey tool for investigating the understandability of Petri nets, developed at the chair and presented at the ICPM and Petri Nets conferences (Java).

Web games

Games in the browser, no sign-up: JetLagAux on the Augsburg transit network, plus the Brain-Games for colour memory, arithmetic and geography.

Custom websites & hosting

Bespoke websites on request, with concept, development and ongoing hosting for companies and organisations.

ticket.tsv-friedberg.de

Ticketing and registration portal for TSV 1862 Friedberg: public forms, QR-based entry control, user and role management (ASP.NET Core).

tsv-friedberg.de

Official sports-club website with departments, training schedules, news, events and editor backend (Angular + PHP API).

marcompile

Independent software label for Android apps and web services. Currently featured: Kleiner Kalender (Play Store, Angular, Java Spring Boot and React Native).

Petri-Dish

Survey tool for investigating the understandability of Petri nets, developed at the chair and presented at the ICPM and Petri Nets conferences (Java).

Web games

Games in the browser, no sign-up: JetLagAux on the Augsburg transit network, plus the Brain-Games for colour memory, arithmetic and geography.

Custom websites & hosting

Bespoke websites on request, with concept, development and ongoing hosting for companies and organisations.

Research

Research assistant at the Chair of Concurrent Systems, University of Augsburg.

Process Engineering and Process Mining

A business process is a defined sequence of steps: file a request, check it, approve it, invoice it. Process engineering means modelling such sequences and executing them as software. Process mining goes the other way round: every IT system records who carried out which step and when, and from those logs the process as it actually ran can be reconstructed, including every deviation from the plan.

My focus is process-centric objects. An ordinary object has fields and methods, and those methods can be called in any order; which order makes sense is known only to the surrounding code. A process-centric object brings that order with it, as a process that belongs to it. The difference shows in what is eventually executed. Normally a piece of software is built in two steps: domain experts and developers agree on a design, and someone then translates that design into source code. What runs is the code; the design hangs next to it on the wall and goes stale with the first change made only in the code. A low-code platform drops the second step: it executes the design itself and supplies the user interface, the persistence and the task management one would otherwise have to write. Design and implementation are thus the same artifact, and modelling becomes the actual development work.

The processes, that is, when which function in the program is allowed at all, are modelled as Petri nets: as graphs that record which step is possible when and what may happen concurrently. That poses the question of good design anew: principles such as low coupling, high cohesion or a single responsibility per class are formulated for source code. I study which of them carry over to a network of cooperating process classes, which ones are missing, and which can be stated so precisely that a tool can check them.

Beyond that I am interested in the empirical side: how understandable is a process model for the person who has to read it? That can be measured rather than asserted. In studies with students I ask questions about models and evaluate hit rate and response time against properties of the model, such as the number of nodes or the degree of concurrency. The tool for this, "Petri-Dish", I built myself.

Petri Nets

A Petri net is a bipartite graph of places (circles) and transitions (rectangles), connected by directed arcs. Places represent local states; the distribution of their tokens forms the marking and thus the overall state of the net. A transition is enabled as soon as each of its input places holds at least one token. When it fires, it removes one token from each input place and adds one to each of its output places.

Workflow nets restrict Petri nets to the modelling of business processes: they have exactly one input place and one output place, and every node lies on a directed path between them. Four patterns form their control flow: AND-splits and AND-joins are transitions with multiple outgoing or incoming arcs and create concurrency or synchronise it again, whereas XOR-splits and XOR-joins are places with multiple outgoing or incoming arcs and model alternative paths or merge them.

Workflow Net Example

In the example, at p2 the XOR-split chooses whether t2 or t3 fires, and both paths converge again at p3 (XOR-join). t4 is an AND-split that puts a token into both p4 and p5 simultaneously. After the upper (t5 → p6) and lower (t6 → p7) lanes have run independently, the AND-join t7 merges the two branches once p6 and p7 are both filled. Click a light-blue transition to fire it.

p1p2p3p4p5p6p7p8t1t2t3t4t5t6t7
Fired transitions:No transition fired yet.
Place (with tokens)Transitionenabled

Publications

  • Software Engineering Principles for Low-Code Process Modeling: A Case Study on the Netgrif Platform

    Marc Kimmel, Robert Lorenz (2026)

    1st International Workshop on Process-Centric Objects for Software Engineering (PROSE 2026) · FernUniversität in Hagen, co-located with AWPN 2026

    Not yet published.

  • Petri-Dish: A Petri Net Survey Tool for Education and Research

    Marc Kimmel, Patrizia Schalk, Robert Lorenz (2026)

    Petri Nets 2026 · Regular and Tool Papers (proceedings paper)

    DOI: 10.1007/978-3-032-27879-1_20
  • Model Factors Influencing Petri Net Understandability: A Case Study on Simplicity

    Marc Kimmel, Patrizia Schalk, Robert Lorenz (2024)

    AWPN 2024 workshop proceedings · Bonn: Gesellschaft für Informatik e. V., pp. 17-19 · 18 October 2024, Copenhagen

    DOI: 10.18420/AWPN2024-07

Teaching

Organising and running courses at the chair, from the first semester through to one-on-one supervision.

  • Informatics 1 · introduction to programming and algorithmic thinking for first-year students.
  • Informatics 2 · advanced concepts: data structures, algorithms, complexity.
  • Preparatory courses and programming courses · bridging school and university.
  • Seminars · supervising student seminar papers on Process Mining / Petri nets.
  • Theses · supervising Bachelor's and Master's theses.
  • Process Engineering Lab · practical course on modelling real business processes.

Sport & Voluntary Work

Trampoline gymnastics

Trampoline Gymnastics

Department head and coach at TSV 1862 Friedberg. Former competitive athlete at Bavarian and supra-regional championships. I reorganised the department in late 2021 and now manage training schedules, group structure and major events, among them the Bavarian Championships 2024, the Bayern-Challenge 2025 and regular performances at the historical "Friedberger Zeit" festival.

Marathon

Marathon Running

Active long-distance runner focused on endurance. Personal highlight and annual tradition: the Vienna City Marathon.