Das Potenzial von generativer KI in der Anforderungsanalyse – Teil 2
Das Anforderungsmanagement ist eine zentrale Disziplin in der Softwareentwicklung. Es umfasst alle Aktivitäten, die notwendig sind, um Anforderungen an ein System systematisch zu erheben, zu dokumentieren, zu prüfen und im Entwicklungsprozess fortlaufend zu pflegen. Eine wesentliche Teildisziplin innerhalb des Anforderungsmanagements ist die Anforderungsanalyse.
Die Anforderungsanalyse hat das Ziel, die Bedürfnisse und Erwartungen der Stakeholder präzise zu erfassen und in verständliche, überprüfbare sowie konsistente Anforderungen zu überführen. Dabei spielen mehrere Faktoren eine Rolle: die Eindeutigkeit der Formulierungen, die Nachvollziehbarkeit der Prioritäten, die Vermeidung von Redundanzen sowie die klare Zuordnung zu Stakeholdern.
Im vorliegenden Beitrag – aus der Serie mehrerer Artikel – soll untersucht werden, wie generative KI, konkret ChatGPT, in der Anforderungsanalyse eingesetzt werden kann. Das Ziel ist es herauszufinden, in welchen Bereichen eine Unterstützung sinnvoll möglich ist, wo Grenzen bestehen und welche Schlüsse sich daraus für die zukünftige Praxis ziehen lassen.
Ausgangslage
Als Grundlage dient ein fiktives Beispielprojekt: Ein Warenwirtschaftssystem, bestehend aus
Als Eingabedaten stehen verschiedene Dokumente zur Verfügung, darunter Projektvorschläge, Beobachtungsprotokolle, Schnittstellenspezifikationen, unvollständige Use-Case-Diagramme und Mockups. Diese liegen in heterogenen Dateiformaten wie .docx, .png, .yaml oder .pdf vor.
Die Dokumente werden an ChatGPT (Version 4o) übergeben. Als Ausgabe wird ein CSV-Format gewählt, das sowohl menschenlesbar als auch in gängigen Tabellentools weiterverarbeitbar ist.
Vorgehen
Um die Ergebnisse möglichst objektiv beurteilen zu können, erfolgt die Bewertung anhand nachstehender definierter Kriterien. In einem zweiten Schritt wird die KI gezielt mit den erkannten Schwächen konfrontiert und gebeten, Korrekturen vorzunehmen.
Bewertung der Relevanz
Die Relevanz von Anforderungen wird anhand zweier Kriterien überprüft:
- Stakeholder-Zuordnung: Jede Anforderung sollte einer Interessengruppe zugeordnet sein. Bewertet wurde auf einer Skala von 0 (keine Angabe) bis 2 (korrekte Stakeholder-Angabe).
- Einschätzung der Wichtigkeit: Dies umfasst sowohl die Priorisierung in Muss-, Soll-, Kann-Anforderungen.
Bewertung der Redundanz
Um Redundanzen zu identifizieren, werden die Anforderungen paarweise miteinander verglichen und bewertet. Die Bewertung geschieht anhand der nachstehenden Kategorisierung. Demnach können Anforderungen
sein.
Ergebnisse
Relevanzbewertung
Die korrekte Stakeholder-Zuordnung hat ChatGPT in 66 % der Fälle erreicht. Fehler sind insbesondere dadurch entstanden, dass
Nach einer Korrekturschleife sind diese Mängel behoben worden. Die KI hat Namen durch passende Rollen ersetzt und Stakeholder für Dokumente ergänzt, in denen diese nur indirekt zu erkennen gewesen sind, etwa bei Schnittstellenspezifikationen oder Mockups.
Die Bewertung der Priorität ist deutlich schwächer ausgefallen: Nur 51 % der Anforderungen sind korrekt priorisiert. Häufige Probleme sind:
Auch nach weiteren Korrekturanweisungen bleibt die Qualität unbefriedigend. Die KI hat meist nur die Prioritätsstufen geändert, ohne die Anforderungstexte sprachlich zu präzisieren.
Redundanzbewertung
Bei der Redundanzanalyse zeigen die von ChatGPT genrierten Anforderungen deutlich bessere Ergebnisse. Von 1.225 möglichen Anforderungspaaren werden
Funktional gleiche Anforderungen stammen häufig aus unterschiedlichen Quelldokumenten, und werden daher mehrfach aufgeführt, ohne das bei bestehenden Anforderungen eine weiter Quelle ergänzt worden ist. Die ähnlichen Anforderungen lassen sich darauf zurückführen, dass Anforderungen nicht atomar formuliert gewesen sind und Aufzählungen von Eigenschaften des Softwaresystems enthalten haben.
Eine erneute KI-gestützte Prüfung hat zehn redundante Anforderungskandidaten identifiziert, welche die Anzahl funktional gleicher Anforderungspaare gesenkt hat. Die durch die KI entdeckten Redundanzen decken sich mit einer manuellen Überprüfung der von der KI identifzierten Anforderungen. Die KI Unterstützung ist in diesem Fall zuverlässig gewesen.
Fazit
Die Untersuchung zeigt, dass der Einsatz generativer KI in der Anforderungsanalyse sowohl Chancen als auch Grenzen mit sich bringt:
Weiterführende Überlegungen
Neben den genannten Aspekten ergeben sich weitere Schlussfolgerungen:
Zusammenfassend lässt sich festhalten: ChatGPT ist ein nützlicher Begleiter in der Anforderungsanalyse, insbesondere bei der Redundanzprüfung und in der Unterstützung bei Stakeholder-Zuordnungen. Schwächen bestehen vor allem bei der Priorisierung, da diese nicht allein aus Dokumenten abgeleitet werden kann. Generative KI ersetzt die Expertise menschlicher Analyst:innen nicht, bietet jedoch wertvolle Unterstützung, indem sie Routineaufgaben automatisiert und erste Analysen beschleunigt.