Research Topics
[DA] Generisches Modellrefactoring für EMFText
In der Modellgetriebenen Softwareentwicklung (Model-driven Software Development – MDSD) bilden Modelle das zentrale Artefakt bei der Erstellung von Software. Im Verlauf eines Entwicklungsprozesses entsteht eine Vielzahl solcher Modelle, welche ständig angepasst, umstrukturiert und reorganisiert werden muss. Dieser Prozess wird als Refactoring bezeichnet und ist im Bereich der Programmiersprachen sowohl theoretisch untersucht, als auch praktisch (in Werkzeugen) umgesetzt. Obwohl die Refaktorisierung von Modellen ähnlich zu der von Programmen ist, existieren kaum entsprechende Werkzeuge. Zudem bieten Modelle durch ihre wohlfundierte Beschreibung in Form von Metamodellen neue Möglichkeiten zur Spezifikation von Refaktorisierungen.
Ziel der Arbeit ist es, zu untersuchen, welche Kategorien von Refactorings auf Modellen existieren und wie sich existierende Refactorings für Programmiersprachen übertragen lassen. Dabei sollen Refactoring-Kataloge analysiert werden, um eine möglichst umfassende Untersuchung zu gewährleisten. Weiterhin gilt es zu prüfen, welche Refactorings auf allen Modellen, bestimmten Teilklassen oder nur auf speziellen Modellen ausführbar sind.
Der praktische Teil der Arbeit liegt in der Implementierung einer Refactoring-Erweiterung für EMFText, welche die erarbeiteten Konzepte praktisch umsetzt.
Betreuer: Mirko Seifert