Detailseite
Qualitätsoptimierte Differenzalgorithmen für Modelle
Antragsteller
Professor Dr. Udo Kelter
Fachliche Zuordnung
Softwaretechnik und Programmiersprachen
Förderung
Förderung von 2010 bis 2016
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 186192750
In modernen modellbasierten Entwicklungsprozessen sind Modelle Teil der operativen Software. Analog zu Quellcode entstehen viele Versionen von Modellen und man benötigt leistungsfähige Werkzeuge zum Vergleichen, Mischen und Patchen von Modellen. Derartige Werkzeuge basieren auf Algorithmen, die Differenzen zwischen Modellen berechnen. Differenzalgorithmen für Modelle müssen die Struktur des jeweiligen Modelltyps und Merkmale typischer Editiervorgänge berücksichtigen. Ferner sollten sie die Unterschiede zwischen gegebenen Modellen möglichst geschickt darstellen, also Differenzen hoher Qualität liefern. Eine Qualitätsoptimierung verschlechtert jedoch die ohnehin hohen Laufzeiten weiter, daher müssen Kompromisse zwischen Qualität und Aufwand gesucht werden. Systematische Ansätze zur Definition der Qualität von Differenzen fehlen zurzeit jedoch. Hauptziele dieses Projekts sind daher die Definition von Qualitätsbegriffen- und Maßen für Modelldifferenzen und die Optimierung von Differenzalgorithmen sowohl hinsichtlich Laufzeit als auch der erzielten Qualität der Differenzen. In der ersten Förderperiode wurden Methoden und Werkzeuge entwickelt, mit denen Benchmarks erzeugt werden können, die eine Basis zur Bewertung der Algorithmen liefern. Für Klassendiagramme wurden umfangreiche Testdatenbestände entwickelt, eine größere Zahl von Algorithmen bzw. Algorithmusvarianten wurde auf dieser Basis evaluiert. Zwischenzeitlich wurden Differenzierungsverfahren verfügbar, die die Qualität von Differenzen steigern, indem Refactorings und andere komplexe Editieroperationen erkannt und zur Darstellung von Veränderungen genutzt werden. Aufbauend auf den Vorarbeiten soll in einem dritten Projektjahr ein völlig neuer Begriffsrahmen entwickelt werden, der den Begriff Qualität im Sinne von Qualitätsanforderungen für verschiedene Klassen von Differenzwerkzeugen ausdifferenziert. Auf Basis dieses erweiterten Begriffsrahmens sollen Differenzierungsalgorithmen für Klassendiagramme erneut evaluiert werden, ferner sollen erstmals Verfahren für BPMN-Modelle, die deutlich andere Charakteristika als Klassendiagramme aufweisen und für die viele Refactorings vorgeschlagen wurden, evaluiert werden.
DFG-Verfahren
Sachbeihilfen