Entwurf eines generischen Prozessleitstandes für Change Request Systeme

Dokumente

Ausarbeitung

Zwischenvortrag (Folien)

Abschlussvortrag (Folien)

Hintergrund

Metriken auf Software und Softwareprozessen sind eine wichtige Informationsquelle bei der Planung und Überwachung eines Softwareprojekts.
Während Metriken auf Software bereits intensiv erforscht und mit Werkzeugunterstützung versehen sind, ist insbesondere Letzteres für Metriken auf Softwareprozessen erst rudimentär der Fall.
Unter dem Titel ?Mining Software Repositories? existiert der Ansatz, dass sich der Softwareprozess zu einem gewissen Grad in Software-Archiven und Fehlerverfolgungssystemen widerspiegelt. Man kann also mit Metriken auf diesen Systemen indirekt Aussagen über den Softwareprozess treffen. Attraktiv ist dieser Ansatz besonders dadurch, dass die den Metriken zugrundeliegenden Daten ohnehin anfallen, und nicht gesondert, d.h. mit zusätzlichem Aufwand, erfasst werden müssen.

Forschungslücke

Wie vermisst man zielgerichtet und flexibel einen Softwareprozess und hält gleichzeitig den Zusatzaufwand für Messung, Analyse, Darstellung und Interpretation gering?
Die Dissertation ?Metrik-basierte Auswertung von Software-Entwicklungsarchiven zur Prozessbewertung? hat hierzu grundlegende Werkzeugunterstützung geschaffen. Allerdings ist der initiale Aufwand nach wie vor hoch. So muss der Nutzer nach einer Goal-Question-Metric Analyse die Metrikerfassung, -berechnung und -darstellung in einer DSL definieren.
Kann man diesen Prozess noch beschleunigen und dem Nutzer weitere Hilfestellungen bieten, z.B. in Form von vordefinierten Metriken?

Aufgabe

Ziel dieser Diplomarbeit ist es, geeignete, auf Daten aus Fehlerverfolgungssystemen basierende Metriken, die die Bewertung von Softwareprozessen unterstützen, zu identifizieren, definieren, visualisieren und evaluieren.
Welche Fragen können diese Metriken beantworten und welche Ziele können sie überprüfen? Kann man die Darstellung dieser Metriken automatisiert sinnvoll vorwählen?
Diese Fragen soll ein Prototyp eines Werkzeugs beantworten, der auf Basis eines Arbeitsablaufmodells des Fehlerverfolgungssystems und einer Reihe von Metrik-Definitionen die Berechnung und Darstellung der Metriken übernimmt. Dieser Prototyp soll eine Anbindung an das Fehlerverfolgungssystem Trac besitzen und mit einem fest vorgegebenen Arbeitsablauf umgehen können. Mit seiner Hilfe soll evaluiert werden, welche Metriken zur Bewertung des Softwareprozesses sinnvoll sind. Außerdem dient der Prototyp dazu, verschiedene Darstellungsvarianten der Metriken zu begutachten.
Im Anschluss ist ein, basierend auf den mit dem Prototyp gewonnenen Erkenntnissen, flexibleres Werkzeug zu entwickeln, das mit verschiedenen Fehlerverfolgungssystemen und Arbeitsabläufen umgehen kann.
Schließlich soll evaluiert werden, ob die zusätzlichen Informationen, die das Werkzeug über die Reports der Fehlerverfolgungssysteme selbst hinaus liefert, dazu führen, dass Probleme im Softwareprozess schneller erkannt werden.