Filtern
Erscheinungsjahr
- 2017 (1)
Dokumenttyp
- Masterarbeit (1)
Sprache
- Deutsch (1)
Volltext vorhanden
- ja (1)
Gehört zur Bibliographie
- ja (1)
Schlagworte
Institut
Die Softwareentwicklung von Produkten und Lösungen orientiert sich zunehmend an agilen Vorgehensweisen, welche erhebliche Vorteile in der Kundenorientierung und Schnelligkeit in der Auslieferung der Lösungen mit sich bringt. In diesem Zusammenhang besteht auch die Herausforderung der Schätzung von User Stories, die aus Sicht des Benutzers, formuliert werden. Obwohl sich etwaige Methoden und Techniken zur Schätzung von User Stories etabliert haben (z.B. Point-Metriken), liegt dabei ein wesentlicher Nachteil in der subjektiven und relativen Bewertung des Aufwandes bzw. der Komplexität durch das Team durch welche eine Verzerrung der Schätzung entstehen kann. Ebenso beanspruchen Schätzpraktiken in agilen Vorgehensweisen, durch deren interaktiven Charakter, einen erheblichen Zeitaufwand. Das Ziel dieser Arbeit bestand darin, zu prüfen, ob die Anwendung bzw. der Einsatz von Machine Learning den Schätzprozess in agilen Vorgehensweisen unterstützen kann. Der erste Teil der Arbeit bereitet dazu einen Einblick in die Welt der agilen Vorgehensweisen mit deren gängigsten Schätzverfahren. Nach einer kurzen Einführung in die Grundlagen des Data Minings bzw. Machine Learnings, wurden mögliche Lösungsansätzen zur Verbesserung der Schätzungen durch Machine Learning Verfahren untersucht. Die Untersuchung beinhaltet die Auswahl und Erläuterung eines Data Mining Vorgehensmodells. Dabei wurde der Cross-Industry Standard Process for Data Mining (CRISP-DM) als Referenzprozess für die Abhandlung der gesamten Arbeit gewählt. Auf Basis dieses Prozessmodells wurden einige relevante Techniken zur Textklassifizierung von User Stories abgehandelt. Demgemäß reichte die Untersuchung von der Phase Business Understanding bis hin zur Evaluation Phase eines Machine Learning Models. Basierend auf drei ausgewählten Machine Learning Verfahren (Naïve Bayes, Random Forest und Multilayer Perceptron) wurde eine Fallstudie durchgeführt. Diese Fallstudie umfasste die Datenvorverarbeitung, sowie die Modellierung und Implementierung eines Machine Learning Models auf Basis eines Real-life Datensets in der Programmiersprache R (Data Discovery und statistische Evaluation) und Python (Modellierung und Implementierung). Der letzte Teil der Fallstudie bestand in der Evaluation des trainierten Modells. Ziel der Fallstudie war es, zu prüfen, ob das Modell in der Lage ist, Story Points auf Basis von User Stories genauer zu schätzen, als durch ein zufälliges Raten bzw. Verteilen von Story Points. Dazu wurde eine ausgewählte Metrik (z.B. Accuracy) für jedes der drei Klassifizierungs-Verfahren, einem Dummy-Klassifizierer gegenübergestellt, welcher zufällig gewählte Story Points aus dem Datenset vorhersagte. Dies wurde auf Basis einer mehrstufigen Kreuzvalidierung (Cross Validation) durchgeführt um eine möglichst hohe Konfidenz der Vorhersagen zu erzielen. Anschließend wurde ein nicht-parametrischer statistischer Test (Wilcoxon Test) auf die erzeugten Vorhersagen (Metrik) angewendet, um festzustellen, ob sich die Mittelwerte tatsächlich voneinander unterscheiden. Die Ergebnisse der vorliegenden Studie zeigen, dass die Schätzung von Story Points durch die Anwendung von Machine Learning, das zufällige Raten erheblich übertreffen kann (unter den Voraussetzungen und Rahmenbedingungen der Fallstudie). Somit lässt sich sagen, dass Techniken des Machine Learnings für den vorliegenden Datensatz verwendet werden können, um den Schätzprozess zu beschleunigen, indem eine initiale Schätzung aller User Stories (z.B. aus einem Backlog) aus einem Machine Learning Modell bereitgestellt wird. Darüber hinaus bieten die Ergebnisse aus dem Modell, bis zu einem gewissen Grad einen unvoreingenommenen Blick auf StoryPoint-Schätzungen, als Grundlage für Diskussionen innerhalb des Teams. Hierbei ist jedoch anzumerken, dass die Validität der Ergebnisse, auf den speziellen Voraussetzungen und Rahmenbedingungen der Fallstudie beschränkt sind. Daher sollten die Ergebnisse dieser Arbeit auf einer breiteren (Anzahl der Datensätze), teamübergreifenden und projektübergreifenden Datenbasis verifiziert werden. Dennoch stellt die vorliegende Arbeit einen ersten Schritt zur Nutzung des maschinellen Lernens für die Story-Point-Schätzung dar.