Evaluierung von Verfahren zur Detektion von Gruppen ähnlicher Quelltext-Änderungen

Kreutzer P (2015)


Publication Language: German

Publication Type: Thesis

Publication year: 2015

Abstract

Viele der während der Entwicklung und Wartung eines Software-Projekts durchgeführten Quelltext-Änderungen sind repetitiv, werden also auf ähnliche Art und Weise an verschiedenen Stellen im Code durchgeführt. Die manuelle Durchführung dieser sogenannten systematischen Änderungen ist fehleranfällig, aufwändig und schwierig, denn Entwickler müssen dazu nicht nur wissen, dass Änderungen am Quelltext notwendig sind, sondern auch welche Änderungen wo im Projekt durchzuführen sind.
 
Bei SIFE handelt es sich um ein Werkzeug, das Entwickler bei der Durchführung systematischer Änderungen unterstützen kann. Durch die Extraktion von Änderungen aus einem Versionskontrollsystem und die anschließende Bestimmung von Gruppen ähnlicher Änderungen ist SIFE in der Lage, Entwicklern Vorschläge über weitere zu ändernde Stellen samt der durchzuführenden Änderung zu präsentieren.
 
Die vorliegende Arbeit erweitert dieses Werkzeug und beschäftigt sich dabei insbesondere mit der Frage, wie unter Verwendung von Clustering-Algorithmen Gruppen ähnlicher Änderungen identifiziert werden können, aus denen SIFE Vorschläge für Entwickler erzeugen kann. Im Rahmen dieser Arbeit werden verschiedene solcher Algorithmen evaluiert. Neben Clustering-Verfahren, die auf Ähnlichkeits-Graphen arbeiten, wird außerdem erläutert, wie ein solcher Graph durch die Berechnung seiner Laplace’schen Eigenmap in einen Merkmalsraum eingebettet werden kann. Dies erlaubt den Einsatz weiterer Verfahren zur Bestimmung von Gruppen ähnlicher Änderungen.
 
Für eine Bewertung der Verfahren wenden wir diese auf die drei quelloffenen Software-Projekte JUnit, Disruptor, und Picasso an. Im Vergleich mit den Ergebnissen der ursprünglich in SIFE implementierten Heuristik zur Berechnung einer Gruppierung kann die Anzahl an Gruppen, aus denen sich potenziell Vorschläge für Entwickler ableiten lassen, um bis zu 43% gesteigert werden. Auch die Anzahl an Quelltext-Änderungen in diesen Gruppen kann für die analysierten Projekte um bis zu 30% erhöht werden.
 
Da mit den in dieser Arbeit vorgestellten Verfahren mehr Gruppen ähnlicher Änderungen identifiziert werden können, aus denen sich mehr Vorschläge für Entwickler erzeugen lassen, steigern diese den Nutzen von SIFE für Entwickler.

Authors with CRIS profile

Related research project(s)

How to cite

APA:

Kreutzer, P. (2015). Evaluierung von Verfahren zur Detektion von Gruppen ähnlicher Quelltext-Änderungen (Master thesis).

MLA:

Kreutzer, Patrick. Evaluierung von Verfahren zur Detektion von Gruppen ähnlicher Quelltext-Änderungen. Master thesis, 2015.

BibTeX: Download