Empress
Ziel:
Nichtfunktionale Anforderungen werden unter Berücksichtigung ihrer Beziehungen zu funktionalen Anforderungen und Architekturentscheidungen erhoben, dokumentiert und analysiert.
Beschreibung:
Nichtfunktionale Eigenschaften von Produkten werden verstärkt zum kritischen Wettbewerbskriterium. Die Erhebung, Spezifikation und Überprüfung nichtfunktionaler Anforderungen (NFRs) hat sich daher in der Anforderungsphase etabliert. Dennoch bietet die Mehrzahl der bisherigen Ansätze nur unzureichende Hilfestellung in der praktischen Softwareentwicklung, da sie zum einen hinsichtlich der unterstützten Qualitätsattribute zu restriktiv sind, zum anderen keine Verknüpfung zu funktionalen Anforderungen und Architekturentscheidungen bieten, auf die sie unmittelbar einwirken.
Die vom Fraunhofer IESE unterstützte Technik bietet folgende Hilfestellungen zur Lösung dieser Probleme:
- Hierarchische Qualitätsmodelle, die auf der untersten Ebene klar messbare Attribute zur Spezifikation und Überprüfung von Qualitätseigenschaften bieten
- Anleitung und Unterstützung zur systematischen Erhebung relevanter NFRs
- Anleitung und Unterstützung zur präzisen Spezifikation der NFRs
- Verwendung von Begründungen, um NFRs verständlich zu machen
- Integrierte Behandlung von NFRs und FRs sowie Architekturentscheidungen
- Analyse und Verwaltung von NFR-Beziehungen
Grundlegende Konzepte
Der IESE NFR-Methode liegt ein Meta-Modell zugrunde, das funktionale, nichtfunktionale und architekturorientierte Anforderungen zueinander in Beziehung stellt.
Dabei werden Qualitätsattribute, die sich auf das System, eine Benutzeraufgabe, eine Systemaufgabe oder die gesamte Organisation beziehen können, klar von den nichtfunktionalen Anforderungen abgegrenzt, die eine konkrete und messbare Ausprägung eines Qualitätsattributes darstellen. Die Unterscheidung nach Art des Qualitätsattributes dient dazu, die entsprechenden NFRs gezielter zu erheben.
Ein weiteres Grundkonzept der IESE NFR-Methode ist die Nutzung einer Verfeinerungshierarchie. Zu jeder „highlevel“ NFR, die dem ISO Standard 9126 entnommen ist und in der Regel keine messbare Form darstellt, existiert eine Verfeinerungshierarchie, die Anforderungen dieser Abstraktionsebene auf feinere und direkt messbare Attribute abbildet. Das Qualitätsattribut „Effizienz“ lässt sich beispielsweise über verschiedene Abstraktionsstufen zerlegen, bis sich schließlich messbare Attribute wie „Zugriffszeit“ konkret spezifizieren lassen. Eine Anforderung „Das System muss effizient arbeiten“ kann somit durch präzise Vorgaben der Form „Die Zugriffszeit muss weniger als x Sekunden betragen“ genau beschrieben werden.
Eine weitere Verfeinerung liegt in der Operationalisierung von Qualitätsattributen, also in der Angabe von architektonischen Lösungsmöglichkeiten für einzelne NFRs.
Vorgehen
Die IESE NFR-Methode schlägt ein 5-stufiges Vorgehen vor, um präzise und messbare NFRs und deren Beziehungen zu funktionalen Anforderungen und der Architektur herzuleiten. Daneben bietet die Methode die Möglichkeit, alle erstellten Produkte als „Erfahrungen“ zu konservieren, um sie gegebenenfalls wiederverwenden zu können.
![]()
[Abbildung 1]
- Priorisierung und Auswahl von Qualitätsattributen:
Mit Hilfe eines Fragebogens werden Wünsche, aber auch Fakten bezüglich des Entwicklungskontextes seitens des Kunden erhoben. Diese Angaben helfen zu ermitteln, welche „ highlevel“ Qualitätsattribute aus dem ISO 9126-Standard für die Anforderungserhebung von Bedeutung sind.
- Auswahl und Anpassung geeigneter Qualitätsmodelle:
Zu jedem der in Schritt 1 ermittelten Qualitätsattribute bietet die IESE NFR-Methode ein vorgefertigtes Qualitätsmodell, das die entsprechenden „highlevel“ Qualitätsattribute stufenweise in messbare Attribute überführt. Diese Modelle können meist direkt für die Erhebung der NFRs verwendet werden; in manchen Situationen sind allerdings kontextspezifische Anpassungen dieser Modelle notwendig, die selbst wiederum ggf. wiederverwendet werden können.
- Entwicklung von Checklisten:
Ausgehend von den in Schritt 2 gewählten oder zugeschnittenen Qualitätsmodellen werden Checklisten zur Erhebung der NFRs erstellt. Dazu werden die „high- und mediumlevel“ Qualitätsattribute als Gliederungspunkte der Checkliste verwendet, während die „lowlevel“ und präzise spezifizierbaren Attribute als direkte Erfassungsvariablen der NFRs verstanden werden. Die Unterscheidung der Qualitätsattributstypen nach „System“, „Benutzeraufgabe“, „Systemaufgabe“ und „ Organisation“ hilft, die Checkliste an die entsprechenden Dokumente anzupassen.
- Erhebung und Dokumentation der unterschiedlichen NFRs:
Mit Hilfe der Checklisten werden die einzelnen NFRs abhängig von ihrem Typ auf Basis existierender Dokumente erhoben. Zunächst werden dabei die organisatorischen NFRs ermittelt und an entsprechender Stelle in einem geeigneten Template niedergeschrieben. In einer zweiten Erhebungsrunde werden dann die NFRs bezüglich der Benutzeraufgaben erfasst. Als Spezifikationsstelle haben sich hierfür Anwendungsfälle innerhalb des Use-Case-Diagramms bewährt. Die NFRs an Systemaufgaben werden anhand der detaillierten Beschreibung von Interaktionssequenzen in den Use-Case-Beschreibungen erhoben und dort auch spezifiziert. In einem letzten Schritt werden schließlich NFRs an das System oder einzelne Teilsysteme erhoben. Die Spezifikation erfolgt in relevanten Use Cases und in anwendungsfallübergreifenden Beschreibungen der betroffenen (Sub-) Systeme.
- Konsolidierung der erhobenen Anforderungen:
Ziel der Konsolidierung ist die Sicherstellung, dass die erhobenen NFRs nicht zueinander in Konflikt stehen. Hierfür bietet die IESE NFR-Methode ein Verfahren an, um Konsistenz zu überprüfen. In einem ersten Schritt werden dabei NFRs überprüft, die sich auf dasselbe Qualitätsattribut beziehen. Anschließend wird die Konsistenz zwischen NFRs verschiedener Qualitätsattribute überprüft, indem die im Qualitätsmodell dokumentierten Beziehungen verwendet werden.
Diese Technik erfüllt folgende Praktiken:
Nichtfunktionale Anforderungen erhebenAnforderungen messbar und testbar beschreiben
Scope festlegen
