Komplexe Vorbedingungen bei Requirements

Beim Spezifizieren sind wir auf einen Sachverhalt gestoßen, der dem Projekt etwas Kopfzerbrechen bereitet hat. Wie schreibt man Anforderungen, die sehr komplexe Vorbedingungen haben, so auf, dass der Leser der Spezifikation diese versteht.
Mit komplexen Vorbedingungen ist hier gemeint, dass es sich um mehr als 4 Vorbedingungen handelt, die untereinander noch mit diversen Verundungen oder Veroderungen (Boolesche Operatoren) verknüpft sind.
Wie kann das in natürlicher Sprache so geschrieben werden, dass es noch jemand versteht, ohne einen Knoten im Hirn zu bekommen?
Ein Eingangsbeispiel soll das Problem verdeutlichen:

If (Vorbedingung 1) and if (Vorbedingung 2) and if (Vorbedingung 3) or (Vorbedingung 4) and if (Vorbedingung 5 == „not“), the system shall set the smiling-value to „“.

Diesen Satz muss man sehr genau lesen, um ihn zu verstehen. Und auch dann bleibt noch die Möglichkeit, dass der Schreiber etwas anderes gemeint hat.
Obendrein ist das jetzt natürlich nicht der einzige Fall, sondern es gibt davon noch 3 weitere Anforderungen, die zwar alle ähnlich klingen, aber dennoch unterschiedlich sind. Sie unterscheiden sich zum Beispiel immer in den Vorbedingungen. Auf diese Art und Weise wird das Lesen und Verstehen erschwert.
Um das verständlich in einer Spezifikation in natürlicher Sprache zu dokumentieren muss man sich eine geeignete Methode überlegen, wie eine Strukturierung eines solchen Requirements aussehen kann.

Im Folgenden werden zwei mögliche Lösungsansätze beschrieben.

1)

If (Vorbedingung 1) and
– if (Vorbedingung 2) and
– if ( Vorbedingung 3) or (Vorbedingung 4) and
– if (Vorbedingung 5 == „not“),
the system shall set the smiling-value to „“,

Mit dieser Schreibweise gewinnen Sie einen besseren Überblick über die einzelnen Vorbedingungen. So haben Sie einen Vorteil beim Lesen von zwei ähnlichen Anforderungen, die sich nur darin unterscheiden, dass die eine Vorbedingung negiert wird.

2)

Diese Lösung ist teilweise beim Schreiben des obigen Beispiels schon umgesetzt worden. Sie besteht darin Satzteile durch Konstanten oder definierte Begriffe abzukürzen. Das heißt, wenn Sie viele komplexe Vorbedingungen haben, dann ist es eine Möglichkeit, diese durch ein Kürzel oder definierte Begriffe zu ersetzen. Hier wurde das Kürzel (Vorbedingung N) genutzt.

Wenn sie dieses Vorgehen wählen, müssen sie natürlich ihre Vorbedingungen definieren.
Das können Sie entweder
global für die Spezifikation oder
lokal für das Kapitel der Spezifikation machen

Wie Sie am besten die Vorbedingungen definieren, ist abhängig von ihrem Spezifikationskonzept.

Zum Abschluss bleibt noch zu erwähnen, dass es sich beim Auftreten komplexer Vorbedingungen als hilfreich herausgestellt hat, zusätzlich zu den Anforderungen ein Bild oder eine Zeichnung zu erstellen. Selbst wenn das Bild oder die Zeichnung kein UML-Modell in vollendeter Form ist, sondern eher eine „wilde Zeichnung“, werden Sachverhalte mit mehreren Vorbedingungen deutlich besser erklärt und helfen so beim Verstehen der Spezifikation. Auch Entscheidungstabellen sollten Sie als Verständnisgrundlage in Ihre Überlegungen einbeziehen.

Viele Spaß beim Spezifizieren!

Schreibe einen Kommentar

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