De niet-functionele (software)requirements zijn de kwaliteitseisen waaraan een systeem moet voldoen. De ISO 9126 standaard (ISO, 2001) bevat een checklist met kwaliteitseigenschappen voor het opstellen van de niet-functionele requirements. De checklist omvat zes hoofdeigenschappen met daarbinnen subeigenschappen.
(1) Functionaliteit: hoe goed moet het systeem de gewenste ondersteuning leveren?
- Juistheid
- Geschiktheid
- Naleving voorschriften
- Beveiligbaarheid
- Koppelbaarheid
(2) Betrouwbaarheid: in welke mate moet het systeem zonder verstoringen functioneren?
- Bedrijfszekerheid
- Foutbestendigheid
- Herstelbaarheid
(3) Bruikbaarheid (usability): hoe eenvoudig moet het systeem te gebruiken zijn?
- Begrijpelijkheid
- Leerbaarheid
- Gebruiksgemak
- Aantrekkelijkheid
(4) Efficiency: hoe snel moet het systeem haar taken uitvoeren en hoeveel middelen mogen hierbij gebruikt worden?
- Snelheid
- Middelenbeslag
(5) Onderhoudbaarheid: hoe eenvoudig moet het zijn om het systeem aan te passen?
- Wijzigbaarheid
- Analyseerbaarheid
- Stabiliteit
- Testbaarheid
(6) Overdraagbaarheid (portabiliteit): in welke mate moet het systeem naar een andere omgeving overgezet kunnen worden?
- Aanpasbaarheid
- Installeerbaarheid
- Gezamenlijkheid
- Inpasbaarheid
Nicole de Swart geeft in onderstaande documenten (PDF formaat) voor alle kwaliteitseigenschappen een definitie (incl. voorbeelden en 'elicitatievragen' waarmee business analisten niet-functionele requirements concreet en tastbaar kunnen maken vor belanghebbenden):
Bij het opstellen van niet-functionele requirements is het van belang dat de business analist zoekt naar de belangrijkste kwaliteitseigenschappen. Volgens De Swart zijn in de praktijk vaak niet meer dan vijf tot acht kwaliteitseigenschappen echt belangrijk zijn voor een ICT-systeem en is het (dus) overbodig om voor alle kwaliteitseigenschappen niet-functionele requirements op te stellen: "Dat zou veel tijd kosten, weinig toegevoegde waarde opleveren en een saaie exercitie worden". De Swart stelt van elk systeem een bepaalde basiskwaliteit verwacht mag worden (bijv. het feit dat op schermen de responsetijd enkele seconden en niet enkele minuten mag zijn) en is het alleen nodig de 'bovengemiddeld zware en belangrijkste' niet-functionele requirements te specificeren.
Bron: Handboek Requirements (2010), Nicole de Swart en http://www.handboekrequirements.nl/non-functional-requirements/
Zie ook het artikel Softwareproductkwaliteit van Danny Greefhorst en Gert Florijn in Informatie.