Was sind nichtfunktionale Anforderungen in der Softwareentwicklung?
Was ist eine nicht funktionale Anforderung?
Nichtfunktionale Anforderung (NFR) spezifiziert das Qualitätsmerkmal eines Softwaresystems. Sie beurteilen das Softwaresystem anhand von Reaktionsfähigkeit, Benutzerfreundlichkeit, Sicherheit, Portabilität und anderen nichtfunktionalen Standards, die für den Erfolg des Softwaresystems entscheidend sind. Beispiel einer nichtfunktionalen Anforderung, „Wie schnell lädt die Website?“ Die Nichterfüllung nichtfunktionaler Anforderungen kann dazu führen, dass Systeme die Benutzeranforderungen nicht erfüllen.
Nichtfunktionale Anforderungen in der Softwareentwicklung ermöglichen es Ihnen, dem Design des Systems über die verschiedenen agilen Backlogs hinweg Beschränkungen oder Einschränkungen aufzuerlegen. Beispiel: Die Site sollte in 3 Sekunden geladen werden, wenn die Anzahl gleichzeitiger Benutzer > 10000 ist. DescriptDie Implementierung nicht-funktionaler Anforderungen ist genauso kritisch wie die Implementierung funktionaler Anforderungen.
Arten nichtfunktionaler Anforderungen
Nachfolgend sind die Haupttypen nichtfunktionaler Anforderungen aufgeführt:
- Benutzerfreundlichkeitsanforderung
- Anforderung an die Gebrauchstauglichkeit
- Anforderung an die Verwaltbarkeit
- Anforderung an die Wiederherstellbarkeit
- Sicherheitsanforderung
- Datum Integrity Anforderung
- Kapazitätsanforderung
- Verfügbarkeitsanforderung
- Skalierbarkeitsanforderung
- Interoperabilitätsanforderung
- Zuverlässigkeitsanforderung
- Wartbarkeitsanforderung
- Regulatorische Anforderungen
- Umweltanforderung
Beispiele für nichtfunktionale Anforderungen
Hier sind einige Beispiele für nicht funktionale Anforderungen:
- Benutzer müssen das ursprünglich vergebene Login-Passwort unmittelbar nach der ersten erfolgreichen Anmeldung ändern. Darüber hinaus sollte die Initiale niemals wiederverwendet werden.
- Den Mitarbeitern ist es nie gestattet, ihre Gehaltsinformationen zu aktualisieren. Ein solcher Versuch sollte dem Sicherheitsadministrator gemeldet werden.
- Jeder erfolglose Versuch eines Benutzers, auf ein Datenelement zuzugreifen, wird in einem Audit-Trail aufgezeichnet.
- Eine Website sollte in der Lage sein, 20 Millionen Benutzer zu bewältigen und dabei ihre Leistung zu beeinträchtigen
- Die Software sollte portabel sein. Daher stellt der Wechsel von einem Betriebssystem auf ein anderes kein Problem dar.
- Der Datenschutz, der Export eingeschränkter Technologien, geistige Eigentumsrechte usw. sollten geprüft werden.
Funktionale vs. nichtfunktionale Anforderungen
Der Hauptunterschied zwischen funktionalen und nicht funktionalen Anforderungen ist wie folgt:
Kenngrößen | Funktionale Anforderung | Nichtfunktionale Anforderung |
---|---|---|
Was ist das? | Verb | Attribute |
Anforderung | Es zwingend erforderlich ist | Es ist nicht verpflichtend |
Erfassungstyp | Es wird im Anwendungsfall erfasst. | Es wird als Qualitätsmerkmal erfasst. |
Endresultat | Produkteigenschaft | Produkteigenschaften |
Capturing | Leicht zu erfassen | Schwer einzufangen |
Ziel | Hilft Ihnen, die Funktionalität der Software zu überprüfen. | Hilft Ihnen, die Leistung der Software zu überprüfen. |
Schwerpunktbereich | Konzentrieren Sie sich auf die Benutzeranforderungen | Konzentriert sich auf die Erwartungen des Benutzers. |
Dokumentation | Beschreiben Sie, was das Produkt bewirkt | Beschreibt, wie das Produkt funktioniert |
Art der Prüfung | Funktionsprüfung wie System, Integration, End-to-End, API-Tests usw. | Nicht-funktionale Tests wie Leistungs-, Stress-, Benutzerfreundlichkeits-, Sicherheitstests usw. |
Test Ausführung | Die Testausführung erfolgt vor nichtfunktionalen Tests. | Nach der Funktionsprüfung |
Produkt-Info | Produkt-Eigenschaften | Produkteigenschaften |
Vorteile nichtfunktionaler Anforderungen
Vorteile/Vorteile von Nicht funktionales Testen sind:
- Die nichtfunktionalen Anforderungen stellen sicher, dass das Softwaresystem den gesetzlichen und Compliance-Regeln entspricht.
- Sie stellen die Zuverlässigkeit, Verfügbarkeit und Leistung des Softwaresystems sicher
- Sie sorgen für ein gutes Benutzererlebnis und eine einfache Bedienung der Software.
- Sie helfen bei der Formulierung der Sicherheitsrichtlinien des Softwaresystems.
Nachteile einer nichtfunktionalen Anforderung
Nachteile/Nachteile der Nichtfunktionsanforderung sind:
- Keine funktionale Anforderung kann sich auf die verschiedenen High-Level-Software-Subsysteme auswirken
- Sie erfordern besondere Berücksichtigung während der Softwarearchitektur-/High-Level-Designphase, was die Kosten erhöht.
- Ihre Implementierung lässt sich normalerweise nicht auf das spezifische Software-Subsystem abbilden.
- Wenn Sie die Architekturphase abgeschlossen haben, ist es schwierig, nicht funktionale Änderungen vorzunehmen.
SCHLÜSSELLERNEN
- NFR bedeutet: Eine nichtfunktionale Anforderung definiert die Leistungseigenschaft eines Softwaresystems.
- Was sind die Arten von nicht funktionalem Verhalten: Skalierbarkeit, Kapazität, Verfügbarkeit, Zuverlässigkeit, Wiederherstellbarkeit, Daten Integrity, usw.
- Eines der NFR-Beispiele ist, dass es Mitarbeitern niemals gestattet ist, ihre Gehaltsinformationen zu aktualisieren. Ein solcher Versuch sollte dem Sicherheitsadministrator gemeldet werden.
- „Functional Requirement“ ist ein Verb, während „Non-Functional Requirement“ ein Attribut ist
- Der Vorteil der nicht-funktionalen Anforderung besteht darin, dass sie Ihnen hilft, eine gute Benutzererfahrung und eine einfache Bedienung der Software sicherzustellen
- Der größte Nachteil nichtfunktionaler Anforderungen besteht darin, dass sie sich auf die verschiedenen Software-Subsysteme auf hoher Ebene auswirken können.