Schnellere Systemanalyse

Nichtfunktionale Anforderungen strukturiert erfassen und wieder verwenden

Bei der Systementwicklung in Softwareprojekten wird die Formulierung nichtfunktionaler Anforderungen (NFA) oft vernachlässigt. In der Folge kann es geschehen, dass das Endprodukt zwar alle funktionalen Anforderungen erfüllt, aber umständlich zu bedienen ist oder nicht in die bestehende Systemarchitektur integriert werden kann. Es ist deshalb wichtig, die NFA solide zu erstellen. Das ist zwar aufwändig, doch NFA von hoher Qualität können gesammelt und in Folgeprojekten erneut verwendet werden. Das spart Zeit und Kosten. Chris Rupp und Christof Geißel stellen ein Verfahren vor, mit dem NFA entsprechend angepasst für andere Systementwicklungen wieder verwendet werden können.

Nichtfunktionale Anforderungen an Systeme erscheinen oft als eine Nebensache. Fehlen sie jedoch, kann das System in vielen Fällen nicht in Betrieb gehen und ist somit unbrauchbar - selbst wenn es die geforderten Funktionalitäten zu 100% erfüllt. Es ist deshalb wichtig, die nichtfunktionalen Anforderungen sauber aufzusetzen. Dieser Aufwand lohnt sich, denn danach lassen sie sich (im Gegensatz zu funktionalen Anforderungen) für andere Projekte wieder verwenden, so dass Zeit und Kosten eingespart werden.

Im Folgenden erfahren Sie, wie Sie nichtfunktionale Anforderungen erstellen und ohne großen Aufwand an andere Systeme anpassen können. Basis für die Ausführungen sind die Erfahrungen, die wir in diversen Großprojekten gesammelt haben.

Unterscheidung: funktionale und nichtfunktionale Anforderungen

Funktionale Anforderungen an ein System enthalten die Beschreibung dessen, was das System können und leisten soll. Ein Reisewecker beispielsweise soll die Uhrzeit anzeigen und zur eingestellten Weckzeit klingeln. Alle anderen Anforderungen sind nach unserer Definition nichtfunktional.

Nichtfunktionale Anforderungen (NFA) beschreiben beispielsweise, wie oder in welcher Qualität die Funktionalitäten in einem System umgesetzt werden (z.B. Lautstärke des Weckerklingelns), aber auch, was rund um das System gefordert ist (z.B. Lieferung einer Anleitung). Sie definieren Randbedingungen, die den Entwicklern und Software-Zulieferern bei der Realisierung der funktionalen Anforderungen Freiheitsgrade entziehen. Für den Reisewecker können z.B. eine bestimmte Stoßfestigkeit oder ein Höchstgewicht gefordert sein. Beide Randbedingungen haben Auswirkungen auf die Implementierung, z.B. auf die Materialauswahl.

Die Bedeutung nichtfunktionaler Anforderungen im Projekt

Viele Entscheider unterschätzen die Bedeutung nichtfunktionaler Anforderungen. Wurden NFA nicht erstellt oder nicht umgesetzt, lässt sich das z.B. daran erkennen, dass

  • das System zu umständlich zu bedie
Anzeige
Jetzt kostenlos weiterlesen!
Abonnenten des Projekt Magazins wissen mehr!
Starten Sie jetzt unser 4-wöchiges Kennenlern-Angebot: Die Anmeldung dauert nur ein paar Minuten – Sie können also gleich weiterlesen.
  • KostenlosDas Kennenlern-Angebot kostet Sie nichts.
  • Kein RisikoSie können jederzeit kündigen, ohne dass Ihnen Kosten entstehen.
  • Einen Monat lang alles lesen4 Wochen Online-Zugriff auf alle Inhalte des Projekt Magazins.
Tech Link