Anforderungen natürlichsprachig dokumentieren Flashcards

1
Q

Was ist gemeint mit “Transformationsprozessen” im Zusammenhang mit natürlichsprachiger Dokumentation?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was sind die für das Requirements Engineering relevanten Transformationsprozesse?

A
  • Nominalisierung
  • Substantive ohne Bezugsindex
  • Universalquantoren
  • unvollständig spezifizierte Bedingungen
  • unvollständig spezifizierte Prozesswörter
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was ist Nominalisierung?

A

Ein Prozess wird zu einem Ereignis umformuliert, beispielsweise: “aufnehmen” => die Aufnahme”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was sind die Gefahren von Nominalisierung?

A

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?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie sollte man mit Nominalisierung umgehen?

A

Nicht zwangsläufig vermeiden, aber sicherstellen, dass die verwendeten Begriffe und dahinter liegende Prozesse vollständig definiert sind. Andernfalls die Begriffe im Glossar festhalten.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was sind Substantive ohne Bezugsindex?

A

Unvollständig spezifizierte Substantive, wie “Der Anwender”, “Das System”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Wie sollte man mit Substantiven ohne Bezugsindex umgehen?

A

Vollständig spezifizieren.
Zum Beispiel: “Die Dateneingabe erfolgt über die Tastatur” - Welche Daten genau sollen über die Tastatur eingegeben werden?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was sind Universalquantoren?

A

Angaben über Häufigkeiten, sie fassen eine Menge von Elementen zu einer Gruppe zusammen und treffen Aussagen über deren Verhalten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was sind die Gefahren von Universalquantoren?

A

Dass sie nicht zutreffen: Obwohl beispielsweise von “alle” gesprochen wird, gibt es Elemente, für die die Bedingung nicht zutrifft.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Welche Signalwörter für Universalquantoren gibt es?

A

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”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wie sollte mit Universalquantoren umgegangen werden?

A

Erkennen durch explizite oder implizite Signalwörter, dann gezielt hinterfragen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was sind unvollständig spezifizierte Bedingungen?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind Signalwörter für unvollständig spezifizierte Bedingungen?

A
  • Wenn…dann
  • falls
  • im Falle von
  • abhängig von
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was sind unvollständig spezifizierte Prozesswörter?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wie lassen sich unvollständig spezifizierte Prozesswörter vermeiden?

A

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”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Welche Regeln für die Formulierung von Anforderungen in natürlicher Sprache gibt es?

A
  • Kurze Sätze (1 Anforderung pro Satz)
  • Nebensätze vermeiden
  • Für beschreibende Verben feste Bedeutungen festlegen
  • Mögliche AUsnahmen spezifizieren
  • Implizite Annahmen explizit formulieren
  • Verbindlichkeiten klar festlegen (muss, sollte etc)
  • Zu jedem geforderten Resultat die Funktion und die Eingabedaten, die das Resultat erzeugen, spezifizieren
17
Q

Was ist eine Satzschablone?

A

Eine Satzschablone (Requirements Template) ist ein Bauplan für die syntaktische Struktur einer einzelnen Anforderung.

18
Q

Was sind die Vorteile einer Satzschablone?

A

Unterstützt dabei, effektiv hochwertige ANforderungen zu erstellen

  • leicht erlernbar
  • leicht einsetzbar
19
Q

Wie lautet eine vollständige Satzschablone inkl. Bedingungen?

A

(Wann, unter welcher Bedingung?) muss/sollte/wird das System (Wem?) die Möglichkeit bieten/fähig sein, (Objekt) (Prozesswort)

20
Q

Welches sind die Schritte zur Formulierung von Anforderungen?

A
  • Festlegen der Verbindlichkeit
  • Kern der Anforderung benennen
  • Charakterisieren der Aktivität des Systems
  • Objekte einfügen
  • Formulieren von logischen und zeitlichen Bedingungen
21
Q

Wie wird die Verbindlichkeit einer Anforderung in einer Satzschablone ausgedrückt?

A

Durch die Wörter muss, sollte und wird. Muss ist bindend, sollte nicht, und wird ist in die Zukunft gerichtet.

22
Q

Wie wird die Aktivität des Systems in einer Satzschablone charakterisiert?

A

1) Das System erledigt etwas selbstständig, oder
2) ein Benutzer interagiert mit dem System, oder
3) es liegt eine Anforderung an eine Schnittstelle vor.

23
Q

Warum sollte die Konjunktion “Wenn” bei der Verwendung von Satzschablonen vermieden werden?

A

“Wenn” kann sowohl eine zeitliche als auch eine logische Bedingung bezeichnen. Besser ist “Falls” für logische und “sobald” “nachdem” “während”, “solange” für zeitliche Bedingungen