Florian Uphoff: Konzept und prototypische Implementierung der Modellintegration der Interaction-Room-Methode in die Specification Integration Facility

Die Modellierung von softwaregestützten Informationssystemen ist ein elementarer Bestandteil des Software Engineerings. Abbildungen des zu entwickelnden oder zu verändernden Systems durch Modelle sind Bestandteil der Planung und Realisierung von Projekten. Modelle können dabei die Grundlage bilden, um komplexe Aspekte des Systems verständlich darzustellen.

Es existieren Modellierungssprachen für unterschiedliche Domänen, Sachverhalte und Darstellungsebenen eines Systems. Das Ziel der verständlichen Darstellung wird über die Vielzahl der Syntaxen, Notationen und Semantiken erschwert, da Anwender oft nur mit fachspezifischen Modellierungssprachen vertraut sind. Jedoch bietet diese Vielzahl den Vorteil, dass Anwender eine Modellierungssprache wählen können, die für das Problem und für die Domäne am besten geeignet ist. Folglich ergeben sich Modelle, die detailliert und naturgetreu Aspekte des Systems darstellen. Darüber hinaus ist die detaillierte Ausarbeitung von Modellen ab einem Punkt im Projektverlauf unvermeidbar, sodass fachspezifische Modellierungssprachen notwendig sind. Daher ist es sinnvoll, die Vorteile der verschiedenen Modellierungssprachen in einem Projekt zu nutzen und in einen gemeinsamen Kontext zu stellen. Experten können sich mit Modellen beschäftigen, deren Syntax, Semantik oder Notation ihnen bekannt ist. So sollten die Informationen aus Modellen unterschiedlicher Modellierungssprache miteinander vernetzt werden.

Besonders in frühen Projektphasen ist es wichtig, dass alle Projektbeteiligten ein gemeinsames Verständnis für Anforderungen und besondere Herausforderungen erlangen. Das ist ein passender Zeitpunkt für die Verwendung einer Modellierungssprache, die sowohl allgemeine Aspekte als auch besondere Herausforderungen detailliert darstellt und dabei ohne Vorkenntnisse in UML, BPMN, ERM oder vergleichbare Sprachen auskommt.

Der Interaction Room (IR) bietet Projektbeteiligten eine Modellierungssprache, die sich durch eine geringe Lernkurve auszeichnet und dabei sowohl allgemeine als auch detaillierte Aspekte abbilden kann. Trotz des niedrigen Detaillierungsgrads können besondere Herausforderungen explizit in Modellen visualisiert werden: Mithilfe von Annotationen werden besondere Herausforderungen visualisiert und als Metainformationen den Modellen hinzugefügt. Das Ergebnis des Interaction Rooms ist ein gemeinsames Verständnis und die Erfassung des Projektumfangs.

Beispiel einer intuitiven Prozesslandkarte im Interaction Room mit Annotationen

Jedoch ist auch die Benutzung von mächtigen Modellierungssprachen wie die UML notwendig, da die Granularität des IRs die Ausarbeitung von Spezifikationen erschwert. An diesem Punkt ist die Specification Integration Facility (SpecIF) von hohem Nutzen, da es die Ergebnisse aus dem IR in nachfolgende Entwicklungsschritte überführt, wo sie weiter detailliert werden.

Die SpecIF ermöglicht eine methodenübergreifende Nutzung von Software Engineering Modellen. Um Informationen aus Modellen unterschiedlicher Modellierungssprachen zu verknüpfen, werden diese auf ein hohes Abstraktionsniveau überführt. SpecIF definiert das Abstraktionsniveau und schlägt ein Vokabular vor, auf dem die Modellelemente abgebildet werden. Die Informationen aus den IR-Modellen können somit wiederverwendet werden – zum Beispiel in UML Aktivitäts- oder Klassendiagrammen.

Um die Modelle des IRs in SpecIF nutzbar zu machen, wurde im Rahmen einer wissenschaftlichen Ausarbeitung eine Modellintegration durchgeführt. Auf Basis der erarbeiteten Metamodelle der IR-Landkarten, Annotationen und Tracelinks wurden die relevanten Modellelemente für die Integration ermittelt. Im anschließenden Schritt wurden die Modellelemente mithilfe des vorgeschlagenen Vokabulars von SpecIF abstrahiert. Des Weiteren mussten für eine vollständige Modellintegration die Relationen zwischen Modellelementen identifiziert und abstrahiert werden.

Die durchgeführte Modellintegration eröffnet die Möglichkeit, die erarbeiteten Informationen aus dem IR im weiteren Projektverlauf zu nutzen und für andere Modellierungssprachen zugänglich zu machen. Der IR und die SpecIF ergänzen sich gegenseitig, wobei die Modellintegration die Verbindung herstellen kann. Der IR bietet der SpecIF den Vorteil, den Einstieg in die Modellierung und die Modellintegration zu vereinfachen. Darüber hinaus ergibt die Modellintegration des IRs in die SpecIF folgende Vorteile:

  • Identifizierung von identischen Elementen und teilautomatisierte Erstellung von Abhängigkeiten in unterschiedlichen Modellen
  • Artefakt-zentrierte statt dokumenten-zentrierte Arbeitsweise
  • Benutzung einer interaktiven Anforderungsspezifikation
  • Import des Datensatzes des Projekts in andere Anforderungsmanagement-Tools
  • Unterschiedliche Ansichten auf gleiche Elemente im Modellkern
  • Erschließung der Modelle für Maschinen

Überblick über das wissenschaftliche Projekt von Florian Uphoff zur Modellintegration IR-SpecIF

Weiterführende Informationen zur SpecIF finden Sie unter http://specif.de/ oder hier; den Konferenzbeitrag von Florian Uphoff und Dr.-Ing. Oskar von Dungern können Sie an dieser Stelle einsehen.

Florian Uphoff ist Software Engineer bei der IRG.