Core Concepts
Ein automatisierter Ansatz zur Erkennung von Konflikten in Softwareanforderungen durch Analyse der semantischen Ähnlichkeit und Überlappung von Entitäten.
Abstract
Die Studie präsentiert zwei neuartige Ansätze zur Erkennung von Konflikten in Softwareanforderungen:
S3CDA (Supervised Semantic Similarity-based Conflict Detection Algorithm):
In Phase I wird die Ähnlichkeit zwischen Anforderungen anhand von Satzeinbettungen und Kosinusähnlichkeit berechnet, um potenzielle Konfliktkandidaten zu identifizieren.
In Phase II werden die Kandidaten semantisch analysiert, indem die Überlappung von Entitäten (Akteure, Aktionen, Objekte) zwischen den Anforderungen bewertet wird.
UnSupCDA (Unsupervised Conflict Detection Algorithm):
Dieser Ansatz kombiniert Schlüsselkomponenten von S3CDA, um Konflikte in ungelabelten Softwareanforderungen zu erkennen.
Er verwendet Satzeinbettungen, Ähnlichkeitsberechnungen und Entitätsüberlappung, ohne auf gelabelte Trainingsdaten angewiesen zu sein.
Die Leistungsfähigkeit der Ansätze wird anhand von fünf Datensätzen aus verschiedenen Domänen evaluiert. Die Ergebnisse zeigen, dass die vorgeschlagenen Methoden eine hohe Genauigkeit bei der automatischen Erkennung von Konflikten in Softwareanforderungen erreichen.
Stats
Die Implementierung der UAV-Anforderung "The UAV shall charge to 50 % in less than 3 hours" kann nicht gleichzeitig mit der Implementierung der Anforderung "The UAV shall fully charge in less than 3 hours" erfolgen, da dies zu Inkonsistenzen im System führen würde.
Quotes
"Conflicting und unverständliche Softwareanforderungen können zu längeren Projektlaufzeiten, Ineffizienzen in Softwaresystemen und Kostensteigerungen führen."
"Die Erkennung von Konflikten in der frühen Entwicklungsphase ist sehr wichtig, aber die manuelle Identifizierung dieser Konflikte kann mühsam und zeitaufwendig sein."