Model-driven Software Engineering for Connected Vehicles

In cooperation with DSA Daten- und Systemtechnik GmbH

Update 18.03.2020: Due to the Corona crisis, we will not be able to offer this lab this semester. We plan to offer it in the upcoming winter semester 2020/21.

Room: TBA

Kick-Off Meeting: TBA


Prof. Dr. Bernhard Rumpe

Supervising Assistants: Course Type: Practical Course

Course ID: TBA

Subject: Model-driven Software Engineering for Connected Vehicles

The Internet of Things connects everyday objects with the Internet. In recent years, more and more vehicles have been equipped with Internet access. While one of the main reasons for adding Internet access is to provide software updates over the air, this also makes these vehicles part of the Internet of Things.

By leveraging the sensors and actuators of the vehicles, new use-cases arise for drivers, vehicle manufacturers, and road operators: - Front collision warning and brake assistant - Fleet management and stolen vehicle tracking - Pot-hole detection (by aggregating sensors of multiple vehicles) - Remote diagnostics

In the future, car-sharing customers will also expect to take functions (or "apps") with them across all vehicles they use. Systems such as Android Auto and Apple CarPlay already allow drivers to enhance their infotainment systems with personalized apps. However, this is currently not possible for functions that are integrated in the vehicle's electronic control units (ECUs).

What you will learn:

In this course, you will extend a code generator that allows generating IoT applications from architecture descriptions. Furthermore, you will build a microcontroller-driven toy car with multiple sensors and actuators and connect it wirelessly to an ECU. You will deploy the code that is generated from the architecture onto the ECU and the microcontroller to sense the environment of the toy car and use its actuators to control its behavior. In a second step, the ECUs of multiple cars can be connected to enable car-2-car communication.

Registration and briefing:

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



  • Java
  • Git
  • C++
  • Lecture Applied Software Engineering within the life cycle of Automotive Electronics
  • Lecture Software Language Engineering

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