Sinn oder Unsinn? Negativ formulierte Anforderungen hinterfragt – Teil 1

Ja, nein oder vielleicht? Negativ formulierte Anforderungen hinterfragt

Manche Menschen können ja bekanntlich nicht nein sagen. Oh Moment, manche… da klingelt die SOPHIST REgelwerk-Alarmglocke: Manche – ein ungenaues Mengenwort. Hinterfragen wir das besser gleich, ehe es zu Missverständnissen unter den Bloglesenden kommt. Manche meint hier Requirements Engineers. Denn seit einigen Jahren wird Ihnen in der Praxis immer wieder davon abgeraten, Anforderungen negativ zu formulieren. Doch wenn wir ehrlich sind, hat alles Abgeratene (überspitzt: Verbotene) nun einmal seinen Reiz. Hier und da eine Anforderung negativ formulieren! Ein sicherlich nicht selten geträumter Traum in der RE-Welt.

Stoff, aus dem dieser RE-Traum gemacht ist, nämlich Negationsmöglichkeiten im Deutschen, gibt es reichlich. Glauben Sie nicht? Wir möchten Sie ja nicht desillusionieren oder missgelaunt stimmen, aber sie sind öfter negativ, als sie meinen. Sagen Sie Sachen nicht einfach gedankenlos ohne innezuhalten daher. Richtig verwendet sind die deutschen Negationsmöglichkeiten aber harmlos und weder inhaltsleer noch sinnfrei. Sie zu verhindern, verbieten oder gar aus dem Sprachgebrauch auszuschließen ist daher keine gute Idee.

Das sind, in ziemlich geballter Form, einige Beispiele für die Negation. Wo sie im RE-Kontext sinnvoll zum Einsatz kommen, haben wir mit folgenden, ersten Gedanken zu klären versucht:

  • Die Verwendung von negativ formulierten Anforderungen spart Ressourcen, z. B. ist es einfacher, ein Ausnahmeverhalten negativ zu spezifizieren als das Normalverhalten der anderen zahlreicheren Komponenten positiv zu dokumentieren.
  • Es ist möglich, Goldrandlösungen zu umgehen, falls diese bereits in der Analyse erkannt und verneint wurden.
  • Negativ formulierte Anforderungen können außerdem als Quelle weiterer Anforderungen dienen: Um eine gewünschte Eigenschaft eines Systems auszuschließen, kann es sein, dass hierfür eine neue Funktionalität benötigt wird, z. B. bei Sicherheitsanforderungen.
  • Was ist aber mit Testbarkeit und Eindeutigkeit? Wie lassen sich negative Anforderungen testen und wenn Sie eine Funktionalität ausschließen, welche verlangen Sie dann im Gegenzug eigentlich genau?
  • Und schließlich: Einmal angefangen, ist die Anzahl möglicher negativ formulierter Anforderungen unbegrenzt. Wo ziehen Sie den Schlussstrich?

Auf diesen Gedanken aufbauend haben wir zwei Gruppen negativ formulierter Anforderungen definiert und die obigen Fragen beantwortet. Die eine Gruppe umfasst ausgeschlossene Aspekte, d. h. negativ formulierte Anforderungen, die nicht im zu entwickelndem System umgesetzt werden. Diese Informationen sind Teil einer Anforderungsspezifikation, aber umzusetzen oder zu testen sind sie nicht. Mit dem Begriff inverse Anforderungen meinen wir die zweite Gruppe: Negativ formulierte Anforderungen an ein zu entwickelndes System. Sie sind der Teil einer Anforderungsspezifikation, der getestet und umgesetzt wird.

Dass unsere Untersuchungen kein Freifahrtsschein für negativ formulierte Anforderungen ist, zeigen nach dieser ersten allgemeinen Einführung zwei weitere Blogeinträge, mit denen wir Ihnen die eingeführten Gruppen näher vorstellen und die aufgeworfenen Fragen beantworten. Sollten Sie sich nicht bis dahin gedulden können, erreichen Sie uns positiv gestimmt unter 0911 – 40 900-0 oder per Email heureka@sophist.de.

Hier finden Sie den 2. Teil dieser Blogserie.

Schreibe einen Kommentar

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