Model-Driven Engineering


An Overview of Current MDE Courses at Paderborn University


Model-Driven Engineering (MDE) focusses on the use of models, i.e., suitable abstractions, as primary artefacts in (software) engineering processes. Important tasks include specifying these models (metamodelling), deriving new models from other models (model transformation), and keeping different but related models consistent (model synchronisation).

Modellbasierte Softwareentwicklung (MBSE)


This lecture (on the BSc level) provides a gentle introduction to MDE. What is a model? What is a meta-model? What are meta-levels? Abstraction levels? Model transformations? All these basic questions and more are handled in this course using the development of Domain-Specific Languages (DSLs) as a motivation for MDE.

MDE has a lot to do with automation and tooling, so the model transformation tool eMoflon::IBeX will be used throughout the lecture to provide practical hands-on experience. eMoflon is based on the mature formalism of graph transformation, providing a uniform and visual set of languages for many important model management tasks.

As the course is all about software development, so-called mini-projects run parallel to the lecture and involve developing a small DSL of some kind. Participating in a mini-project can earn you a bonus if completed successfully. Wondering what can be developed in such a mini-project? Click on a picture below to view a screen cast from past mini-projects.


Fundamentals of Model-Driven Engineering (FMDE)


While it is important to develop an intuitive and practical understanding for central concepts such as models, metamodels, and model transformations, it is equally important to establish solid formal foundations for at least the basic concepts. This is especially the case when providing reliable tool support (e.g., static analyses) for MDE activities.

This lecture (on MSc level) introduces basic MDE concepts including models, metamodels, and model transformations, providing a precise and detailed formalisation using very basic category theory. FMDE is designed to be especially accessible to computer scientists by providing a hands-on constructive mapping of all definitions and results to programs in a main stream OO language (Java). While FMDE complements MBSE and revists the most important concepts in full detail, you can also attend FMDE without having attended MBSE.

Recipe Manager (G3)


Close Project

Reference Manager(G4)


Close Project

Recipe Manager (G5)


Close Project

Recipe Manager (G6)


Close Project

Recipe Manager (G7)


Close Project

Recipe Manager (G9)


Close Project

A DSL for Software Ecosystems


Close Project

A DSL for IFML-Web


Close Project

Process Opportunity Patterns


Close Project

A DSL for Exchanging PLC Configurations


Close Project

A DSL for Specifying Queueing Petri-Nets


Close Project

A DSL for STL (Models for 3D Printing)


Close Project

A DSL for IFML


Close Project

A DSL for Exchanging PLC Configurations


Close Project