Modellbasierte Risikoanalyse sicherheitskritischer Systeme

Seite: 3/3

Anbieter zum Thema

Domänenspezifische Modellierungssprachen mittels UML Profiling

UML Profiling ist ein Mechanismus, der schon seit über 10 Jahren Bestandteil der UML ist. Er erlaubt die Entwicklung domänenspezifischer Modellierungssprachen, die sich dann mit den meisten UML-Werkzeugen nutzen lassen.

Ein UML-Profil ist ein spezielles Package, welches sogenannte Stereotypen definiert. Diese lassen sich auf Standard-Elemente der UML (wie Packages, Klassen, Anwendungsfälle, etc.) anwenden, um damit eine domänenspezifische Bedeutung auszudrücken. Ein Stereotyp kann zudem spezifische Eigenschaften für diese Modellelemente einführen (sogenannte „Tag Definitions“) und sogar ein eigenes Symbol besitzen.

Im Rahmen eines Projektes für die Schweizerischen Bundesbahnen haben wir nun ein UML-Profil für die Modellierung der wichtigen Konzepte aus Bild 2 entwickelt. Bild 3 in der Bildergalerie zeigt einen Ausschnitt dieses Profils. Was in diesem Diagramm auffällt ist, dass die Namen vieler Tag Definitions mit einem Slash ("/") beginnen. Dies bedeutet, dass die Werte dieser Eigenschaften nicht durch den Modellierer festgelegt müssen, sondern durch das UML-Werkzeug automatisch berechnet werden. Dazu sind diesen Eigenschaften entspreche Formeln aus der Risikoanalyse hinterlegt.

Anwendung

Bild 6 in der Bildergalerie zeigt einen Ausschnitt aus einem vereinfachten Risikomodell für einen fiktiven Bahnübergang (die echten Risikomodelle sind wesentlich komplexer). Das Diagramm nutzt das oben eingeführte UML-Profil und zeigt sowohl Ursachen (gelb) als auch Gefährdungen (orange), die zu verschiedenen Kollisionen (rot) führen können. Die Kollisionen zeigen zudem einige der automatisch berechneten Eigenschaften mit und ohne Berücksichtigung von Schutzmaßnahmen (grün) und Sicherheitsanforderungen (blau).

Erfahrungen im praktischen Einsatz

Bei der projektspezifischen Ausarbeitung konkreter Risikoanalysen sind aber auch gewisse Schwierigkeiten aufgetreten:

  • Kulturelle Schwierigkeiten: Nach mehr als 10 Jahren Stabilität wurden die EN 50126 Normen einer größeren Revision unterzogen, die sich noch nicht etabliert hat. Dies führte bei Zulassungsbehörden und Bahnbetreiber zu unterschiedlichen Interpretationen und entsprechenden Diskussionen. Zudem war ein modellbasierter Ansatz für viele Beteiligten grundsätzlich neu, da Risikobetrachtungen bisher hauptsächlich mittels individueller EXCEL-Sheets durchgeführt wurden.
  • Modell-Strukturierung: Es waren mehrere Iterationen notwendig, um eine optimale und gut wartbare Modellstruktur zu finden. Zudem war es oft schwierig, die Ursache für einen absurden berechneten Wert zu finden. Hier hat ein im Verlauf des Projekts eingeführter automatischer "Plausibilitäts-Check" große Erleichterung gebracht.
  • Performanz: Die Client/Server-Architektur des verwendeten UML-Werkzeugs mit Client-seitigen Berechnungen war nur bedingt für die teilweise sehr komplexen Berechnungen geeignet. Dies führte dazu, dass die Diagramm-Editoren teilweise sehr träge auf Änderungen reagierten, da viele Eigenschaften neu durchgerechnet werden mussten.

Zusammenfassung

Die Risiken komplexer, heterogener Systeme können und müssen quantifiziert werden, damit sie nachvollziehbar, akzeptierbar und damit auch vertretbar gemacht werden können. Die modellbasierte Risikoanalyse ermöglicht eine strukturierte Identifikation von Systemrisiken sowie die systematische Ableitung von Gegenmaßnahmen und Sicherheitsanforderungen aus diesen Risiken. Mittels UML Profiling lässt sich eine modellbasierte Risikoanalyse mit einem herkömmlichen UML-Werkzeug durchführen und bei Bedarf eng mit anderen Modellen verknüpfen. Der Autor ist auch in die Weiterentwicklung des UML Testing Profils [UTP] der OMG für modellbasiertes Testen involviert. Hier ist insbesondere die Integration von Risikoanalysen mit Techniken des risikobasierten Testens von großem Interesse.

Literatur- und Quellenverzeichnis

  • [EN50126] CENELEC: Railway applications - The specification and demonstra-tion of Reliability, Availability, Maintainability and Safety (RAMS) - Part 1: Generic RAMS Process, CENELEC - European Committee for Electrotechnical Standardization, WG14, prEN 50126-1, DRAFT, 04-SEP-2012
  • [SysML] Object Management Group: OMG Systems Modeling Language (OMG SysML™) – version 1.3, ptc/2012-06-01, Juni 2012
  • [UTP] Object Management Group: UML Testing Profile (UTP) – version 1.2, ptc/2012-09-13, September 2012

* Markus Schacher ist Mitbegründer und KnowBody von KnowGravity Inc., einem kleinen aber feinem Beratungsunternehmen mit Sitz in Zürich (Schweiz), welches sich auf modellbasiertes Engineering spezialisiert hat. Heute ist er als aktives Mitglied der Object Management Group (OMG) in die Entwicklung verschiedener Modellierungssprachen involviert und ist Ko-Autor dreier Bücher zu den Themen Geschäftsregeln, SysML sowie operationellen Risiken.

(ID:44295414)