Model-Driven Engineering of IoT Applications in
Industry 4.0 Production Systems

Room: Depending on the current situation of the Corona virus, we plan to allow you (separately) to work with the hardware on site as well. Group meetings will be via Zoom.

Kick-Off Meeting: TBD.


Prof. Dr. Bernhard Rumpe

Supervising Assistants: Course Type: Practical Course

Course ID: TBA

Subject: Model-Driven Engineering the Industry 4.0

Industry 4.0 is a vision of interconnected manufacturing in which smart, interconnected production systems optimize the complete manufacturing process to reduce cost and time-to-market. At the core of Industry 4.0 applications is the smart factory of the future, whose successful deployment requires solving challenges from many domains. Ultimately, it aims at enabling more efficient production down to individualized mass production of "lot-size 1".

The Internet of Things (IoT) connects everyday objects with each other and with the Internet. This allows IoT applications to react to and influence their environment. For example, a fire alarm system could connect not only to the alarm system but also to the lights of the building and warn deaf people of a fire by repeatedly switching the lights on and off.

Model-Driven Engineering enables building complex systems of systems to overcome the challenges that arise in Industry 4.0 applications, such as:

  • Interoperability: connect production systems, devices, sensors, and people
  • Information transparency: query data and connect digital planning with the run-time data collected from sensors
  • Technical assistance: provide the right abstraction to understand the complexity of Industry 4.0 systems and processes
  • Decentralized decision making: enable autonomous systems

In this lab course, you will develop a small-scale demonstrator of a typical Industry 4.0 application. This involves building up the factory using Raspberry Pi-controlled cars and Fischertechnik, and develop models in the architecture description languages (ADLs) MontiArc (for Fischertechnik) and MontiThings (for Raspberry Pi / IoT) that are deployed to the factory using code generators. By the end of the semester you have built a smart factory demonstrator and implemented models to describe a variable, dynamic production system, which are deployed to Raspberry Pis and Fischertechnik.

What you will learn:

  • Applying model-driven engineering and code generation in a real-world scenario
  • Manifesting the dynamic aspects of Industry 4.0 applications in an ADL
  • Agile software development in small teams
  • Deploying applications to cyber-physical systems (i.e., the smart factory).

Registration and briefing:

Please describe your experience (programming skills, attended lectures, lab courses, seminars).


  • Lecture »Softwaretechnik«
  • Principles of object-oriented design and programming
  • Interest in Model-driven Engineering
  • Optional: Familiarity with software language engineering and ADLs

Please inform yourself about the learning objectives in the "Modulhandbuch" (M.Sc.).