Research 🔗
Currently, my research focuses on the interplay of methods and tools capturing various meta-levels:
-
At the Language Workbench-level, the design of Domain-specific languages for supporting low code development as well as languages that are designed for, e.g., verifiability, testability, learnability, explainability. The point here is to guarantee properties via meta-level reasoning.
-
At the IDE-level, property-preserving transformation approaches to support, e.g., correctness by construction, where the full semantics needs to be preserved, systematic (verification) Benchmark generation, where the satisfaction of, e.g., pre/post conditions or LTL formulas is maintained, or aspect- specific view generation for diagnosis. The latter may even provide so-called model explanations or outcome explanations for computational structures like Random Forests.
-
At runtime, behaviour/observation-based inference of models and computational structures comprising automata learning, but also other machine learning techniques providing, e.g., Random forests and Neutral Networks. This inference may be active, i.e., explicitly querying the artefact to be analysed, as typical for automata learning, or passive, relying an provided data sets, as typical, e.g., in most Neural Network scenarios.
- Concurrency Workbench
- The Fixpoint Analysis Machine (FAM)
- The Agent Building Center (ABC, later jABC)
- The Electronic Tool Integration Platform (ETI, later jETI)
- The LearnLib
- The Automata Lib
- The (Language-Driven Engineering) LDE Ecosystem comprising CINCO and DIME
- Pyrus
- Forest Gump
- The ADD-Lib
Teaching 🔗
I have taught Formal Methods in System Design (and related subjects) for 30 years as a professor. I introduced game-based learning for teaching strategy planning using Connect 4 and wrote an introductory book Foundations of Advanced Informatics and the German version Grundlagen der höheren Informatik.
Positions 🔗
- 1997 – today: Full Professor for Programming Systems and Compiler Construction
Faculty of Computer Science, TU Dortmund University, Germany - 1994 – 1997: Full Professor for Programming Systems
Faculty of Mathematics and Computer Science, University of Passau, Germany - 1990 – 1993: Associate Professor for Distributed Systems
Faculty of Mathematics and Natural Sciences, RWTH Aachen University, Germany - 1989 – 1990: Postdoc Researcher
Department of Computer Science, Aarhus University, Denmark - 1987 – 1989: Research Fellow
Laboratory of Foundations of Computer Science (LFCS), The University of Edinburgh, Scotland
Education 🔗
- 1987: PhD in Computer Science
Faculty of Engineering (Supervisor Prof. Langmaack), Kiel University, Germany - 1983: Diploma in Mathematics
Faculty of Natural Sciences, Kiel University, Germany - 1977: Abitur (A level)
Hermann-Böse-Gymnasium, Bremen, Germany
Scientific Meetings, Journals & Community Activities 🔗
I have served on more than 150 Program Committees and over 30 times as chair, on numerous Steering Committees and in Editorial Boards.
I am (co-)founder of the
- International Journal on Software Tools for Technology Transfer (STTT), Springer,
- International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS),
- European Joint Conference on Theory and Practice of Software (ETAPS),
- International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISoLA),
- International School on Tool-based Rigorous Engineering of Software Systems (STRESS), and
- Challenge for the Rigorous Examination of Reactive Systems (RERS).
I am an editorial board member of Springer’s Innovations in Software and Systems Engineering: A NASA Journal, and have been a member of the editorial board of the ACM Transactions on Programming Languages and Systems (TOPLAS), Kluwer’s / Springer’s Formal Methods in System Design, and Springer’s Software-Concepts and Tools.
I am the longest serving editor of the LNCS (Lecture Notes in Computer Science), the leading proceedings series in computer science, for the sub-libraries Theoretical Computer Science, Programming Techniques and Software Engineering and Advanced Research in Computing and Software Science, and I am member of the GI, the ACM and EASST.
Supervision of Graduate Students and Postdoctoral Fellows 🔗
I (co-)supervise(d) over 40 PhD students of which 30 already completed their PhD studies successfully. 13 became associate/full professors:
- Jens Knoop (TU Wien, Austria)
- Michael Mendler (University of Bamberg, Germany)
- Markus Müller-Olm (University of Münster, Germany)
- Gerald Lüttgen (University of Bamberg, Germany)
- Falk Schreiber (University of Konstanz, Germany)
- Dirk Koschützki (Furtwangen University, Germany)
- Alfons Geser (Leipzig University of Applied Sciences (HTWK), Germany)
- Andreas Claßen (University of Applied Sciences Aachen, Germany)
- Achim Dannecker (University of Applied Sciences and Arts Northwestern Switzerland, Switzerland)
- Falk Howar (TU Dortmund University, Germany)
- Sven Jörges (University of Applied Sciences and Arts, Germany)
- Maik Merten (Federal University of Applied Administrative Sciences, Münster, Germany)
- Anna-Lena Lamprecht (University of Potsdam, Germany)
Fellowships and Awards 🔗
- 2020: Honorary Professor Amity University, India
- 2020: Amity Award Software Engineering
- 2015: CAV Artifact Award for LearnLib
- 2010: ZULU Competition Winner in active automata learning
- 2002: Most Influential PLDI Paper Award for Lazy Code Motion (1992)
- 2001: Start-up-Prize, Start-up Competition Dortmund
- 1996: European IT Award
Institutional Responsibilities 🔗
- 2013 – today: Chairman of the PhD commission at the Department of Computer Science at the TU Dortmund University, Germany
- 2007: Member of the Committee for the new Constitution of the TU Dortmund University, Germany
- 2007: Member of the Finding Committee for the Advisory Board of the TU Dortmund University, Germany
- 2006 – 2007: Member of the Senate, TU Dortmund University, Germany
- 2002 – 2006: Faculty Dean of Computer Science, TU Dortmund University, Germany