Wat is het specificeren van requirements?

Het specificeren van requirements houdt in dat verzamelde en geanalyseerde requirements op een duidelijke, eenduidige en gestructureerde wijze worden vastgelegd. Het gaat om het nauwkeurig en helder formuleren van wat het systeem moet kunnen (functionele requirements) en onder welke condities en kwaliteitseisen het moet presteren (non-functionele requirements).

Casus

Een ontwikkelteam werkt aan een webapplicatie voor het reserveren van vergaderruimtes. Tijdens eerdere fasen zijn verschillende wensen en eisen geïnventariseerd. Deze eisen worden nu gespecificeerd.

Hoe verloopt het specificeren van requirements?

Het specificeren van requirements bestaat uit twee belangrijke vaardigheden:

Vastleggen van requirements

Bij het vastleggen van requirements gebruik je een heldere en gestructureerde zinsopbouw: <onderwerp / actor> <werkwoord> <gewenste actie/resultaat>.

IDOnderwerp/ActorWerkwoordGewenste actie/resultaat
FR1Gebruikerselecteertbeschikbare tijden voor reservering
FR2Systeemverstuurtbevestigingsmail na succesvolle reservering

Deze structuur zorgt voor traceerbaarheid doordat elke requirement duidelijk geïdentificeerd kan worden.

Opsplitsen van functionele en non-functionele requirements

Bij het opsplitsen van functionele en non-functionele requirements maak je onderscheid tussen: Functionele requirements: Eisen die beschrijven wat het systeem moet doen of kunnen.

IDBeschrijving
FR1Gebruiker selecteert beschikbare tijden voor reservering.
FR2Systeem verstuurt bevestigingsmail na reservering.
FR3Systeem slaat reserveringsgegevens op.

Non-functionele requirements: Eisen die specificeren hoe goed het systeem zijn taken moet uitvoeren.

IDBeschrijving
NFR1De applicatie moet 99,9% beschikbaar zijn binnen kantooruren.
NFR2De responstijd van het systeem mag maximaal 2 seconden bedragen bij maximaal 1000 gelijktijdige gebruikers.
NFR3Applicatie kan minimaal 100 gelijktijdige gebruikers ondersteunen zonder prestatieverlies.

Door deze opsplitsing kunnen verschillende soorten eisen beter worden beheerd, gecommuniceerd en gevalideerd.

Hoe gebruik je het specificeren van requirements?

Gebruik de volgende richtlijnen om het specificeren van requirements effectief toe te passen:

  • Leg alle eisen eenduidig en concreet vast met unieke identifiers.
  • Maak onderscheid tussen wat het systeem moet doen (functioneel) en hoe goed het dat moet doen (non-functioneel).
  • Valideer de opgestelde specificaties regelmatig met belanghebbenden om te controleren op correctheid en volledigheid.

SCRUM

Binnen SCRUM vindt het specificeren van requirements plaats tijdens refinement sessies en sprint planning. In refinement sessies worden de verzamelde requirements nauwkeurig vastgelegd en opgesplitst in functionele en non-functionele onderdelen. Tijdens de sprint planning worden de specifieke requirements voor de komende sprint definitief vastgesteld. Traceerbaarheid en duidelijke specificatie helpen het ontwikkelteam om doelgericht en effectief aan de implementatie te werken.

SSDLC

Binnen de Secure Software Development Life Cycle (SSDLC) wordt het specificeren van requirements vroeg in het proces toegepast, direct na het analyseren van requirements. Tijdens deze fase worden requirements duidelijk en traceerbaar vastgelegd en opgesplitst, zodat deze gedurende het gehele ontwikkeltraject consistent en beheersbaar blijven. Dit zorgt voor een stevig fundament waarop latere ontwerp-, ontwikkel- en testfasen kunnen voortbouwen.

Casus

Voor het reserveringssysteem is het belangrijk dat de ontwikkelaars weten welke functies gebouwd moeten worden en hoe deze moeten presteren. Requirements worden duidelijk gescheiden en met unieke identifiers traceerbaar gemaakt.

Door deze aanpak ontstaat er een heldere en goed communiceerbare requirementsanalyse die effectief kan worden ingezet tijdens de ontwikkeling.


Volgende stap: Uitleg valideren requirements