Das Potenzial von generativer KI in der Anforderungsspezifikation – Teil 4

Das Anforderungsmanagement ist ein zentraler Bestandteil der Softwareentwicklung und umfasst alle Aktivitäten, die sich mit der Erhebung, Analyse, Dokumentation und Verwaltung von Anforderungen an ein System beschäftigen. Eine der wichtigsten Disziplinen innerhalb dieses Prozesses ist die Anforderungsspezifikation. Sie hat die Aufgabe, die ermittelten Anforderungen in einer strukturierten, nachvollziehbaren und überprüfbaren Form festzuhalten. Dabei ist entscheidend, dass Anforderungen verständlich, eindeutig, widerspruchsfrei und vollständig beschrieben sind, um spätere Missverständnisse, teure Korrekturen oder Projektabbrüche zu vermeiden.

Generative Künstliche Intelligenz (GenAI) eröffnet neue Möglichkeiten, diese Aufgabe zu unterstützen. Sprachmodelle können dabei helfen, unstrukturierte Eingaben zu analysieren, konsistente Anforderungstexte zu formulieren und die Dokumentation zu standardisieren. Ziel dieses Beitrags ist es daher, zu untersuchen, wie GenAI konkret bei der Anforderungsspezifikation eingesetzt werden kann und welche Chancen und Grenzen sich daraus ergeben.

Ausgangslage

Als Beispiel dient ein fiktives Softwaresystem aus dem Bereich der Warenwirtschaft. Dieses umfasst drei zentrale Komponenten:

  • Verkaufssystem für den Verkauf von Waren und Gütern,
  • Filialensystem zur Verwaltung, Bestellung und Überwachung von Produkten,
  • Unternehmenssystem für die Auswertung und Berichterstellung aus den Daten mehrerer Filialen.

Die Eingaben für die Spezifikation bestehen aus einer Vielzahl an manuell erstellten, fiktiven Dokumenten in unterschiedlichen Formaten, darunter Projektvorschläge (docx), Beobachtungsprotokolle (pdf), Schnittstellenspezifikationen (yaml), Mockups (png) sowie unvollständige Use-Case-Diagramme. Diese Daten werden einem generativen Sprachmodell (ChatGPT-4o) übergeben, um daraus Anforderungen in einem standardisierten, sowohl lesbaren als auch maschinell auswertbaren CSV-Format zu erzeugen.

Vorgehen

Um die Qualität der durch die KI erzeugten Anforderungen möglichst objektiv zu bewerten, werden etablierte Kriterien aus der Anforderungsanalyse herangezogen. Dazu zählen insbesondere:

  • Verständlichkeit: Einheitliche Sprache, klare Benennungen, eindeutige Formulierungen
  • Korrektheit: Übereinstimmung mit den ursprünglichen Sachverhalten der Quelldokumente
  • Eindeutigkeit: Atomarität und Trennschärfe der Anforderungen
  • Vollständigkeit: Abbildung aller relevanten Bedingungen und Kontexte
  • Widerspruchsfreiheit: Konsistenz innerhalb einer Anforderung sowie im Vergleich zu anderen
  • Verifizierbarkeit: Möglichkeit, die Anforderung durch Tests oder Nachweise zu überprüfen
  • Verfolgbarkeit: Dokumentierte Herkunft, Verweise auf Stakeholder, Modelle oder andere Anforderungen

Jede identifizierte Anforderung wird auf einer Skala von 0 (= nicht zutreffend) bis 2 (= zutreffend) in den genannten Kategorien bewertet und der Erfüllungsgrad in Prozent zu der jeweils maximal erreichbaren Punktzahl ausgedrückt. Anschließend wird die KI erneut eingesetzt, um erkannte Schwachstellen gezielt zu korrigieren.

Ergebnisse

Verständlichkeit

88 % der Anforderungen wurden als verständlich eingestuft. 

  • Schwachstellen: Häufig fehlt der Kontext, wann und wo bestimmte Funktionen angeboten werden sollen. Beispiel: „Produkte sollen nach Kategorie, Verfallsdatum oder Lagerort sortiert und gefiltert werden können.“ Solche Anforderungen sind ohne Zusatzinformationen unvollständig. Auch Aufzählungen wie „Das System soll Kennzahlen wie Marge, Lagerumschlag und Kostenverluste erfassen und visualisieren“ bedürfen weiterer Präzisierung.
  • Stärken: Positiv hervorzuheben ist die einheitliche Notation der Anforderungen, die von der KI konsistent angewandt wurde, obwohl dies nicht explizit gefordert war. Dadurch können relevante Aspekte wie Prozesswörter oder Systeme leichter identifiziert werden.

Korrektheit

95 % der Anforderungen gaben die Sachverhalte korrekt wieder.

  • Schwachstellen: Einzelne Anforderungen basieren nicht auf den Quelldokumenten oder sind aufgrund unklarer Ausdrucksweise mehrdeutig.
  • Stärken: Die KI hat keine neue Funktionalität hinzugefügt, sondern bleibt eng am Inhalt der Dokumente.

Eindeutigkeit

73 % der Anforderungen werden als eindeutig bewertet.

  • Schwachstellen: In knapp 50% der Fälle sind Aufzählungen mehrerer Funktionalitäten in einer einzigen Anforderung der Grund für mangelnde Eindeutigkeit, z. B. „… muss analysieren und anzeigen …“.  Solche Anforderungen müssen aufgetrennt und einzeln erwähnt werden. Für die weitere Arbeit ist eine Verfeinerung der aufgeteilten Anforderungen nötig, damit klarer wird, was mit welchen Werten analysiert werden soll und welche Werte dann auf welche Weise visualisiert werden sollen. Die Eingabe- und Ausgabewerte sowie die Verarbeitung dieser unterscheiden sich für diese Funktionalitäten.

Vollständigkeit

71 % der Anforderungen sind vollständig beschrieben.

  • Schwachstellen: In fast allen Fällen fehlen Auslöser oder Bedingungen, die eine Funktion in Gang setzen. Allerdings hat die generative KI hier auch eine große Herausforderung zu meistern, weil Auslöser oder Bedingungen nicht klar aus den Quelldokumenten hervorgegangen sind. Daher ist das Ergebnis erwartbar und angemessen. Ein Anforderungsspezialist hätte auch nur über Fragen an die Stakeholder Auslöser an den Anforderungen ergänzen können.
  • Stärken: Die strukturierte Formulierung erleichtert es, Systeme, Stakeholder und Prozesswörter zu erfassen.

Widerspruchsfreiheit

52 % der Anforderungen sind widerspruchsfrei.

  • Schwachstellen: Zum einen ergeben sich Widersprüche innerhalb der Anforderungen, etwa ob „zentrale Funktionen der Software mobil verfügbar sein“ oder „jederzeit zugänglich“ sein sollen – was unterschiedliche Interpretationen zulässt. Zum anderen ist die Priorisierung der Anforderungen inkonsistent (Muss-Anforderungen mit mittlerer Priorität, Soll-Anforderungen mit hoher Priorität).

Verfolgbarkeit

Die im Prompt geforderte Struktur (ID, Titel, Anforderungstext, Priorität, Kategorie, Modul, Status, Autor, Modelle, Quellen, Testfälle, Stakeholder und Änderungen) hat die generative KI eingehalten ist vollständig ausgefüllt ausgefüllt worden.

  • Stärken: Anforderungen können eindeutig auf die Quelldokumente, Stakeholder oder Modelle zurückgeführt werden. Änderungen sind mit Grund und Zeitstempel dokumentiert. 
  • Schwachstellen: Testfälle sind nicht verknüpft worden, was jedoch akzeptabel ist, da sie in den Quelldokumenten nicht vorhanden oder direkt ableitbar waren.

Erneuter Prompt für Verbesserungen

Betrachtet man die Anforderungsspezifikation im Lichte des Standards IEEE 830 – Recommended Practice for Software Requirements Specifications, so wird deutlich, dass die erzeugten Anforderungen noch weiter verfeinert werden sollten, um eindeutiger, überprüfbarer und verständlicher zu sein. Eine nach IEEE 830 strukturierte Spezifikation umfasst über die Anforderungen hinaus typischerweise:

  • eine Einleitung der gesamten Spezifikation,
  • allgemeine Beschreibungen, etwa zur Produktvision, zu Funktionen und Betriebsumgebungen,
  • sowie einen Anhang mit Glossar, in dem domänenspezifische Begriffe erklärt sind.

Eine vollständige Umsetzung nach IEEE 830 ist im vorliegenden Szenario zwar nicht gefordert gewesen, dennoch zeigt sich, dass ein entsprechender Prompt, wie Anforderungen nach IEEE 830 aussehen würden, das Ergebnis erheblich verbessert. So erzeugt die KI bei explizitem Bezug auf den Standard bereits Vorschläge für Eingaben, Ausgaben, den Zweck einer Anforderung sowie mögliche Verifikationsmethoden. Allerdings bleiben diese Angaben auf einer sehr abstrakten Ebene, sind nicht vollständig oder frei erfunden. Zum Beispiel leitet die KI ab, dass die Verarbeitung des Verkaufs in weniger als 2 Sekunden abgehandelt sein soll. Eine nichtfunktionale Anforderung, die nicht aus den Quellen hervorgeht. Als Testfall hat die KI beispielsweise generiert, das ein Kassiervorgang mit Barzahlung erfolgreich abgeschlossen sein soll. Was jedoch den Erfolg hier kennzeichnet bleibt unkonkret. Jedoch fordern die generierten Testfälle den Anforderungsspezialisten heraus, die gefundenen Anforderungen zu hinterfragen und sie unter Umständen zu verfeinern.

Fazit

Die Ergebnisse zeigen, dass generative KI in der Lage ist, Anforderungen in einer gut strukturierten und konsistenten Form zu erzeugen, selbst ohne die Verwendung vordefinierter Textschablonen (z. B. nach den Sophisten). Funktionalitäten, Systeme oder Stakeholder können aus den strukturierten Texten leicht identifiziert werden. Zudem werden sämtliche Metadaten – wie IDs, Prioritäten, Kategorien, Herkunft und Quellen sowie Verknüpfungen mit Diagrammen oder Modellen – zuverlässig dokumentiert.

Herausfordernd bleibt jedoch, dass viele Anforderungen nicht atomar formuliert sind und Aufzählungen mehrerer Funktionen enthalten. Auch uneinheitliche Benennungen führen zu Mehrdeutigkeiten, welche die Verständlichkeit mindern.

Darüber hinaus lassen sich folgende weiterführende Erkenntnisse ableiten:

  • Potenzial zur Effizienzsteigerung: GenAI kann den Dokumentationsaufwand deutlich reduzieren und dabei helfen, eine einheitliche Struktur zu wahren.
  • Grenzen der Automatisierung: Kontextinformationen, implizite Bedingungen und Priorisierungen erfordern weiterhin menschliche Interpretation und Nacharbeit.
  • Einfluss von Prompt und Format: Die Qualität der Ergebnisse hängt wesentlich von der Präzision des Prompts und der Strenge des Ausgabeformats ab. Eine Orientierung an etablierten Standards wie IEEE 830 kann dazu beitragen, Anforderungen noch systematischer zu strukturieren und gezielter zu prüfen.
  • Empfehlung für die Praxis: Der kombinierte Einsatz von KI-gestützter Generierung und menschlicher Validierung ist vielversprechend, um die Qualität von Anforderungen zu steigern.
  • Zukünftige Forschung: Die KI stärker in die Qualitätssicherung zu integrieren – beispielsweise, indem wir sie Konsistenzprüfungen automatisch durchführen, semantische Analysen vornehmen oder Testfälle generieren lassen – ist ein spannendes Thema für weitere Untersuchungen.

Insgesamt zeigt sich, dass generative KI ein wertvolles Werkzeug zur Unterstützung in der Anforderungsspezifikation darstellt, jedoch kein Ersatz für die fachliche Expertise und die kritische Bewertung durch Anforderungsspezialisten ist.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

DSGVO Cookie Consent mit Real Cookie Banner