Bachelor Thesis BCLR-2018-29

BibliographyPfaff, Timo: Implementierung eines Bots zum Vorschlagen automatisch durchgeführter Refactorings.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Bachelor Thesis No. 29 (2018).
45 pages, german.
Abstract

Software altert über die Jahre und verliert an Struktur. Um diesem Prozess entgegenzuwirken, werden in der Softwareentwicklung Refactorings eingesetzt. Refactorings sind Änderungen des Programmcodes, um die Qualität zu steigern, ohne dabei das Verhalten der Software zu verändern. Refactorings stellen somit einen wichtigen Bestandteil dar, um die Softwarequalität auch über mehrere Jahre in einem guten Zustand zu halten. Gleichzeitig werden zum Durchführen von Refactorings aber Ressourcen, wie zum Beispiel Personenstunden, benötigt, die wiederum den Unterschied zwischen Erfolg und Misserfolg eines Softwareprojekts bedeuten können. Um Ressourcen zu sparen, befasst sich diese Bachelorarbeit mit der Implementierung eines Bots, der automatisch Refactorings durchführt und diese dem Entwickler vor dem Übernehmen der Änderungen in den Hauptentwicklungszweig zum Review anbietet. Die Änderungen sollen nicht automatisch übernommen werden, da ein Fehler während des Refactorings gerade bei sicherheitskritischer Software schwerwiegende Folgen haben kann. Der Bot wurde anschließend anhand eines Beispielsprojekts getestet und gefundene Probleme wurden diskutiert. Des Weiteren wurden zwei Evaluationskonzepte vorgestellt, mit denen der Bot auf verschiedene Kriterien evaluiert werden kann. Das Ergebnis der Arbeit ist die Implementierung des Bots, der die genannte Grundfunktionalität bereitstellt und Refactorings an realen Projekten durchführen kann.

Full text and
other links
Volltext
Department(s)University of Stuttgart, Institute of Software Technology, Software Engineering
Superviser(s)Wagner, Prof. Stefan; Wyrich, Marvin; Mindermann, Kai
Entry dateDecember 3, 2018
   Publ. Computer Science