Kosten-Nutzen-Analyse imperativer Modelltransformationssprachen

Aus SDQ-Wiki
Ausschreibung (Liste aller Ausschreibungen)
Typ Masterarbeit
Aushang Aushang Modelltransformation.pdf
Betreuer Wenden Sie sich bei Interesse oder Fragen bitte an:

Christopher Gerking (E-Mail: christopher.gerking@kit.edu, Telefon: +49-721-608-45980)

Motivation

Modelltransformationen sind ein etabliertes Mittel um Modelle in eine andere Modellierungssprache oder neue Struktur zu überführen. Special-Purpose-Sprachen für Modelltransformationen (z. B. QVTo) stellen bestimmte imperative Sprachmerkmale zur Verfügung, die sich für die Programmierung von Transformationen besonders eignen. Einige dieser Sprachmerkmale sind jedoch heutzutage ebenso in General-Purpose-Programmiersprachen (z. B. Java) vorhanden, was die "Daseinsberechtigung" der Transformationssprachen in Frage stellt.

Aufgabenstellung

In dieser Arbeit soll ein Vergleich zwischen General-Purpose-Programmiersprachen und Special-Purpose-Sprachen für imperative Modelltransformationen angestellt werden. Hierzu soll untersucht werden, welche Sprachmerkmale von Modelltransformationssprachen ebenfalls in einer General-Purpose-Sprache vorhanden sind bzw. wie aufwändig es ist, nicht vorhandene Merkmale in einer General-Purpose-Sprache nachzubilden.

Die Arbeitsergebnisse umfassen zunächst ein Feature-Modell für imperative Transformationssprachen, in dem die Sprachmerkmale festgehalten werden. Auf dieser Basis sollen die verschiedenen Merkmale systematisch anhand des benötigten Aufwandes für die Nachbildung bewertet und kategorisiert werden. Als Machbarkeitsnachweis soll die Nachbildung abschließend für ausgewählte Sprachmerkmale durchgeführt werden. Das übergeordnete Ziel der Arbeit besteht darin, Entwicklern von Modelltransformationen eine Entscheidungshilfe bzw. Handlungsempfehlungen für die Sprachauswahl zur Verfügung zu stellen.

Voraussetzungen

  • Hohes Interesse an Programmiersprachen
  • Hohes Interesse an konzeptioneller Arbeit mit vergleichsweise hohem Rechercheanteil
  • Hilfreich (aber nicht vorausgesetzt) ist ein erfolgreicher Prüfungsabschluss in der Vorlesung Modellgetriebene Software-Entwicklung