[Back]


Diploma and Master Theses (authored and supervised):

T. Wagner:
"Enhancing Maintainability via Populating a Bug Database by Using Repositories";
Supervisor: T. Grechenig, A. Mauczka; 183/1, 2011.



English abstract:
Bug Databases which comprise comprehensive records of bugs and their reparations are often used as documentation resources by software developers. If such a database is not administrated from the beginning of the software development lifecycle, important information is lost.
This situation can adversely affect the maintainability and quality of the software product. This thesis aims to develop a tool that offers the possibility to automatically generate such a bug database afterwards.
The necessary information is obtained from the source code management system that manages all source code files of the software project. The tool is based on techniques for the classification of log messages and the determination of corrective maintenance tasks. Exemplary bug databases are created for various open-source software projects via the developed tool. It is shown that the automatic population of a bug database is generally possible. A comparative analysis of existing and automatically generated bug databases shows that, by the right configuration of the classification, most of the bug reports of already existing databases are also present in the automatically generated ones.
However, a manual comparison uncovers that compromises must be made with respect to some information typically available at a bug report. Via the proposed tool, bug databases can be generated for any software project, regardless of programming language and development area, as long as the software project makes use of a source code management system. The results are stored in a generic output format and can be imported into any bug tracking system. This produces a documentation that serves developers with additional information (e.g., code samples).

German abstract:
Fehlerdatenbanken, die eine umfassende Aufzeichnung von aufgetretenen Fehlern und deren Behebung beinhalten, werden von Software Entwicklern häufig als Dokumentationsquelle herangezogen. Wird eine derartige Datenbank nicht von Beginn an geführt, können wichtige Informationen verloren gehen. Dieser Umstand kann sich negativ auf Wartbarkeit und Qualität des Software Produktes auswirken. Im Zuge dieser Arbeit wird ein Tool entwickelt, das es ermöglicht, solch eine Fehlerdatenbank im Nachhinein automatisiert zu erstellen. Die dazu benötigten Informationen werden aus dem Quellcode Management System, das sämtliche Quellcode Dateien des Software Projektes verwaltet, bezogen.
Dabei wird auf Techniken zur Klassifizierung von Log Nachrichten und zur Bestimmung von korrektiven Wartungsmaßnahmen am Quellcode zurückgegriffen. Mit Hilfe des entwickelten Tools werden beispielhafte Fehlerdatenbanken für verschiedene Open-Source Projekte erstellt.
Dadurch wird aufgezeigt, dass die automatisierte Erstellung einer Fehlerdatenbank generell möglich ist. Durch eine vergleichende Analyse bereits bestehender und automatisch generierter Datenbanken wird gezeigt, dass durch die richtige Konfiguration der Klassifizierung, eine Vielzahl der manuell erstellen Fehlerbeschreibungen auch in den automatisch erstellten Fehlerdatenbanken zu finden sind. Ein manueller Vergleich verdeutlicht jedoch auch, dass bei einigen Informationen der Fehlerbeschreibungen Kompromisse gemacht werden müssen. Mithilfe des erstellten Tools kann eine Fehlerdatenbank für jedes beliebige Software Projekt, unabhängig von Programmiersprache und Entwicklungsumgebung, erstellt werden. Voraussetzung dafür ist die Verfügbarkeit eines Quellcode Management Systems. Die Ergebnisse werden in einem generischen Format gespeichert und können anschließend in jedem beliebigen Fehler Management System importiert werden. Dadurch steht Entwicklern eine Dokumentationsquelle mit zusätzlichen Informationen (z.B. Code Ausschnitten) zur Verfügung.

Created from the Publication Database of the Vienna University of Technology.