3 – Deliver

Post image for 3 – Deliver

Iedere 2 weken leveren we geteste en werkende software aan U op. Dit doen we op basis van de door U bepaalde project roadmap of release plan. Hierin staan de stukken functionaliteit, die we zullen opleveren, in de door U geplande volgorde.

Elk blok van 2 weken (iteratie) begint met een gezamenlijke planning, waarin de op te leveren functionaliteit wordt vastgesteld en de benodigde ontwikkel- en testtaken worden gepland. Gedurende de uitvoering van de iteratie wordt de functionaliteit ontwikkeld. Aan het einde van de iteratie wordt een review uitgevoerd, waarin de resultaten door de ontwikkelaars worden gepresenteerd aan de gebruikers, testers en andere belangstellenden. Tevens wordt vastgesteld of de resultaten in lijn zijn met de vooraf bepaalde doelstellingen.

De functionaliteit wordt beschreven in een user story. Een user story is te beschouwen als een stuk(je) functionaliteit, dat voor de gebruiker waarde (business value) vertegenwoordigd, en dat binnen één iteratie volledig getest en productierijp kan worden opgeleverd. Voor user stories gebruiken we een template met de volgende onderdelen:

  • Een korte titel (bijv. “Registreer klant”) is bedoeld als placeholder, dat gemakkelijk in gesprekken gebruikt kan worden.
  • De korte omschrijving, waaruit moet blijken voor wie het is, wat het moet doen en waarom (business value).
  • De definitie van done: dit zijn de acceptatietesten zoals gedefiniëerd door de gebruiker.

De user story is bedoeld om de communicatie tussen ontwikkelaar en gebruiker op gang te brengen. Het is dus geen verkapt ontwerp document. Ontwerpdocumenten vergroten de kans om de communicatie te smoren: immers alles staat er toch in? En we willen juist het tegendeel: de communicatie tussen ontwikkelaar, tester en gebruiker bevorderen.

Voordat de ontwikkelaar met de eerste taak van een user story begint, doet hij een intake met de gebruiker. Tijdens deze intake worden de details van de beoogde functionaliteit besproken. Als gevolg van de intake is het mogelijk, dat de ontwikkelaar een aantal taken van de user story herplant (immers hij/zij heeft nieuwe informatie verkregen) of nieuwe taken toevoegt. Vervolgens gaat de ontwikkelaar aan de slag met de geplande taken. Hierbij blijft hij in contact met de gebruiker om nieuwe vragen te kunnen stellen, en om tussenresultaten aan de gebruiker te tonen; dit allemaal om op het juiste pad te blijven. Nadat de ontwikkelaar alle taken heeft afgerond, vindt de sign-off plaats. Hierbij toont de ontwikkelaar de ontwikkelde functionaliteit aan de tester en gebruiker, en stellen ze samen vast of dit voldoet aan de in de user story opgenomen acceptatie testen.

De ontwikkelaars passen het principe van test driven development toe. Dit houdt in, dat eerst de testen worden gedefiniëerd voordat er wordt gecodeerd. Voordeel hiervan is, dat nagenoeg alle code door (geautomatiseerde) testen wordt gedekt, en er onmiddellijk een geautomatiseerde regressietestset wordt opgebouwd. Daarnaast zetten we testtools in om gebruikerstesten te automatiseren.

Elke dag komt het projectteam bij elkaar in een korte stand-up meeting (ook wel daily scrum genoemd), waarin belangrijkste issues en bottlenecks worden uitgewisseld en opgelost.

1 – Align 2 – Prepare 3 – Deliver 4 – Use