Code-Generierung für sicherheitsrelevante Anwendungen

Software ohne Fehler

20. Januar 2012, 14:25 Uhr | Von Dr. Darren Buttle
© ETAS

In der Automobilindustrie ist die modellbasierte Software-Entwicklung und Code-Generierung seit mehr als zehn Jahren Stand der Technik. In vielen Anwendungsbereichen hat sie die herkömmliche Entwicklungsmethodik abgelöst. Auch wenn die modellbasierte Entwicklung alleine die Sicherheit von Software nicht garantieren kann, so trägt deren inhärente Systematik wesentlich zu einer erfolgreichen Entwicklung von sicherheitsrelevanter Software bei.

Diesen Artikel anhören

Der Ausgangspunkt für die Einführung der automatischen Code-Generierung war die Idee, die Anzahl iterativer Entwicklungsschritte zu verringern und dadurch die Entwicklungszeit zu verkürzen. Durch die Verwendung von Modellen als Eingangsgröße für die Code-Generierung anstelle von textbasierten Anforderungsdokumenten für die manuelle Programmierung wird ein höherer Grad an Eindeutigkeit erzielt. Zusätzlich ermöglicht die Simulation auf Basis von Modellen das frühzeitige Erkennen von Fehlern im Entwurf von Steuerungen und Regelungen. Das Ergebnis ist, dass Code innerhalb kürzerer Zeit mit einer kleineren Fehlerquote erzeugt werden kann.

Bei der Entwicklung von sicherheitsrelevanter Software sind weitere Aspekte der Code-Generierung von Bedeutung: Sicherheitsstandards, wie beispielsweise die ISO 26262, enthalten Richtlinien für den Einsatz geeigneter Methoden und Maßnahmen in der Software-Entwicklung. Ziel ist es, das Fehlerrisiko zu minimieren und die Wahrscheinlichkeit für den Nachweis der Fehler, welche von den bestehenden Sicherheitsvorkehrungen nicht abgefangen werden, zu maximieren. Teil 6 des Standards ISO 26262 enthält die Richtlinien für die Software-Entwicklung, welche die Spezifikation von Anforderungen, die Architektur und den Entwurf der Software sowie deren Implementierung und Test behandeln.

Der vorliegende Artikel diskutiert, wie übliche Fehler beim Entwurf und in der Implementierung mit Hilfe der automatischen Code-Generierung vermieden und eine frühzeitige Absicherung des Entwurfs erreicht werden kann. Die Beispiele beschreiben Anwendungen des modellbasierten Entwicklungswerkzeugs Ascet von ETAS, welches seit vielen Jahren in der Automobilindustrie etabliert ist.

 


  1. Software ohne Fehler
  2. Vermeiden von Fehlern im Software-Entwurf
  3. Modularität, Abstraktion und Kapselung
  4. Vermeiden von Mehrdeutigkeiten
  5. Sichere numerische Operationen
  6. Unterstützung von Echtzeit-Systemen
  7. Absicherung des Entwurfs in der Simulation
  8. Automatische Code-Generierung sorgt für reproduzierbare Ergebnisse
  9. Automatisches Einhalten von Spracheinschränkungen
  10. Vermeidung von Laufzeitfehlern
  11. Markieren von potentiellen Problemen bei der Kompilierung

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu ETAS GmbH

Weitere Artikel zu Funktionale Sicherheit/Safety