Kompetenzfeld Softwaretechnik

Software durchdringt mehr und mehr die technischen Systeme zum Beispiel in der Produktion, in der Telekommunikation, im Verkehr oder in der Medizintechnik und ist dabei zu einem wesentlichen Innovationstreiber geworden: immer mehr innovative Funktionen zukünftiger mechatronischer Systeme werden mit Hilfe von Software realisiert.

Viele dieser Funktionen werden auf der Vernetzung einer Vielzahl von heute oftmals isoliert operierenden Systemen oder Teilsystemen beruhen, die erst gemeinsam, durch ihr koordiniertes Zusammenwirken, ihre Aufgabe erfüllen.

Modellbasierte Entwicklung eingebetteter Software


Die zur Koordination notwendige zeitkritische Kommunikation von Systemen und Systemkomponenten im Zusammenspiel mit der Regelung kontinuierlicher physikalischer Prozesse erfolgt durch immer komplexere Software. Gleichzeitig steigen die Anforderungen an die Qualität der Software, da es sich um häufig sicherheitskritische Systeme handelt, bei denen fehlerhaftes Verhalten hohe Kosten verursacht oder sogar Gefahren für ihre Nutzer und ihre Umgebung bedeuten.
Die Beherrschung der Entwicklung solch komplexer Systeme und insbesondere ihrer eingebetteten Software mit der geforderten hohen Qualität erfordert den Einsatz fortgeschrittener, modellbasierter Entwicklungsmethoden.

Optimierung von Softwareentwicklungsprozessen

Der systematische und durchgängige Einsatz möglichst formaler, durch den Rechner verarbeitbarer Modelle im Entwicklungsprozess (von den Anforderungen über den Entwurf bis hin zum Quelltext) ermöglicht zum einen eine effizientere Softwareentwicklung und zum anderen können auf diese Wiese viele Fehler bereits konstruktiv vermieden werden.
Gleichzeitig wird ein Fundament für weitreichende Analysen zur Überprüfung auf korrekte Funktionalität und Absicherung von geforderten, etwa sicherheitskritischen Eigenschaften gelegt.

Unsere Leistungen:

  • Firmenspezifischer Einsatz und Anpassung von Modellierungssprachen, zum Beispiel auf Basis von SysML/UML Modellierung der Struktur und des Verhaltens von eingebetteter Software auf verschiedenen Abstraktionsebenen (Anforderungen, Entwurf)
  • Integration mit regelungstechnischen Modellen
  • Analyse und firmenspezifische Optimierung von Softwareentwicklungsprozessen
  • Modelltransformationen zur semi-automatischen Ableitung und Konsistenzerhaltung verfeinerter Modelle (zum Beispiel automatische Quelltextsynthese aus Entwurfsmodellen)
  • Sicherstellung der Nachverfolgbarkeit von Anforderungen über verschiedene Entwicklungsmodelle hinweg
  • Anpassung und Konzipierung modellbasierter Test- und Simulationsverfahren
  • Formaler Nachweis von sicherheitskritischen Eigenschaften durch Verifikationsverfahren
  • Erstellung von Werkzeugprototypen