Anforderungen natürlichsprachig dokumentieren Flashcards
Was ist gemeint mit “Transformationsprozessen” im Zusammenhang mit natürlichsprachiger Dokumentation?
Sprache ist oft mehrdeutig und interpretierbar. Bei der Formulierung von Anforderungen werden diese oft nach bestimmten Regeln transformiert, die für Unschärfe in der Dokumentation sorgen.
Ziel ist es, Formulierungen aufzudecken, die durch subjektive Erfahrungen oder Formulierungen geprägt sind, und diese durch klare Formulierungen zu ersetzen.
Was sind die für das Requirements Engineering relevanten Transformationsprozesse?
- Nominalisierung
- Substantive ohne Bezugsindex
- Universalquantoren
- unvollständig spezifizierte Bedingungen
- unvollständig spezifizierte Prozesswörter
Was ist Nominalisierung?
Ein Prozess wird zu einem Ereignis umformuliert, beispielsweise: “aufnehmen” => die Aufnahme”
Was sind die Gefahren von Nominalisierung?
Wichtige Informationen über den Prozess können verloren gehen, z.B. “Datenverlust” bedeutet: Jemand/Etwas verliert zu einem Zeitpunkt auf eine gewisse Weise Daten.
Daraus ergeben sich relevanten Fragen, wie: Welche Daten gehen verloren, wodurch, wie wird der Verlust der Daten erkannt?
Wie sollte man mit Nominalisierung umgehen?
Nicht zwangsläufig vermeiden, aber sicherstellen, dass die verwendeten Begriffe und dahinter liegende Prozesse vollständig definiert sind. Andernfalls die Begriffe im Glossar festhalten.
Was sind Substantive ohne Bezugsindex?
Unvollständig spezifizierte Substantive, wie “Der Anwender”, “Das System”
Wie sollte man mit Substantiven ohne Bezugsindex umgehen?
Vollständig spezifizieren.
Zum Beispiel: “Die Dateneingabe erfolgt über die Tastatur” - Welche Daten genau sollen über die Tastatur eingegeben werden?
Was sind Universalquantoren?
Angaben über Häufigkeiten, sie fassen eine Menge von Elementen zu einer Gruppe zusammen und treffen Aussagen über deren Verhalten
Was sind die Gefahren von Universalquantoren?
Dass sie nicht zutreffen: Obwohl beispielsweise von “alle” gesprochen wird, gibt es Elemente, für die die Bedingung nicht zutrifft.
Welche Signalwörter für Universalquantoren gibt es?
Beispielsweise:
- Nie
- Immer
- Kein
- Jeder
- Alle
- Irgendeiner
- Nichts
Achtung, Signalwörter können auch implizit vorkommen: “Dem Benutzer soll ermöglicht werden…” beinhaltet ggf. “allen Benutzern”
Wie sollte mit Universalquantoren umgegangen werden?
Erkennen durch explizite oder implizite Signalwörter, dann gezielt hinterfragen
Was sind unvollständig spezifizierte Bedingungen?
Anforderungen, die Bedingungen halten, geben vor, was passiert wenn die Bedingung eintritt, müssen aber auch beschreiben was passieren soll, wenn die Bedingung nicht eintritt. Tun sie es nicht, sind sie unvollständig spezifiziert
Was sind Signalwörter für unvollständig spezifizierte Bedingungen?
- Wenn…dann
- falls
- im Falle von
- abhängig von
Was sind unvollständig spezifizierte Prozesswörter?
Manche Prozesswörter erfordern mehr als ein Substantiv, um vollständig spezifiziert szu sein. Beispielsweise benötigt “übertragen” die Informationen “was” “von wo” “wohin” übertragen wird.
Wie lassen sich unvollständig spezifizierte Prozesswörter vermeiden?
Passiv-Formulierungen durch Aktiv-Formulierungen ersetzen, z.B. “es werden Daten eingegeben” zu “Der Benutzer muss die Möglichkeit haben, seinen Usernamen und sein Passwort über die Tastatur einzugeben”