Interview mit Dr. Siegmund Priglinger zur neuen Modellierungs-Gruppe
Wenn sich bei der Gesellschaft für Systems Engineering (GfSE) eine neue Arbeitsgruppe bildet, dann lohnt es sich, genauer hinzuschauen. Im Moment formt sich die Arbeitsgruppe Modellierung formalisieren, die von Dr. Siegmund Priglinger mitgegründet wurde.
Dr. Priglinger hat mehr als 30 Jahre Erfahrung als Produkt- und Lösungsanbieter, Univ.Lektor, IT-Manager und Unternehmensberater für ICT in verschiedensten Branchen (Industrie, Handel, Telekommunikation, IT, Energie, Healthcare, Finance, Public). Er ist Ansprechpartner für die Geschäftsleitung, die Fachbereiche und die IT in allen Fragen betreffend Verbesserungen im „Information Management“, “Entscheidungsfindung” und „Systems Engineering“.
Du hast kürzlich die Arbeitsgruppe „Modellierung formalisieren“ (AG MF) bei der GfSE mitgegründet und agierst als Koordinator. Was ist das Ziel der Arbeitsgruppe?
Ziel der Arbeitsgruppe MF ist es, die nächste Generation von Modellierungssprachen wie SysML/v2 mit einer genaueren Syntax und Semantik auszustatten, um Mehrdeutigkeiten zu vermeiden, somit eine präzise Darstellung von Konzepten und die automatisierte Abbildung von Modellen aufeinander zu ermöglichen. Darüber hinaus sollen die formalen Anforderungen an die Abbildbarkeit und die Integrationsfähigkeit der Modellierungssprachen wie CAD/CAM, PDM und SysML untersucht und erarbeitet werden. Diese Modellierungssprachen müssen sich im Gegensatz zum Istzustand aus einem „wohlgeformten“ logischen Formalismus ableiten lassen, sodass ein so entworfenes Modell präzise analysiert und formal überprüft werden kann. Dies schließt auch ein, dass das Modell validiert und auf logische Konsistenz überprüft werden kann. Somit können dadurch Fragen folgender Art beantwortet werden: „Ist eine Kombination von Konstrukten logisch vollständig?“, „Welche Kombinationen von Konstrukten sind zulässig?“, „Welche Auswirkung haben Änderungen in den Anforderungen und im Entwurf auf das Modell?“, „Wie pflanzt sich ein Fehlverhalten im System fort?“, etc.
Bei der OMG ist „Modeling Formalism“ ein hoch priorisiertes Thema.
Die AG MF hat als weiteres Ziel, sich intensiv in die Standardisierungsaktivitäten der OMG betreffend SysML/v2 einzubringen. Dort ist „Modeling Formalism“ ein hoch priorisiertes Thema. All dies erfolgt in enger Abstimmung mit den anderen AG’s der GfSE, deren Anforderungen in die AG MF einfließen müssen und vice versa.
Die Syntax von verschiedenen Modellen zusammenzubringen ist sicherlich nicht allzu schwer. Aber wie kann sichergestellt werden, dass die Semantik passt? Gibt es da schon Ideen zu?
Leider ist es mit der Syntax an sich schon nicht so leicht. Dazu müssen wir etwas tiefer einstiegen. Modelle werden mittels Sprachen beschrieben. Da gibt es schon mindesten zwei Sprachtypen: die G(raphical)-Languages und die S(tring)-Languages. Und Modellierungssprachen sind praktisch immer Mischungen daraus. UML ist zB eine Mischung: ist zunächst eine GL, hat aber durch die OCL darin Anteile einer SL. Beispiele für reine SL’s sind unsere üblichen Programmiersprachen. Die G-Language LABView von National Instruments ist im Hintergrund komplett repräsentiert durch eine S-Language und stellt den Idealfall dar: G-Language S-Language.
Und da sind wir schon beim „Grundübel“ der meisten Modellierungssprachen: sie sind keine Sprachen.
Und da sind wir schon beim „Grundübel“ der meisten Modellierungssprachen: sie sind keine Sprachen, sondern nur Notationen und diese noch Notationsmischungen aus GL- und SL-Anteilen. Dazu zählen die UML und Ableitungen wie SysML, dann BPMN (BPEL ist eine exakt definierte S-Language , daher das Problem der Übersetzung nach und von BPMN !!), und andere. Um das zu verstehen, muss man wissen, dass G-Languages wie UML durch mehrere Metamodell-Ebenen (== Schemata von Datenmodellen) beschrieben werden, deren Bedeutung an manchen Stellen nicht durch eine eigene Semantiksprache (mit strikter Syntax und Semantik) definiert werden, sondern durch „freien Text“ mit eventuell nicht klar definierten Begriffen. S-Languages sind hingegen durch eine (meist mittels EBNF definierte) Syntax und durch eine den Syntaxelementen eindeutig zugeordnete und eindeutig definierte Semantiksprache festgelegt. Deshalb spricht man da auch oft von einer „attributierten Grammatik“. Alle diese Begriffswelten sind bewährt, formal abgesichert und werden im Rahmen des Fachgebiets „Übersetzer- / Compilerbau“ schon lange genutzt. Werden Modelle daher mittels einer Sprache abgebildet , so bedeutet die Transformation in eine andere Sprache, die „Syntax+Semantik der Sprache 1“ in die „Syntax+Semantik der Sprache 2“ zu „übersetzen“, d.h. abzubilden. „Syntax auf Syntax“ alleine abzubilden macht deshalb keinen Sinn.
Zu versuchen, Unscharfes in Unscharfes abzubilden, führt zu Unschärfe. Der einzige Weg, das zu verbessern, ist, die Notationen zu Sprachen zu machen.
Nun sind wie schon gesagt, viele unserer Modellierungssprachen nicht so exakt definiert, ähnlich unseren menschlichen Sprachen. Dazu kommt noch, dass die Implementierungen in den Tools variieren, weil die Sprachspezifikation Freiräume für Interpretationen lässt. Somit ist eine Transformation von Sprache zu Sprache bzw. von Tool zu Tool dann eben nicht eindeutig möglich. Der einzige Weg, das zu verbessern, ist, die Notationen zu Sprachen zu machen, d.h.in ihrer Begriffswelt und dem jeweiligen Regelsystem (== Syntax und Semantik) zu schärfen. Kurz gesagt: „Zu versuchen, Unscharfes in Unscharfes abzubilden, führt zu Unschärfe.“
Das Thema der Modellintegration ist eine ganz spannende Sache. Gibt es da schon Ideen, wie das später praktisch umgesetzt werden soll? Insbesondere: kommen hier offene Standards wie OSLC ins Spiel, und sollen Werkzeughersteller rekrutiert werden?
Die OSLC gibt so etwas wie „Metamodelle“ bzw. „Metasprachen“ vor. Dies löst jedoch nicht das Problem der „unscharfen Sprachen“. Und da Modellintegration bedeutet, Modelle aufeinander abzubilden, d.h. Schemata zu „matchen“ und zu „mappen“, sprich wieder „Syntax+Semantik“ zu vergleichen und zuzuordnen, werden wir nicht umhinkommen, an der Basis des Übels zu arbeiten: Modellierungs-Notationen zu Sprachen zu machen. Sonst wird die Automatisierung der Kommunikation in den Bereichen IoT und Industrie 4.0 ein Wunsch bleiben.
Natürlich spielen die Werkzeughersteller eine wichtige Rolle. Sie sind es, die auch daran interessiert sind, dass ihre Sprachimplementierungen möglichst „exakt“ sind. Speziell die Toolhersteller, die eine ganze Suite von Modellierungswerkzeugen wie CAD, PDM oder SE haben und dort das Transformationsproblem und die übergreifende Sprachsicht zügig bewältigen müssen.
Letzte Frage: Was sind die geplanten Aktivitäten in den nächsten Monaten, und wie können Interessierte sich beteiligen?
Wir untersuchen in der AG MF die Sprachspezifikation der SysML (und darüber hinaus auch anderer Methoden) und deren Implementierung in den verschiedenen Tools an Hand von Beispielen auf ihre formalen und praktischen Stärken und Schwächen hin. Ein Beispiel dieser Vorgehensweise möchte ich gerne im Rahmen eines Tutorials der TdSE 2016 diskutieren.
Wir müssen uns dazu auch die notwendigen Verfahren zur Stärken-/Schwächenanalyse erarbeiten. Dabei wird es uns nicht erspart bleiben, auf ziemlich formale (== mathematische) Methoden, die schon entwickelt wurden oder in Arbeit sind, zurückzugreifen. Dies setzt daher einerseits ein Interesse an dieser Begriffswelt voraus, andererseits muss sich unsere Gruppe auch als Übersetzer zwischen den Begriffswelten der „Standardisierer“, der „Anwender“ und der „Formalisierer“ etablieren.
Die Gruppe muss sich als Übersetzer zwischen den Begriffswelten der „Standardisierer“, der „Anwender“ und der „Formalisierer“ etablieren.
Wir würden uns freuen, wenn wir möglichst viele aktive Mitglieder bekommen würden. Da wir von der GfSE als Verein einige Ressourcen zur Abwicklung zur Verfügung gestellt bekommen und als AG der GfSE auftreten, würden wir ersuchen, dass Interessierte an der AG MF dem Verein GfSE beitreten. Damit sind viele andere Vorteile verbunden wie weltweite Vernetzung zum Thema etc. Und wir können gemeinsam auch wirksamer in anderen Gremien unseren Einfluss ausüben.