ISO 26262
Durch die wachsende Komplexität von E/E Systemen sowie die verkürzten Entwicklungszyklen wird die Auswahl der richtigen Entwicklungstools zu einer echten Herausforderung. Die ISO 26262 liefert in diesem Zusammenhang Anforderungen an die Prozesse für die Entwicklung sicherheitsrelevanter System. Hierbei werden Funktionen zunächst in mehr oder weniger sicherheitskritische Stufen eingeteilt (=ASIL Level). Anschließend empfiehlt der Standard je nach ASIL Level bestimmte Methoden für die Entwicklung und den Test der Systeme. Damit ist sie in den vergangenen Jahren zum de facto Standard für die Entwicklung sicherheitskritischer Systeme in der Automobilbranche geworden.
Kapitel 6 des Standards beschreibt Methoden zum Entwickeln und Testen von Software. Bezüglich der Testmethoden lässt sich beispielsweise mit einem Requirements-basierten Test zeigen, dass die Software die spezifizierten Anforderungen erfüllt – dies wird für alle ASIL Level empfohlen. Des Weiteren ist die Robustheit der Software von großer Bedeutung: Interface Tests, Fault-Injection Tests oder Resource Tests decken bspw. ungewolltes Verhalten oder mangelnde Hardwareresourcen auf. In der modellbasierten Entwicklung sollte zudem in einem Back-to-Back Test das Modell mit dem automatisch generierten Code verglichen werden um zu zeigen, dass beide sich identisch verhalten.
Um die Vollständigkeit von Tests zu dokumentieren, wird die Verwendung struktureller Coverage-Metriken der Softwareunit empfohlen. Für ausreichendes Vertrauen in die Abdeckung des Software Unit Levels nennt die ISO hierzu relevante Metriken wie Statement-, Decision- oder MC/DC Coverage.
Bei sicherheitskritischen Funktionen (ASIL C, ASIL D) wird zudem die Anwendung von Formalen Methoden empfohlen um ein hohes Vertrauen in die Verlässlichkeit des Systems zu ermöglichen. Wenn Requirements (=Anforderungen) im Softwarespezifikationsprozess in einer formalen Notation definiert werden kann der Computer ihre Bedeutung verstehen, wodurch unter anderem neue automatisierte Methoden der Verifikation ermöglich werden.
Zur Erfüllung der verschiedenen Verifikationsziele der ISO 26262 bietet BTC Embedded Systems mit der BTC EmbeddedPlatform eine integrierte Plattform, welche unterschiedliche Testmethoden effizient in einem Werkzeug vereint.