Systemmodelle zusammen führen mit SpecIF
In letzter Zeit habe ich öfters von der GfSE berichtet. Und auch im heutigen Interview spreche ich mit jemandem, der sich in der GfSE engagiert: Dr. Oskar von Dungern hat dazu beigetragen die Initiative SpecIF ins Leben zu rufen. Dabei geht er auch auf die kürzlich im Interview mit Dr. Siegmund Priglinger vorgestellte Modellierungs-Gruppe ein.
Dr.-Ing. Oskar von Dungern ist Managing Consultant bei der adesso AG in Berlin. Er berät Hersteller in methodischen und organisatorischen Fragen rund um die Produktkonzeption und -entwicklung. Als Ingenieur und Manager sammelte er vielseitige Erfahrungen bei der Realisierung von mechatronischen Produkten und von Software. Zu seinen Erfolgen zählen die nachhaltige Verbesserung der Produkt- und Prozess-Qualität, sowie die Zusammenführung von Entwicklungsorganisationen nach Firmenfusionen. „Innovation mit Software“ und „Software-Ingenieurwesen“ gehören zu seinen beruflichen Hauptinteressen.
SpecIF ist aus der Arbeitsgruppe „PLM4MBSE“ der GfSE entstanden. In Deinen Worten, was ist SpecIF und wer braucht SpecIF?
SpecIF ist eine Konvention für die Semantik von System-Modellen. Nach meiner Erfahrung gibt es vielerlei technische Formate und Lösungen, um Modelle zu transportieren und in nachfolgenden Entwicklungsschritten zu nutzen, doch in der Praxis klappt es nur mit der allergrößten Mühe und daher selten. Es gibt standardisierte Notationen wie BPMN und SysML, doch fehlt eine Semantik auf Anwendungsebene, die es tatsächlich erlaubt sich mittels Modellen zu verständigen, wie wir es aus den reifen Ingenieurdisziplinen Maschinenbau und Elektrotechnik kennen.
SpecIF hilft allen, die System-Modelle technologie-unabhängig transportieren und nutzen wollen
Bei der übergreifenden Systemkonzeption füllt SpecIF dieses Vakuum, indem ein Vokabular und ein logisches Informationsmodell erarbeitet wird. Es geht darum, welche Typen von Modellelementen verwendet werden, wie sie heißen und welche logischen Beziehungen zwischen ihnen aufgebaut werden. Alles aus praktischer Sicht, damit am Ende nützliche Aussagen zum System getroffen werden können, die das Verständnis und die Zusammenarbeit verbessern. Daher hilft SpecIF allen, die System-Modelle technologie-unabhängig transportieren und nutzen wollen, etwa bei der Abstimmung von Produktherstellern und ihren Lieferanten. Heute reicht es nicht mehr sich über lange Listen von Anforderungen zu verständigen, sondern es geht um eine übergreifende Konzeption mit Systemfunktion, -aufbau und -verhalten, sowie um Wechselwirkungen zwischen den Disziplinen.
Es gibt ja bereits ähnliche Ansätze in diese Richtung. Konkret muss ich da an OSLC oder EMF denken. Im proprietären Bereich gibt es ja auch einiges. Kann da ein neuer Ansatz gegen ankommen?
SpecIF steht nicht in Konkurrenz mit technischen Formaten und Lösungen, sondern ergänzt sie um eine fachliche, inhaltliche Dimension.
OSLC hat begonnen ein Vokabular für Anforderungen zu definieren und stützt sich dabei auf Dublin Core. Natürlich greift SpecIF diese Vorschläge wie auch andere auf. Allerdings hört OSLC Stand heute einen Schritt zu früh auf, indem wohl die Namen der Anforderungsattribute definiert werden, aber nicht die Namen der Objekte selbst: Nirgendwo haben wir einen Bezeichner oslc_rm:requirement o.ä. gefunden.
SpecIF betrachtet Systemmodelle umfänglich, indem Anforderungen in einen Kontext mit Prozess-Schritten, Systemkomponenten und anderen Artefakten gebracht werden. Oder indem ein Zusammenhang zwischen Prozessen, Systemaufbau und -verhalten geschaffen wird. Es werden ein übergreifendes Vokabular und eine Aussagenlogik erarbeitet. SpecIF beweist also seinen Wert, wenn jemand kommt und in einem OSLC-Werkzeugverbund die Inhalte seines System-Modells gemäß SpecIF benennt und strukturiert. Gleiches gilt für EMF/Ecore aus der Eclipse-Welt.
OSLC hört einen Schritt zu früh auf. Mit SpecIF wird ein übergreifendes Vokabular und eine Aussagenlogik erarbeitet.
Kannst Du an einem konkreten Beispiel erläutern, wie SpecIF einen Mehrwert schafft? Du sagtest auch, SpecIF wird bereits in Industrieprojekten eingesetzt: Kannst Du den Mehrwert quantifizieren?
Wir (und dabei schließe ich mit ausdrücklichem Dank einige langjährige Geschäftspartner ein) haben in den letzten 12 Jahren kontinuierlich die SpecIF zugrunde liegende Methodik entwickelt. In 2012 durften wir ein wegweisendes Projekt bei einem Hersteller von Regionalzügen machen, in dem ein integriertes Modell der Landschaft aus Geschäftsprozessen, IT-Systemen und Anforderungen, jeweils mit IST- und SOLL-Zustand, entstand. So war sofort ersichtlich, welche Auswirkungen diese oder jene Prozessänderung auf die Systeme hätte, oder welche Prozesse betroffen sind, wenn erwogen wurde Inselsysteme und Medienbrüche zu beseitigen. Später kam die Methode auch bei der Konzeption mechatronischer Systeme zum Einsatz. Ein Hersteller von Geräten für die Hausautomation stand vor der Aufgabe eine Architektur für eine neue Generation vernetzter Geräte zu entwickeln – 120 an der Zahl. Mit Hilfe der integrierten Systemmodellierung ist das in nur 5 Monaten gelungen, obwohl der Organisation noch der Schrecken eines gescheiterten Projekts zu eben diesem Thema in den Knochen saß. Beide Projekte haben die aus dem Hasso-Plattner-Institut Potsdam hervor gegangenen „Fundamental Modelling Concepts“ (FMC) genutzt.
Wir haben in den letzten 12 Jahren kontinuierlich die SpecIF zugrunde liegende Methodik entwickelt.
Trotzdem fällt es mir schwer den Mehrwert zu quantifizieren. Es geht um Qualität durch bessere Einsicht in die Zusammenhänge, es geht um das frühe Entdecken von Lücken und Widersprüchen im Konzept, es geht um das Überwinden von technischen Zwängen aus der Werkzeug-Landschaft, manchmal geht es um Scheitern oder nicht Scheitern. Immerhin: Wer Spaß am interdisziplinären Denken und Arbeiten hat und wer den Nutzen gespürt hat, will nicht mehr davon lassen. Zugleich gibt es Widerstände von etlichen, die lieber bei bekannten Arbeitsweisen bleiben. Vor allem konservative und erfolgsverwöhnte Wirtschaftszweige tun sich schwer.
Was sind die nächsten Schritte bezüglich SpecIF? Und wie können interessierte Leser mehr erfahren?
Nach den Erfolgen mit FMC wollen wir in den kommenden Monaten zeigen, dass SpecIF auch und gerade bei Einsatz verbreiteter Notationen wie UML/SysML und BPMN einen Mehrwert bringt. Heute gelingt der Austausch von Modellen zwischen unterschiedlichen UML/SysML-Werkzeugen selten, auch wenn ein internationaler Standard wie XMI herangezogen wird. SpecIF soll das ändern. Daher suchen wir weitere praktische Anwendungsfälle, um Vokabular und Struktur auf Anwendungsebene voran zu bringen und die Tauglichkeit im Alltag nachzuweisen. Bei aller Praxisorientierung wollen wir darauf achten, dass SpecIF methodisch sauber begründet wird, damit die Abbildung auf vorhandene und zukünftige „technische Träger“ tatsächlich gelingt. Daher wollen wir uns im GfSE-Arbeitskreis „Modellierung formalisieren“, der von Siegmund Priglinger initiiert und getragen wird, konkret einbringen. Als technischen Träger benutzen wir heute aus praktischen Erwägungen das Requirement Interchange Format (ReqIF), um die entsprechenden Schnittstellen verschiedener Systeme nutzen zu können. Zugleich gibt es eine Implementierung mit JSON, doch das ist mangels verfügbarer Schnittstellen eher experimentell. Wie besprochen soll ebenso OSLC oder später „linked-data“ nutzbar sein.
Wir wollen zeigen, dass SpecIF auch und gerade beim Einsatz mit Notationen wie SysML einen Mehrwert bringt.
Der Anspruch ist sehr hoch und so kann ich verstehen, wenn manche eher skeptisch sind: SpecIF klingt beim ersten Kontakt wie ein Heilsversprechen, von denen es schon zu allzu viele gibt. Doch hilft es nach meiner Erfahrung, wenn man zunächst die künstlichen Beschränkungen real-existierender Systeme außer Acht lässt und sich auf die zu lösende Aufgabe konzentriert: Was soll mein System-Modell ausdrücken, welche Notationen will ich verwenden und welche Abstraktion hilft mir in der Zusammenarbeit der Beteiligten? Das ist definitiv zu schaffen.
Der aktuelle Stand der Arbeiten wird auf specif.de veröffentlicht. Wir freuen uns über kritische Auseinandersetzung und Beiträge, vor allem über Anwendungsfälle, die uns helfen den noch kantigen Stein zu glätten und letztlich zu polieren.