M.Sc. Stefan Kögel

My main interests are Graph Transformations, Machine Learning, Functional Programming (mainly Haskell), and Compilers. I have published papers and supervised several theses on these topics and am always happy to talk about them :)

My research focus is the development of a recommender system for structured data (EMF models, XML files, serialized UML diagrams, etc.) that is formalism agnostic. I achieve this by learning common changes in a set of noisy before and after examples. Such a set of examples could, for example, be extracted from the version history of an XML file in a version control system. The learned common changes can then be used to generate recommendations tailored to the example data set.

I try to do as much of my work as possible in Haskell: I once implemented a web crawler that finds and mines git repositories and stores its results in a SQLite data base; all in Haskell. (Results published here: 10.18725/OPARU-9850)

Outside of work I enjoy cycling, go/baduk/weiqi, and playing walking simulators.

Research Projects


ENsurance of Software evolUtion by Run-time cErtification

Other Projects

  • A visual interpreter for a Haskell-like language for teaching purposes: ClickyEvaluation.
  • Distributing students into groups according to their preferences. Available as a Moodle Plugin.
  • Several projects for industry partners



Kögel, Stefan; Tichy, Matthias
A Dataset of EMF Models from Eclipse Projects
Herausgeber: Open Access Repositorium der Universität Ulm
September 2018
Kögel, Stefan; Tichy, Matthias; Groner, Raffaela; Stegmaier, Michael; Götz, Stefan; Rechenberger, Sascha
Developing an Optimizing Compiler for the Game Boy as a Software Engineering Project
Software Engineering Education and Training Track of the 40th International Conference on Software Engineering (ICSE SEET 2018), Gothenburg, Sweden
Mai 2018


Kögel, Stefan
Recommender system for model driven software development
Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2017, Paderborn, Germany,
September 2017
Tichy, Matthias; Beaucamp, Luis; Kögel, Stefan
Towards Debugging the Matching of Henshin Model Transformations Rules
1st International Workshop on Debugging in Model-Driven Engineering (MDEbug), Austin, Texas
Juli 2017


Kögel, Stefan; Tichy, Matthias; Groner, Raffaela
Automatic Change Recommendation of Models and Meta Models Based on Change Histories
ME 2016 – Models and Evolution Workshop Proceedings (MODELS 2016), Saint-Malo, France
Oktober 2016
Kögel, Stefan; Cüppers, Joscha; Tichy, Matthias
ClickyEvaluation: A Step‐by‐Step Evaluator for Functional Programming Expressions
2nd European Conference of Software Engineering Education (ECSEE), 30 June and 1 July 2016, Seeon Monastery, Germany
Juni 2016


Supervised theses

  • Adding type checking and do notation to ClickyEvaluation
  • Statische Analyse einer Automotive Embedded Software: Automatische Abstraktion einer Strukturdarstellung von Sourcecode zur Komplexitätsreduktion
  • Abstraction of version changes in models
  • Converting EMF Ecore Meta Models to Haskell Algebraic Data Types
  • Erweiterungen des "Automatic recommenders" für Ecore Metamodelle
  • Exploiting dependent types for representing Graph-constraints in GADTs
  • Recommending Model Transformations via Subgraph Matching
  • Measuring and improving the performance of PureScript applications