Sprungmarken

Servicenavigation

Hauptnavigation

Sie sind hier:

Hauptinhalt

Fachprojekt: MMM - Meta-Modellierte Modelleditoren

Inhalt

Die Anwendungsbereiche strukturierter, grafischer Modelle sind vielfältig und heute nahezu allgegenwertig. Neben dem Einsatz in Forschung und Entwicklung (z.B. formale Modelle wie Petri-Netze) umfassen sie sowohl kommerzielle Bereiche (z.B. Produktkonfiguratoren) sowie strategisches Unternehmensmanagement (z.B. Geschäftsmodelle) als auch industrielle Einsatzgebiete (z.B. rechnerunterstütztes Konstruieren (CAD)).

Zur Erstellung und Bearbeitung dieser Modelle werden grafische Editoren eingesetzt. In der Softwareentwicklung erfordert deren Entwicklung bislang aufwändige Programmierarbeit sowohl zur initialen Erstellung, als auch für zukünftige Anpassungen und Erweiterungen. Auf Anforderungsänderungen sollte jedoch idealerweise mit agilen Anpassungen des Editors sowie Adaption der integrierten Modellstruktur reagiert werden können.

Modellgetriebene Softwareentwicklung auf Basis von Meta-Modellierung ermöglicht die Spezifikation strukturierter Modelle durch den Einsatz domänenspezifischer Sprachen (DSLs) und die Erzeugung umfangreicher Modellierungswerkzeuge mittels Code-Generierung. Entwicklung, Anpassung und Erweiterung der Editoren erfolgen auf einer abstrakten Ebene und haben das Potential, den Anforderungen bzgl. agiler Änderungen gerecht zu werden.

Im Rahmen des Fachprojektes werden aktuelle Werkzeuge für die modellgetriebene Softwareentwicklung erlernt und eingesetzt. Vorkenntnisse zu diesen Werkzeugen werden nicht vorausgesetzt. Diese umfassen im Kern das Eclipse Modeling Framework (EMF) zur Erstellung von Datenmodellen, das Xtext-Framework zur Spezifikation domänenspezifischer Sprachen sowie Xtend mit seinen umfangreichen Features zur Erstellung templatebasierter Code-Generatoren.

Code-Fragmente

Zur Integration dieser Frameworks sowie zur Modellierung eines grafischen Editors wird die am Lehrstuhl entwickelte Cinco SCCE Meta Tooling Suite eingesetzt. Das Ergebnis der Entwicklung ist ein grafischer Modelleditor, der mit einer abstrakten Beschreibungssprache definiert und daraus generiert wird. Sie umfasst mit Knoten und Kanten die wesentlichen Konstrukte zur Beschreibung eines Graphen und erweitert diese um Container, deren Inhalt regelbasiert eingeschränkt werden kann.

Das Fachprojekt leitet durch den Entwicklungsprozess eines Produktkonfigurators als praxisorientiertes Beispiel, auf das die genannten Modellierungs- und Generierungsframeworks angewendet werden können.

Beispiel eines Produktgenerators

Inhaltlich ist das Fachprojekt flexibel aufgestellt und bei ausreichender Motivation können alternativ auch eigene Konfiguratoren oder andere grafische Editoren definiert und entwickelt werden.

Ziele

Ziel dieses Fachprojektes ist es, das Potential der Meta-Modellierung zu beleuchten sowie aktuelle Modellierungs-Frameworks zu erlernen und anzuwenden, um grafische Editoren für strukturierte Modelle zu erzeugen.



Nebeninhalt

Kontakt

Dipl.-Inform. Steve Boßelmann
Tel.: 0231 755-7759
Prof. Dr. Bernhard Steffen