Systems Engineering Trends

Jede Woche Neuigkeiten aus der Welt des Systems Engineering

OMGStandards & Methoden

SysML v2 FAQ: Antworten von Tim Weilkiens, Stephan Roth & Uwe Kaufmann

In den letzten Wochen gab es auf den „üblichen Kanälen“ die Ankündigung, dass der aktuelle Stand der SysML v2 von der OMG angenommen wurde. Leider konnte ich erstaunlich wenig Details dazu finden, was das eigentlich bedeutet und wie es weitergeht.

Also habe ich mich an die „üblichen Verdächtigen“ gewandt, von denen ich extrem hilfreiche Antworten bekommen habe, die ich hier teilen möchte.

Die üblichen Verdächtigen

Der wohl bekannteste Treiber der SysML v2 im deutschsprachigen Raum ist Tim Weilkins, der auch für die OMG die SysML v2-Arbeitgruppe leitet. Von Tim bekam ich dann auch die wichtigsten Informationen zum Treffen in Kurzform. Die Object Management Group (OMG) ist eigentlich eine sehr offene Gruppe, die Informationen ohne Hürden zugänglich macht. Das bedeutet aber nicht, dass sie exzessives Marketing betreibt.

Die OMG ist bezüglich offizieller Informationen, was auf dem Meeting passiert ist, leider immer etwas zurückhaltend.

Tim Weilkiens

Leider haben wir kurzfristig keinen Gesprächstermin gefunden. Tim verwies mich an Uwe Kaufmann und Stephan Roth, die beide ebenfalls aktiv am SysML v2-Standardisierungsprozess mitwirken.

Mit Uwe führte ich ein längeres Gespräch online. Uwe engagiert sich schon lange in verschiedenen Konsortien und gab bereits 2019 ein hier veröffentlichtes Interview zu SysML v2. Er engagiert sich zur Zeit auch stark für SpecIF, eine Konvention für die Semantik von System-Modellen.

Stephan traf ich auf der diesjährigen ReConf, wo er einen Vortrag zu SysML v2 hielt. Auch er engagiert sich seit vielen Jahren bei der OMG und ist, wie Tim, bei oose tätig.

Neben den hier genannten Personen gibt es natürlich noch viel mehr, insbesondere außerhalb Deutschland. Der bekannteste dürfte Sandy Friedenthal sein. Weiter unten habe ich ein Interview mit Sandy eingebettet.

Im Folgenden habe ich die Gesammelten Informationen als FAQ zusammengefasst:

Was ist die SysML überhaupt?

Die Systems Modeling Language (OMG SysML) ist eine grafische, auf UML 2 basierende, standardisierte Modellierungssprache. Ihre Anwendung findet sie im Bereich Systems Engineering für die Modellierung verschiedener komplexer Systeme

Wikipedia

Die meisten Leser wissen wahrscheinlich bereits, was SysML ist (hier eine Reihe von Artikeln zum Thema in diesem Blog). Wichtig ist, dass die SysML zwar grafisch ist, die Diagramme jedoch nur eine Sicht auf das System sind. „Malen“ ist nicht dasselbe wie „Modellieren“.

Was sind die wichtigsten Unterschiede zur SysML 1.x?

Keine UML-Abhängigkeiten: Der größte Unterschied ist sicherlich der Unterbau. SysML war anfangs eine „erweiterte Schnittmenge“ der UML. Einige Modellelemente wurden weggelassen, andere hinzugefügt, wieder weitere variiert. Das änderte aber nichts daran, dass der (formale) Unterbau der Sprache Abhängigkeiten zur UML hat. Das ist bei der neuen Version nicht mehr der Fall. Weiterhin basiert die zugrundeliegende Sprache (KerML, siehe unten) auf einer formalen Semantik.

Nutzung vor Definition: Von (fast) allen Modellelementen gibt es zwei Ausprägungen: „Usage“ und „Definition“. Für die Nutzung wichtig ist jedoch, dass die Definition optional ist, was die Modellierung vereinfachen und beschleunigen kann.

Textuelle Notation: Neben der grafischen führt die SysML v2 eine textuelle Notation ein.

API: Der Standard definiert eine Schnittstelle (API), mit der wir mit dem Modell interagieren können. Dadurch werden viele neue Anwendungsfälle möglich. Insbesondere wird damit Integration drastisch vereinfacht.

Wo finde ich die Standards und was kosten sie?

Im Gegensatz zu anderen Organisationen (wie bspw. ISO) stellt die OMG alle Standards kostenlos zur Verfügung. Bezüglich SysML ist da jedoch nur SysML v1.x zu finden. Für die Arbeit an der Version 2 hat die Arbeitgruppe das gitHub-Repository Systems-Modeling eingerichtet. Dort finden wir nicht nur die Standarddokumente, sondern auch viele andere Unterlagen, wie Präsentationen und sogar eine Referenzimplementierung.

Wie sieht der neue Unterbau aus?

Überraschung! Es gibt nicht nur einen neuen Standard, sondern gleich mehrere. Die dazugehörigen Dokumente aus dem gitHub Systems-Modeling-Repository habe ich hier direkt verlinkt:

KerML — Die Kernel Modeling Language (KerML) bietet eine anwendungsunabhängige Syntax und Semantik zur Erstellung spezifischerer Modellierungssprachen. SysML v2 ist dabei nur eine, es könnten weitere dazukommen. KerML basiert weiterhin auf einer formalen Semantik (First Order Logic). Dadurch

Es ist denkbar dass eine UML v3, falls es sie geben sollte, ebenfalls auf KerML basieren könnte.

Stephan Roth

SysML — Die SysML wurde nun spezifiziert auf Basis von KerML.

SysML API — Für die API gibt es ebenfalls eine eigene Spezifikation.

Weiterhin gibt es noch ein Dokument für die Transformation von SysML v1 auf v2, das jedoch primär für Werkzeughersteller interessant ist.

Quelle: gitHub/Systems-Modeling (CC BY 4.0)

Was genau bedeutet die Abnahme der SysML v2 durch die OMG?

Die Abnahme bedeutet nicht, dass der Standard offiziell ist (siehe nächste Frage).

Die Entwicklung eines OMG-Standards erfolgt in mehreren Phasen, darunter die Einreichung von Vorschlägen, die Prüfung durch den technischen Ausschuss, die öffentliche Prüfung und die Abstimmung durch die OMG-Mitglieder. Sobald die Spezifikation all diese Phasen durchlaufen hat und die endgültige Version genehmigt wurde, gilt sie als fertiggestellt. Die Abnahme ist der letzte Schritt vor der Fertigstellung.

Am Ende des Meetings im März 2023 wurden drei Finalization Task Forces (FTF) gegründet, welche die zukünftigen Standards (KerML, SysML und API) finalisieren werden. Zu den Aufgaben der FTF gehört es, alle verbleibenden Probleme zu lösen und sicherzustellen, dass die Spezifikation kohärent und vollständig ist. Die FTF kann auch zusätzliche Änderungen an der Spezifikation vornehmen, wenn dies aufgrund der während des Überprüfungsprozesses erhaltenen Rückmeldungen erforderlich ist.

Wann wird die SysML v2 ein offizieller OMG-Standard?

Von Abnahme bis offizieller Standardisierung vergehen maximal zwei Jahre. In dieser Zeit arbeitet die Finalization Taskforce an der Fertigstellung des Standards. Die Zeitschiene hart. Das bedeutet, dass die Standardisierung spätestens Q1 2025 abgeschlossen sein muss. Tim, Stephan und Uwe gehen eher von Mitte 2024 aus.

Wer ist der Treiber hinter der SysML v2?

Das ist eine vielschichtige Frage. Ein Treiber ist sicherlich die steigende Komplexität von Systemen. Viele Eigenschaften der SysML v2 ermöglichen ein Beherrschen der Komplexität in einer Form, wie es mit SysML v1 nicht möglich ist. Das liegt zum Beispiel an dem „aufgeweichten“ Foramlismus der v1 (keine durchgängige formale Semantik), oder auch der weniger strikten Trennung zwischen Definition und Nutzung.

Auf der kommerziellen Seite ist die Rüstungsindustrie der Treiber, mehr als jede andere Industrie.

Wann werden Werkzeuge SysML v2 unterstützen?

Fast alle größeren Werkzeughersteller planen (zumindest offiziell), zügig SysML v2 zu unterstützen. Weiterhin gibt es bereits eine quelloffene Referenzimplementierung.

Persönlich bin ich hier immer etwas vorsichtig. Ich habe mehr als einmal erlebt, dass ein Werkzeughersteller sagte, „Standard X“ wird unterstützt, sich dann aber eher als Marketing-Lippenbekenntnis herausstellte (Minimal aber nicht praxistauglich). Wie schnell die Werkzeuge praxistauglich sein werden hängt wohl von dem Druck ab, den die Kunden machen.

Welche Frage fehlt?

Es gibt sicher noch zahlreiche weitere Fragen zu SysML v2. Falls eine wichtige Frage fehlen sollte oder sich hier gar Fehler eingeschlichen haben sollten, bitte ich um einen kurzen Hinweise. Ich plane, diese FAQ weiterzupflegen.

Photo by Ugo Mendes Donelli on Unsplash

Michael Jastram

Creator and Author of SE-Trends