Functionele vereisten beschrijven wat het systeem moet doen: bedrijfsoperaties, processen, gebruikersscenario's - dat wil zeggen functionaliteit.
Niet-functionele vereisten bepalen hoe het systeem moet werken: beperkingen, kwaliteitsparameters, prestaties, veiligheid, gebruiksvriendelijkheid, enz. Deze vereisten beïnvloeden vaak de keuze van technologieën, schaalbaarheid en de duurzaamheid van de oplossing.
Waarom is het belangrijk om te onderscheiden:
Kernkenmerken:
Valt ‘gebruiksvriendelijkheid van de interface’ onder functionele vereisten?
Nee, dat is een niet-functionele parameter (usability). Een functionele vereiste is bijvoorbeeld de aanwezigheid van een knop "Opslaan", de niet-functionele vereiste is de snelheid van de respons en het gebruiksgemak.
Kan ik niet-functionele vereisten negeren als ze niet expliciet door de klant zijn vermeld?
Nee. De analist is verplicht om zelfs impliciete niet-functionele vereisten te bespreken en te formaliseren, anders neemt het risico op een mislukte lancering, klachten van gebruikers en extra kosten toe.
“Het systeem moet 1000 aanvragen per minuut kunnen verwerken”. Is dit een functionele vereiste?
Nee, dit is een niet-functionele vereiste - een prestatiekenmerk.
Negatieve case: Het systeem heeft de opgegeven zakelijke functionaliteit volledig gerealiseerd, maar begon te "vertragen" bij hoge belasting, omdat de prestaties helemaal niet in aanmerking waren genomen. Voordelen:
Positieve case: De analist heeft samen met de architect en de klant de maximale belasting, reactietijdcriteria vastgelegd en belastingstests uitgevoerd. Voordelen: