Wie Sicherheit von Modell-basierter Entwicklung profitiert

Autor / Redakteur: Dr. Peter Munk, Dr. Arne Nordmann, Dr. Eike Thaden, Rakshith Amarnath, Markus Schweizer, Dr. Simon Burton* / Sebastian Gerstl

Bei immer kürzeren Entwicklungszyklen steigt die Komplexität von elektrisch/elektronischen (E/E) Systemen im Auto stetig. Funktionale Sicherheitsnormen wie ISO 26262 schreiben arbeitsintensive Schritte wie die Fehlerbaumanalyse (FTA) und die Failure Mode and Effects Analysis (FMEA) vor, die oft manuell durchgeführt werden. Dieser Beitrag stellt eine semi-automatische Sicherheitsanalyse- und Optimierungsmethodik vor.

Anbieter zum Thema

Bild 1: Überblick über den SASAO Ansatz
Bild 1: Überblick über den SASAO Ansatz
(Bild: Robert Bosch)

Die Komplexität und die Leistungsanforderungen aktueller sicherheits- und echtzeitkritischer E/E Systeme im Automobil steigen stetig an. Dieser Trend resultiert aus immer fortschrittlicheren Fahrerassistenzfunktionen, welche mehr und mehr Funktionen und Rechenleistung benötigen. Diese Entwicklung wird durch die Vision von hochautomatisierten und autonomen Fahren angetrieben. Solche Systeme müssen immer längere Zeiträume fehlerfrei ohne Fahrereingriff funktionieren, weshalb auch die Sicherheits- und Verfügbarkeitsanforderungen steigen. Um im kostengetriebenen Automobilbereich konkurrenzfähig zu sein, muss die Entwicklung solcher Systeme in immer kürzeren Zyklen stattfinden.

Relevante funktionale Sicherheitsnormen, wie die ISO 26262 für den Automobilbereich, schreiben verschiedene arbeitsintensive und zeitaufwendige Schritte vor. Dazu gehören unter anderem die Spezifikation eines funktionalen Sicherheitskonzepts, die Erstellung von technischen Sicherheitsanforderungen für jedes Sicherheitsziel sowie die Verifikation und Validierung des Systems durch Tests, FTA und FMEA. Diese Schritte werden oftmals manuell und mit wenig bzw. keiner systematischen Wiederverwendung von bereits bestehenden Artefakten durchgeführt.

Bildergalerie

Um mit der steigenden Komplexität und den immer kürzeren Entwicklungszyklen Schritt zu halten, muss der Automatisierungsgrad in der Spezifikation der technischen Sicherheitsanforderungen sowie die Verifikation und Validierung der Systeme erhöht werden.

Die semi-automatische Safety-Analyse

Ein modellbasierter Systems-Engineering-Ansatz ist notwendig um die Komplexität von zukünftigen E/E Systemen zu beherrschen. Er stellt gleichzeitig die Grundlage für die semi-automatische Safety-Analyse und -Optimierung dar. Wir nehmen an, dass die funktionalen Anforderungen mit existierenden Requirements-Engineering-Methoden erhoben werden und vorliegen. Wie in Bild 1 dargestellt, wird aus den Anforderungen zunächst eine Funktionale Architektur entworfen. Diese ist unabhängig einer technischen Realisierung und besteht aus funktionalen Blöcken mit Ein- und Ausgängen sowie den Verbindungen dazwischen, wie in Bild 2 exemplarisch dargestellt. Als Modellierungssprache kann SysML verwendet werden, es stehen aber auch Alternativen wie die AADL zur Verfügung

Weiterhin nehmen wir an, dass die Sicherheitsziele mit existieren Hazard Analysis & Risk Assessment (HARA) Methoden erhoben werden und vorliegen. Die Sicherheitsziele werden nun mit den Komponenten der Funktionalen Architektur verknüpft. Entsprechend der Arbeiten zu Component Fault Trees [1] und Hierarchically Performed Hazard Origin and Propagation Studies (HiP-HOPS) [2], wird die Fehlerfortpflanzung pro Komponente mittels logischer UND und ODER Gatter zwischen den Ein- und Ausgängen modelliert. An jedem Ein- und Ausgang können dabei verschiedene Fehlermodi auftreten. Außerdem besteht die Möglichkeit, Fehlerursachen und deren Auftretenswahrscheinlichkeit zu modellieren.

Bild 3 zeigt exemplarisch die Fehlerfortpflanzung der „controller“-Komponente aus Bild 2. Der Eingang „in B“ hat einen Fehermodi namens „wrong“, welcher mit der Fehlerursache „basic“ zum Zwischenergebnis „intermediary“ logisch UND-verknüpft (&&) ist. Der Eingang „in A“ hat zwei verschiedene Fehlermodi („wrong value“ und „too late“), welche zusammen mit dem Zwischenergebnis „intermediary“ logisch ODER-verknüpft (||) ist. Das Ergebnis der ODER-Verknüpfung namens „error“ stellt gleichzeitig den einzigen Fehlermodi des Ausgangs „out“ dar.

In dem „Design and Allocation“-Schritt wird aus dem funktionalen Architekturmodell ein technisches Architekturmodell abgeleitet, welches Hardwarebausteine und Softwarekomponenten sowie deren Allokation beinhaltet. Das technische Architekturmodell kann ebenfalls in der SysML modelliert werden. Analog zum funktionalen Architekturmodell wird nun die Fehlerpropagation innerhalb jedes Hardwarebausteins und jeder Softwarekomponente modelliert.

Aus den angereicherten funktionalen oder technischen Architekturmodellen kann nun automatisch der Fehlerbaum für das Gesamtsystem erstellt und analysiert werden. Gleichzeitig kann die FMEA des Systems unterstützt werden, indem zentrale Artefakte wie der Strukturbaum, das Funktionsnetz und das Fehlernetz automatisch aus dem Architekturmodell erzeugt werden. Dies ist noch vor einer konkreten Umsetzung des Systems als Prototyp oder Produkt möglich, wodurch zu einem frühen Zeitpunkt in dem Entwicklungszyklus bereits Erkenntnisse zur funktionalen Sicherheit gewonnen werden können. Ändert sich das Architekturmodell im weiteren Verlauf der Entwicklung, können die modellbasierten Sicherheitsanalysen mit geringem manuellem Aufwand erneut durchgeführt werden. Die automatisch erzeugten FTA- und FMEA-Dokumente stellen außerdem wichtige Merkmale in der Argumentation ausreichender funktionaler Sicherheit für das Gesamtsystem dar.

Die semi-automatische Safety-Optimierung

Sofern die FTA-Ergebnisse nicht den erforderlichen Zuverlässigkeitswerten entsprechen, besteht die Möglichkeit die funktionale oder technische Architektur automatisch zu verbessern. Voraussetzung dafür ist ein Katalog mit Sicherheitsmechanismen, welche als Modelltransformationen abgelegt sind. Beispielhaft für einen Sicherheitsmechanismus sei die Replikation einer kritischen Komponente mit anschließendem Vergleich beider Ergebnisse genannt (Dual Modular Redundancy). Ein (heuristischer) Optimierungsalgorithmus, z.B. ein evolutionärer Algorithmus, wendet iterativ geeignete Sicherheitsmechanismen auf kritische Komponenten an und führt nach jedem Schritt erneut die FTA durch. So kann die Pareto-Front zwischen der Zuverlässig des Gesamtsystems und den Kosten, die durch die Laufzeit, den Speicherbedarf, die Chip- oder Platinenfläche und die finanziellen Kosten der zusätzlichen Komponenten der Sicherheitsmechanismen entstehen, ermittelt werden. Der Ansatz erleichtert zudem den Austausch von bewährten Sicherheitsmechanischen zwischen Geschäftseinheiten in Form von Modelltransformationen.

Zusammenfassung und Ausblick

Der vorgestellte Ansatz zur semi-automatischen Safety-Analyse und -Optimierung ist Teil eines modellbasierten Systems Engineering Prozess und erleichtert die Entwicklung von sicherheitskritischen Produkten. Wir haben den Ansatz in einem prototypischen Werkzeug umgesetzt und evaluieren ihn zurzeit in Zusammenarbeit mit mehreren Geschäftsbereichen der Robert Bosch GmbH.

Quellenverzeichnis

[1] B. Kaiser, P. Liggesmeyer und O. Mäckel, „A New Component Concept for Fault Trees,“ in Proceedings of the 8th Australian Workshop on Safety Critical Systems and Software, 2003.

[2] Y. Papadopoulos, M. Walker, D. Parker, E. Rüde, R. Hamann, A. Uhlig, U. Grätz und R. Lien, „Engineering failure analysis and design optimisation with HiP-HOPS,“ Engineering Failure Analysis, Bd. 18, Nr. 2, pp. 590-608, 2011.

(Dieser Beitrag wurde mit freundlicher Genehmigung der Autoren dem Tagungsband Embedded Software Engineering Kongress 2017 entnommen.)

* Dr.-Ing. Peter Munk ist Forschungsingenieur bei der Forschung und Vorausentwicklung der Robert Bosch GmbH.

* Dr.-Ing. Arne Nordmann forscht seit 2015 bei Bosch Corporate Research an Modell-basierten Ansätzen zur Analyse von (funktionaler) Sicherheit in Architekturen zum hoch-automatisiertem Fahren.

* Dr.-Ing. Eike Thaden erforscht bei der Robert Bosch GmbH Methoden zur modellbasierten Analyse und Optimierung sicherheitskritischer eingebetteter Systeme mit dem Schwerpunkt funktionale Sicherheit (Safety).

* Rakshith Amarnath ist als Forschungsingenieur in der Forschung und Vorausentwicklung der Robert Bosch GmbH tätig.

* Markus Schweizer hat mehr als 20 Jahre Erfahrung in der Embedded Software-Entwicklung für Automotive Anwendungen. Bei der Robert Bosch GmbH leitet er ein Projekt, das die Anwendung Modell-basierter Safety-Analysen für komplexe Systeme, wie dem (hoch-) automatisierten Fahren, untersucht.

* Dr. Simon Burton hat zurzeit die Rolle des Chief Experts der Forschung und Vorausentwicklung der Robert Bosch GmbH inne, in welcher er die Forschungsstrategie in den Bereichen funktionale Sicherheit, Security, Zuverlässigkeit und Verfügbarkeit von Software-intensiven Systemen koordiniert.

(ID:45831407)