Van up front naar just in time requirements
We zijn gewend om requirements te definiëren ver voordat de ontwikkelaars ze gaan implementeren (up front). De requirements moeten immers bekend zijn om een offerte voor het IT-traject af te geven, om een planning te maken, om de softwarearchitectuur op te stellen, om het systeem te ontwerpen en om de software te bouwen. We weten inmiddels ook dat wijzigingen in de overeengekomen requirements onvermijdelijk zijn. Er blijken achteraf requirements te ontbreken of de behoefte van de business wijzigt door bijvoorbeeld veranderende marktomstandigheden, aanpassingen in de bedrijfsprocessen of nieuwe wet- en regelgeving.
Just in time
Zou het niet mooi zijn als we de requirements 'juist in time' kunnen vaststellen: Net op tijd om te kunnen plannen en net op tijd om de software te kunnen ontwikkelen. We zouden dan geen last hebben van wijzigende requirements, geen change control board nodig hebben en geen scope creep kennen. Dit scheelt veel tijd, geld en gedoe.
Agile
Dat 'just in time' requirements mogelijk zijn, hebben Agile-projecten inmiddels bewezen. Deze projecten stellen het vaststellen van requirements zo lang mogelijk uit. Ze hebben alleen een globaal totaalbeeld van het gewenste systeem. Net genoeg om de doorlooptijd van het project in te schatten. Alleen de requirements met de hoogste prioriteit die daardoor de komende weken geïmplementeerd worden door het ontwikkelteam, worden nader uitgewerkt. Het detailniveau van deze requirements is net genoeg om de relatieve ontwikkelinspanning (niet in uren) te schatten. Op basis van de gemiddelde ontwikkelsnelheid (velocity) van het team, is eenvoudig een betrouwbare planning voor de eerstvolgende iteratie te maken. Pas als een ontwikkelaar daadwerkelijk de software voor een bepaalde requirement gaat bouwen, spreekt hij de wensen en de details door met de continue beschikbare (en fysiek aanwezige) vertegenwoordiger van de business. Met deze aanpak zijn de juiste requirements, op het juiste detailniveau, 'just in time' beschikbaar. Omvangrijke producten met uitgebreide specificaties hoeven dan niet opgesteld en niet onderhouden te worden.
Probeer jij de requirements just in time op te stellen? Hoe goed lukt dat? Deel je ervaringen in het reactieveld hieronder.


Nicole de Swart is Requirements Specialist en werkt als zelfstandig consultant, trainer en (agile) coach. Ze is auteur van 
