Was ist eine nicht funktionale Anforderung?
Nichtfunktionale Anforderungen oder NFRs beschreiben Merkmale von Software, die nicht im Hinblick auf die Funktionalität definiert sind. Im Allgemeinen handelt es sich hierbei um Attribute oder Einschränkungen des Systems, die mit „-ility“ oder „-ilities“ enden. Zum Beispiel:
- Wartbarkeit
- Skalierbarkeit
- Benutzerfreundlichkeit
Nicht funktionale Anforderungstypen
Es gibt potenziell Dutzende von NFR-Typen. Die Bedeutung jedes NFR-Typs hängt von der Art der Software, dem Kontext und dem Anwendungsfall ab. Einige der am häufigsten berücksichtigten NFR-Typen sind:
- Sicherheit
- Leistung
- Skalierbarkeit
- Zuverlässigkeit
- Benutzerfreundlichkeit
- Legal
- Wartbarkeit
- Portabilität
A umfassende Liste der NFRs ist auf Wikipedia verfügbar.
Sicherheit – ein Sonderfall
Es lohnt sich, sich Sicherheit als NFR genauer anzusehen. Obwohl Sicherheit allgemein als nicht funktionsfähig angesehen wird, sind die meisten Sicherheitsanforderungen in Wirklichkeit tatsächlich funktionsfähig. Beispielsweise sind Berechtigungsprüfungen vor der Ausführung eines Prozesses wahrscheinlich eine funktionale Anforderung. In unseren Studien sind über 90% aller Sicherheitsanforderungen funktionsfähig.
Die Vorteile der automatischen Erkennung von NFRs
Nichtfunktionale Anforderungen sind eine wichtige Dimension von Software. Oft werden sie übersehen oder sind von schlechter Qualität (unspezifisch, unvollständig oder inkonsistent). NFRs können einen erheblichen Einfluss auf die Arbeit zur Bereitstellung einer Software haben. Ihre Vernachlässigung kann zu einem erhöhten Risiko für ein Projekt führen.
Wenn Sie ScopeMaster verwenden, um Ihren Bedarf an potenziellen NFRs zu analysieren, können Sie eine Checkliste erstellen, um sicherzustellen, dass NFRs korrekt und angemessen abgedeckt sind. Dadurch wird das Risiko für Ihr Projekt verringert. Außerdem möchten Sie vermeiden, funktionale mit nichtfunktionalen Anforderungen zu vermischen, es sei denn, dies ist erforderlich.
Nicht funktionale Qualitätsanforderungen
Was macht hochwertige NFRs aus? Sie sollten immer versuchen, nichtfunktionale Anforderungen in quantifizierbaren Begriffen zu quantifizieren, die für das Team sinnvoll sind und mit denen sich der Kunde identifizieren kann. Diese sollten Ihnen den „Akzeptanzgrad“ einer bestimmten NFR geben. Zum Beispiel, Alle Webseiten sollten innerhalb von 1,5 Sekunden geladen werden und für die Interaktion durch den Benutzer bereit sein.
Beispiele für nicht funktionale Anforderungen
Hier sind einige NFR-Beispiele. Beachten Sie die Besonderheiten jedes einzelnen. Eindeutige Kriterien für das Bestehen/Nichtbestehen sind jeweils enthalten:
Leistung – Alle Webseiten werden innerhalb von 2 Sekunden über eine 5-MBit/s-Verbindung von überall auf der Welt zur Interaktion geladen.
Kapazität – Mit vernachlässigbaren Änderungen sollte die Software in der Lage sein, 3 Millionen Transaktionsdatensätze zu bewältigen.
Legal – Das System muss mit der DSGVO-Gesetzgebung konform sein, einschließlich der Möglichkeit, persönliche Datensätze auf spezifische Anfrage zu melden und/oder zu löschen.
Benutzerfreundlichkeit – Die Website muss WCAG 2.2 Level A entsprechen