Embedded Systems

Herausforderung Prozessintegration

Nicht nur Kraftfahrzeuge, sondern auch andere Konsum- und Investitionsgüter enthalten immer mehr Software zur Steuerung mechatronischer Systeme. Um die Funktionsweise dieser Embedded Systems absichern zu können, müssen Mechatronik- und Softwareentwicklung über alle Phasen des Produktlebenszyklus hinweg enger verzahnt werden. Die Integration von Werkzeugen für die Steuerung des Software-Lebenszyklus in das Produktlebenszyklusmanagement ist dafür eine wesentliche Voraussetzung.

Die Entwicklung eingebetteter Systeme ist ein komplexer Prozess, an dem unterschiedliche Fachdisziplinen beteiligt sind, die unterschiedliche Systeme einsetzen, ihre Arbeit nach unterschiedlichen Abläufen organisieren und nicht dieselbe Sprache sprechen, sei es Landes- oder Fachsprache. Mechatronik- und Software-Komponenten werden deshalb in der Regel parallel zueinander entwickelt und erst zu einem relativ späten Zeitpunkt zusammen geführt, um die Funktionsweise des Gesamtsystems zu überprüfen. Das hat den Nachteil, dass die Entwickler ihre Ergebnisse nicht im Kontext absichern und auch die Auswirkungen von Änderungen auf die Ergebnisse der Nachbardisziplinen nur schwer beurteilen können.

Außerdem erschwert es multidisziplinäre Optimierungsaufgaben, bei denen es darum geht, die Funktionsweise des Gesamtsystems gegebenenfalls unter Inkaufnahme von suboptimalen Ergebnissen einzelner Systembestandteile zu optimieren. Denn in vielen Fällen könnte der Software-Entwickler ein Hardware-Problem einfacher und schneller lösen als der Mechanik-Entwickler. Software lässt sich nämlich schneller und kostengünstiger ändern als ein mechanisches Bauteil. Im Schnitt kommen auf jede Hardware-Änderung etwa zehn Änderungen an der Elektronik und 100 Software-Änderungen. Gerade diese Dynamik der Software-Entwicklung ist es jedoch, die bei der Entwicklung eingebetteter Systeme kontrolliert und koordiniert werden muss. Im Unterschied zu einer reinen Software-Applikation besteht bei Embedded Systems eine enge Wechselwirkung zwischen Software, Elektronik und Hardware. Eine unkontrollierte und nicht abgestimmte Software-Änderung kann daher dazu führen, dass das Gesamtsystem nicht mehr oder nur fehlerhaft funktioniert. Nicht von ungefähr entfallen heute auch 50 Prozent der Garantiekosten auf die eingebetteten Systeme.

Rationalisierungspotenzial in der qualitativen Absicherung

Analysiert man die Fehlerursachen und Möglichkeiten zur Effizienzsteigerung bei Embedded Systems, ergeben sich gerade in der qualitativen Absicherung über die Systemgrenzen hinweg die größten Rationalisierungspotenziale. Um eine hohe Qualität sicherzustellen, ist es notwendig, so früh wie möglich eine integrale Gesamtsicht auf das zu entwickelnde System und all seiner Konfigurationen und Varianten herzustellen und konsistent zu pflegen. Erst ein umfassender, systemorientierter Entwicklungsansatz gestattet jederzeit festzustellen, welchen Einfluss die Software auf die Hardware hat – und umgekehrt.

Im Prinzip geht es beim Systems Engineering darum, den aus der Software-Entwicklung bekannten Ansatz der Systemmodellierung auf das mechatronische Gesamtsystems zu übertragen. Im Vordergrund steht dabei die konsequente Verbindung von Anforderungen, Produktbeschreibung und Test auf den unterschiedlichen Reifegradstufen und Detaillierungsebenen. Die Mechanik bringt die Produktstruktur als Träger der vollständigen Produktbeschreibung in das V-Modell der Software-Entwicklung ein, was die Abbildung der Konfigurationsvielfalt und der Lifecycle-Prozesse einschließt, während die Elektronik ihr ausgereiftes Modularisierungskonzept als Grundlage für die Austauschbarkeit und Wiederverwendung von Komponenten beisteuert.

Integrale Software-Architektur für alle Disziplinen

Zentrale Herausforderung bei der Entwicklung von Embedded Systems ist die Prozessintegration. Das fängt an bei der Erfassung und Abbildung sämtlicher Anforderungen auf Systemebene: Hardware, Elektronik, Software und ihre Beziehungen zueinander müssen in einem integralen Architekturkonzept abgebildet werden, um die Abhängigkeiten nachvollziehbar zu machen und zum Beispiel die Auswirkungen von Änderungen bewerten zu können. Eine modellbasierte Entwicklung erleichtert die virtuelle Absicherung der eingebetteten Systeme.

Um die eingebetteten Systeme frühzeitig analysieren und absichern zu können, ist ein übergreifendes Konfigurations-Management mit einer leistungsfähigen Versionsverwaltung erforderlich, die der unterschiedlichen Änderungsdynamik in Mechatronik- und Software-Entwicklung Rechnung trägt. Die Produktkonfigurationen aus Software, Elektronik und Mechanik mit ihren unterschiedlichen Lebenszyklen müssen dabei über den Design- und Entwicklungsprozess hinaus nachvollziehbar bleiben, um Produkthaftungsprobleme zu vermeiden und hohe Servicequalität sicherzustellen. Grundlage der Prozessintegration ist ein disziplinenübergreifendes Lifecycle Management für Mechatronik und Embedded Systems. Eine integrale Produktentwicklungsplattform sollte:

  • Konfigurationen, Varianten und Änderungsdynamik frühzeitig nachvollziehbar zu dokumentieren
  • In allen Phasen des Lebenszyklus ein virtuelles Gesamtmodell zur Verfügung zu stellen
  • Bezüge zwischen Anforderungen, Funktionen, Produkt und Tests in verschiedenen Sichten abzubilden und bei Änderungen zu synchronisieren;
  • Individuelle Werkzeuge der Fachdisziplinen einzubinden und ihre Prozessanforderungen zu unterstützen