ISO 29148 and MBSE: Erfahrungsbericht von Geoff Shuebrook
ISO 29148 sollte all denjenigen bekannt sein, die sich mit Anforderungen beschäftigen. Wie das mit MBSE zusammenpasst hat Geoff Shuebrook diese Woche in einem INCOSE-Webinar geteilt. Kernidee sind dabei eigenschaftsbezogene Anforderungen (Property Based Requirements). Geoff zeigt ebenfalls, wie dieses Konzept in Cameo (MagicDraw) umgesetzt werden kann.
Im Folgenden eine Zusammenfassung dieser spannenden Idee und der Link zu Video und weiteren Materialien.
Geoff Shuebrook
Geoff hat jahrzehntelang Erfahrung als Systems Engineer gesammelt. Aktuell ist er bei Lockheed Martin als Senior Systems Engineer tätig, und zwar schon seit 13 Jahren. Seine Schwerpunktthemen sind Modellierung und Testen.
In seinem Webinar bedient er sich dieses enormen Wissensschatzes, der sowohl aus Theorie und langjähriger Praxiserfahrung besteht. Dieser Artikel ist lediglich eine oberflächliche Zusammenfassung. Sein einstündiger INCOSE-Vortrag zu dem hier beschriebenen Inhalt ist bei Youtube zu finden.
Kernkonzepte der ISO/IEC/IEEE 29148
Der wichtige ISO-Standard 29148 geht zwar nicht davon aus, dass alle Anforderungen in Textform vorliegen, doch hier hat die Norm ihren Fokus. Ob Modelle Anforderungen komplett ersetzen können steht erst einmal nicht zur Debatte. Dass sich aber Modelle und Anforderungen gut ergänzen habe ich schon vor über fünf Jahren geschrieben.
Unter diesem Aspekt hat Geoff die Norm nach Kernideen untersucht, welche die Basis für ein integrierendes Konzept dienen könnten. Dabei hat er die folgenden drei identifiziert:
- Kontrollierter Wortschatz – Die Norm fordert, dass „alle Begriffe formal definiert und konsistent angewendet werden sollen“.
- Konzeptmodell – Die Norm fordert Kriterien als „messbare qualitative oder quantitative Eigenschaften, die für eine Anforderung festgelegt werden.“
- Muster & Eigenschaften – Die Norm gibt Beispiele für Satzschablonen, die (unter anderem) mit Eigenschaften befüllt werden.
Diese Konzepte sind unabhängig davon, ob wir mit natürlicher Sprache arbeiten oder mit Modellen.
Semiotisches Dreieck
Ein weiteres Fundament für Geoff’s Ansatz ist das Semiotisches Dreieck:

Aufpassen! „Symbol“ ist in der Regel ein Wort, das typischerweise in einem Glossar auftauchen würde, aber nicht die Bedeutung des Symbols. Erst der „Begriff“ gibt dem Symbol eine Bedeutung.
Sowohl im Requirements Engineering als auch in der Modellierung überspringen wir gern den Begriff unter der Annahme, die Bedeutung sei offensichtlich. Das ist pragmatisch und oft auch unproblematisch, birgt aber auch die Gefahr von Missverständnissen.
Arbeiten von Giancarlo Guizzardi und Patrice Micouin
Um nun die identifizierten Konzepte der ISO 29148 und das Semiotische Dreieck zusammenzubringen, hat Geoff auf die Arbeit zur konzeptionellen Modellierung von Giancarlo Guizzardi zurückgegriffen. Guizzardi geht es primär um eine eindeutige und widerspruchsfreie Kommunikation, die auf dem semiotischen Dreieck aufsetzt.
Patrice Micouin ist der Autor des Buchs Model Based Systems Engineering, das auch die Beschreibung einer Property-Based Requirements Method enthält. Das Paper Requirements Management within a FullModel-Based Engineering Approach von Yves Bernard gibt einen guten Überblick.
Property-Based Requirements in MagicDraw/Cameo
Spannend ist nun die praktische Anwendung. Dazu hat Geoff live gezeigt, wie Property-Based Requirements in Cameo modelliert werden können. Das ist im Video ab der 30. Minute zu sehen.
Von den drei Eckpunkten des semiotische Dreieck bleiben zwei relativ konstant, nämlich der kontrollierte Wortschatz und das Konzeptmodell. Geoff schläft vor, diese sorgfältig zu entwickeln und in einem Repository abzulegen, um eine Wiederverwendung zu ermöglichen. Dieser Philosophie folgend schlägt er auch Blöcke (Klassen) für die Symbole vor und Block-Instanzen (Objekte) für die Dinge.
Geoff zeigt in Cameo ein konkretes Beispiel aus der Fahrzeugtechnik, welches auf der folgenden Anforderung basiert:
Das Freiraummaß zwischen dem Rad und den mit dem Rad zusammenhängenden Bauteilen muss über den gesamten Radlauf mindestens 7 mm betragen.
Im ersten Moment erscheint die Anforderung plausibel und verständlich. Doch um hieraus eine eigenschaftsbezogene Anforderung zu machen müssen wir zunächst alle Symbole definieren. Was ist ein Rad? Was ist der Radlauf? Diese Zusammenhänge Modelliert Geoff in Cameo als ConceptDescriptions mit Relationen und Eigenschaften. Hier ist als Beispiel das Freiraummaß (Clearance):

Diese Vorarbeit ermöglicht uns nun, mit sauber definiertem Vokabular in Cameo zu arbeiten.
Die Modellkette und deren Anwendung ist im Video ab Minute 48:40 live zu sehen >>
YouTube
Der Nutzen von Property-Based Requirements
Wer sich das Video an dieser Stelle angeschaut hat wird feststellen, dass Geoff viel Vorarbeit geleistet hat, um diese einfache Anforderungen eigenschaftsbezogen formulieren zu können. Wozu der Aufwand?
Der wirkliche Mehrwert kommt zu Tage, wenn es darum geht, die Anforderung zu Verifizieren. Denn das ist nun bereits auf Modellebene möglich. Cameo kann nämlich nun über Modelchecking sicherstellen, dass die Anforderung (Freiraummaß mindestens 7mm) mit den ausgewählten Bauteilen nicht verletzt wird.
Um dies zu prüfen, müssen nicht alle Eigenschaften in Cameo gewartet werden. In Geoff’s Beispiel stammen viele Eigenschaften aus Catia, also dem CAD-System.
Doch Modelchecking ist nur eine von vielen Anwendungsmöglichkeiten von eigenschaftsbezogen Anforderungen. Allein schon die Klarheit in der Kommunikation ist bei komplexen Entwicklungen ein beachtlicher Mehrwert.
Property-Based Requirements ohne SysML
Geoff ist bei seinem Ansatz sehr pragmatisch vorgegangen. Dazu gehört die Wahl von Cameo als Platform für die Umsetzung. Der Einsatz erfordert nicht nur, dass das Team mit Cameo umgehen kann. Er erfordert auch eine Aufwändige Anpassung und Profiling, sowie sorgfältige Modellpflege. Nur große, komplexe Projekte (und Organisationen) können sich diesen Aufwand leisten und rechtfertigen.
Beim Schauen des Videos musste ich unwillkürlich an Valispace denken. Eine zentrale Idee in dem Werkzeug ist die Parametrisierung, sowie die automatische Prüfung von Anforderungen auf Basis von Parametern. Ohne es ausprobiert zu haben vermute ich, dass sich viele der von Geoff untersuchten Konzepte mit Valispace umsetzen lassen, ohne den gesamten SysML-Unterbau von Cameo mitschleppen zu müssen.
Fazit
Eigenschaftsbasierte Anforderungen sind eine charmante Idee. Doch Ideen sind schön und gut, wenn die Umsetzung unklar ist. Geoff hat in diesem Webinar der Systems Engineering-Gemeinschaft einen enormen Dienst erwiesen, indem er einen praktischen Weg gezeigt hat, die Idee mit Industriewerkzeugen umzusetzen. Dafür ein großes Dankeschön.
Ich möchte noch erwähnen, dass Geoff sämtliche Artifakte (Präsentation, Modelle, etc.) den Zuschauern des Webinars zur Verfügung steht. Da er diese nur für kurze Zeit auf seinem privaten Server online stellt, möchte ich einen schnell veralteten Link hier nicht einstellen. Bei Interesse am Besten nachfragen.
Titelbild: Pixabay