Extrahieren von Code-Änderungen aus einem Commit für kontinuierliche Integration von Leistungsmodellen

Aus SDQ-Institutsseminar
Vortragende(r) Ilia Chupakhin
Vortragstyp Bachelorarbeit
Betreuer(in) Manar Mazkatli
Termin Fr 4. September 2020
Vortragssprache
Vortragsmodus
Kurzfassung Ein Leistungsmodell ermöglicht den Software-Entwicklern eine frühzeitige Analyse von programmierten Komponenten in Bezug auf Leistungseigenschaften. Um Inkonsistenzen zu vermeiden, soll das Leistungsmodell angepasst werden, sobald Entwickler den Quellcode ändern. Eine Aktualisierung von Leistungsmodellen ist kein triviales Problem. Der Ansatz "kontinuierliche Integration von Leistungsmodellen" (Abkürzung: KILM) führt eine automatische inkrementelle Aktualisierung von Leistungsmodellen durch und bietet somit eine Lösung des Problems an. Ein wichtiger Vorteil von diesem Ansatz ist, dass das Leistungsmodell weder manuell angepasst (aufwändig und fehleranfällig), noch nach jeder Änderung neu aufgebaut (ineffizient und aufwändig) werden muss.

In dieser Bachelorarbeit wurde der erste Schritt für die vorgestellte Lösung implementiert: der KILM-Ansatz wird mit Git-Repository verknüpft, Änderungen werden aus Commits extrahiert und auf Code- und Leistungsmodelle angewandt. Die Implementierung wurde in einer Fallstudie evaluiert. Auf einem Projekt wurden unterschiedliche Arten von Änderungen simuliert und die Korrektheit von den aktualisierten Code- und Leistungsmodellen überprüft. Die Ergebnisse bestätigen korrekte Aktualisierung von Code- und Leistungsmodellen in den 96,6 % der durchgeführten Tests.