Lehrstuhl für Programmiersysteme

Wir liefern ingenieurwissenschaftliche Antworten für Software-Ingenieure, die parallele Software im industriellen Rahmen für Multicore-Rechner, für daraus bestehende verteilte Systeme, sowie für vernetzte eingebettete Systeme entwickeln. Wir arbeiten Programm-Code-basiert, erstellen lauffähige Prototypen und evaluieren diese quantitativ und qualitativ.
Eckpunkte unserer Forschungsthemen:

  • Wir arbeiten an Programmiermodellen für heterogene Parallelität und erzeugen dafür portablen und effizienten Code für Multicores, GPUs, Acceleratoren, Mobile Geräte, FPGAs u.ä.
  • Wir unterstützen die Parallelisierung von Software für Multicore-Rechner. Unsere Werkzeuge analysieren Code-Repositories und helfen den System-Entwickelnden bei der Migration und Refaktorisierung.
  • Wir analysieren Programme. Unsere Code-Analysewerkzeuge sind schnell, interaktiv, inkrementell und arbeiten teilweise selbst parallel. Sie finden Wettlaufsituationen, konkurrierende Ressourcenzugriffe etc. im Code und zeigen den Software-Entwickelnden Verbesserungsvorschläge punktgenau und in der Entwicklungsumgebung an.
  • Wir testen parallelen Code und diagnostizieren Problemursachen. Unsere Werkzeuge erzeugen Testdaten, finden Ursachen von erratischem Laufzeitverhalten und schützen gegen Authentizitätsangriffe.

Mitarbeitende

 

Julian Brandner
Tobias Feigl
Tobias Heineken
Bernd Hindel
Detlef Kips
Patrick Kreutzer
Florian Mayer
Daniela Novac
Norbert Oster
Michael Philippsen
Lukas Rotsching
Hans Jürgen Schneider
David Schwarzbeck
Alma Sinanović
Margit Zenk

Projekte

 

Lehrveranstaltungen im SS2025

 

Optimierungen in Übersetzern (UE2)
Testen von Softwaresystemen (TSWS)
Analyse und Design objektorientierter Softwaresysteme mit der Unified Modeling Language (UML) (OOAD)

 

Lehrveranstaltungen im WS2025/26