KI-gestützte Analyse von Anforderungen


Der Brandschutz im neuen Gebäude entspricht nicht den gesetzlichen Vorgaben? Die ausgelieferte Software entspricht nicht dem Bedarf des Auftraggebers? Ein Grund für Mängel dieser Art können missverständliche Anforderungen gewesen sein. Das »Requirements Analysis Toolkit (RAT)« unterstützt Projektmitarbeitende dabei, nicht-eindeutige Anforderungen zu erkennen, umzuformulieren und damit Risiken und Kosten für beteiligte Unternehmen zu minimieren. Dies geschieht mittels der Analyse und Konsolidierung von Anforderungen sowie ihrer sprachlichen Qualitätssicherung.

Requirements Analysis Toolkit (RAT)

© Fraunhofer FKIE
Das »Requirements Analysis Toolkit« (RAT)unterstützt durch die Analyse, sprachliche Qualitätssicherung und Konsolidierung von Anforderungen dabei, nicht-eindeutige Anforderungen zu erkennen, umzuformulieren und damit Risiken und Kosten für Unternehmen zu minimieren.
© 123RF/baton72
Sich einen Überblick über den Anforderungsbestand eines Projekts zu verschaffen, kann eine große bis unmögliche Herausforderung darstellen. Einfach zu groß sind zuweilen die Datenbestände. Da technische Unterstützung zudem bislang fehlte, mussten Mitarbeitende weitgehend manuell arbeiten. Das ändert sich mit RAT: Das Tool liefert ab sofort wertvolle zeit- und kostensparende Unterstützung.

In einem Beschaffungsprozess sind die Erhebung, Analyse und Weiterverarbeitung von Anforderungen an ein benötigtes System bzw. Produkt zentrale Bausteine. Anforderungen müssen den Bedarf von zukünftig Nutzenden vollständig darstellen und dabei möglichst eindeutig und unmissverständlich formuliert sein, sodass Auftraggebende daraus eine Leistungsbeschreibung erstellen können. Diese darf für Realisierende keinerlei Interpretationsspielraum offenlassen und muss einen vereinbarten Leistungsrahmen genau und unmissverständlich definieren. Nur so ist sichergestellt, dass das gelieferte System wirklich dem Bedarf der Nutzenden entspricht. Sind die Anforderungen nicht eindeutig, entstehen hohe Risiken und Kosten durch spät erforderlich werdende Umplanungen im Projekt. Anforderungen sind also ein wichtiges Bindeglied zwischen Nutzenden, Auftraggebenden und realisierender Industrie.

Um das Risiko missverständlicher Anforderungen zu minimieren, wurde das Requirements Analysis Toolkit (RAT) entwickelt, das diese Eindeutigkeit durch verschiedene Bausteine fördert. So steht neben der sprachlichen Qualitätssicherung jeder einzelnen Anforderung auch die Analyse und Konsolidierung der Gesamtmenge der Anforderungen in Bezug auf eine konsistente Fachsprache und Dopplungen im Fokus. Zudem werden Anforderungen existierenden Elementen bzw. Komponenten im Unternehmensportfolio zugeordnet und Lücken dort so identifiziert. Zu diesem Zweck ist es ebenfalls notwendig, einen Anforderungsbestand nach verschiedenen inhaltlichen und formalen Kriterien zu klassifizieren, zu durchsuchen und zu ordnen. Nur so kann ein Überblick über den gesamten Anforderungsbestand gewonnen werden.

Da es für all diese Aufgaben bisher keine Tool-Unterstützung gab, mussten Projektmitarbeitende weitgehend manuell arbeiten. Das ist nicht nur sehr zeit- und kostenintensiv, sondern insbesondere bei großen Anforderungsbeständen auch nahezu unmöglich. Nun unterstützt RAT Projektmitarbeitende dabei, möglichst eindeutige und unmissverständliche Anforderungen zu erhalten und diese bestehenden Portfolio-Elementen zuzuordnen.

Zielgruppe von RAT sind insbesondere Organisationen, die Systeme an die Industrie oder Zulieferer beauftragen und gewünschte Leistungen somit eindeutig beschreiben müssen. Dies sind zum Beispiel Beschaffungsämter der öffentlichen Hand oder Beschaffungs- und Logistikabteilungen von großen Firmen bzw. der integrierenden Industrie.

 

RAT bietet einen semi-automatischen Ansatz der Anforderungsbearbeitung. Zunächst werden Nutzende auf kritische Stellen in Anforderungen hingewiesen, die dann manuell von Nutzenden umformuliert werden können. Anschließend macht RAT Vorschläge für zu treffende Entscheidungen bei der Weiterverarbeitung, die dann interaktiv von Nutzenden bestätigt oder abgelehnt werden können.

Hierfür wurde eine Reihe von Microservices implementiert, die innerhalb eines geschlossenen Tools verwendet werden können. Diese Microservices dienen der Analyse, sprachlichen Qualitätssicherung und Konsolidierung von Anforderungen.

Im Rahmen der Analyse wird die Anforderung zunächst in ihre inhaltlichen und sprachlichen Bestandteile Systemwort, Prozesswort, Priorität/Modalverb, Bedingung, Art der Systemaktivität und Objekt und Ergänzung zerlegt. Diese Grundlage ermöglicht eine semantische Suche im Anforderungsbestand und die inhaltliche Klassifikation der Anforderungen, z.B. nach funktional und nicht-funktional. Weiterhin können Anforderungen u.a. nach den Kriterien IT-relevant oder nicht-IT-relevant klassifiziert werden. Auch andere gewünschte Klassifikationen, beispielsweise nach individuell definierten Kategorien, sind möglich.

RAT bietet zudem umfangreiche Sortier- und Filterangebote auf Wort- und Anforderungsebene. Sie erlauben die Exploration und die Bearbeitung des Anforderungsbestands nach selbstgewählten Kriterien. Somit ist es möglich, einen großen Anforderungsbestand zum Beispiel inhaltlich zu gruppieren. Unterstützte Sprachen sind Deutsch und Englisch.

Im Rahmen der Anforderungskonsolidierung können zudem Dubletten oder sehr ähnliche Anforderungen im Bestand gefunden und verschiedene Schreibweisen und Abkürzungen des gleichen Worts oder verschiedene Begriffe mit gleichem Inhalt (z. B. verschicken und versenden) im Bestand vereinheitlicht werden.

Die Qualitätssicherung von Anforderungen ist ein Herzstück von RAT und beinhaltet die Prüfung sprachlicher Regeln, die die Formulierung eindeutiger Anforderungen unterstützen. Dazu gehören zum Beispiel die Identifizierung von Passivkonstruktionen, unvollständigen Bedingungen oder Weak Words im Anforderungstext wie z. B. »klein« ohne weitere Spezifikationen. RAT identifiziert diese möglichen Regelverstöße, jedoch bleibt es die Aufgabe der Projektmitarbeitenden, die identifizierten Verstöße zu bewerten und gegebenenfalls zu korrigieren. RAT nimmt keine selbstständige Korrektur vor.

RAT basiert auf modernsten Techniken aus den Bereichen Natural Language Processing (NLP) und Machine Learning

RAT erleichtert Projektmitarbeitenden nicht nur die inhaltliche Analyse, Exploration und Konsolidierung eines Anforderungsbestands, sondern unterstützt zudem bei der Vermeidung früher Fehler im Beschaffungsprozess, die durch »schlechte« Anforderungen ausgelöst werden. Dies geschieht unter anderem durch die Verbesserung der sprachlichen Qualität und damit der Eindeutigkeit der Anforderungen.

Der semi-automatische Ansatz von RAT basiert auf automatisierten Hinweisen oder Vorschlägen, die aufgrund des Expertenwissens der Nutzenden entweder angenommen oder verworfen werden und dadurch gleichzeitig die kontinuierliche Verbesserung der KI-Algorithmen ermöglichen. RAT unterstützt Projektmitarbeitende jeglicher Branche dabei, Fehler, Inkonsistenzen und missverständlich formulierte Anforderungen bereits früh im Beschaffungsprozess zu erkennen und sprachliche Defekte zu beheben. Auch das Durchsuchen eines Anforderungsbestands wird erheblich vereinfacht. Auf diese Weise wird eine optimale Grundlage für die Weiterverarbeitung der Anforderungen geschaffen.

Weiterhin ermöglicht RAT einen effizienten Abgleich von Projektanforderungen mit einem bestehenden Unternehmensportfolio, sodass neben der Identifizierung vorhandener Lücken bzw. eines Weiterentwicklungsbedarfs des Portfolios insbesondere die Wiederverwendung von bereits vorhandenen Portfolioelementen, Komponenten bzw. Funktionen gefördert wird.

RAT existiert als Demonstrator und befindet sich derzeit in der Testphase mit Nutzern. Zukünftig wird RAT kontinuierlich weiterentwickelt und für weitere Kundenkreise angepasst. Individuelle Anpassungen an die spezifischen Bedarfe der Nutzer sind dabei, soweit technisch umsetzbar, selbstverständlich möglich.