Agile
Agile is een iteratieve werkwijze om snel werkende deelproducten te maken en deze continu aan veranderende klantwensen aan te passen.
Betekenis
Agile is een iteratieve (zich herhalende) methode om wensen en eisen boven water te krijgen en eraan te blijven voldoen. Door korte iteraties ontstaat een ontwerp of product dat stap voor stap beter aansluit bij de klantwensen.
Toepassing
Agile wordt toegepast om producten (oorspronkelijk vooral software) sneller en nauwer bij klantbehoeften te brengen.
- In softwareontwikkeling als alternatief voor de traditionele watervalmethode.
- In projecten met kleine, vaak multi-disciplinaire teams.
- In samenwerkingsverbanden met veel contact tussen klant, ontwikkelaar en leverancier.
- Bij projecten die incrementeel opgebouwd en getest worden met werkende deelproducten per sprint.
Aandachtspunten
- Betrek alle belanghebbenden intensief bij het projectverloop.
- Vorm multi-disciplinaire teams om kennisafdelingen te overstijgen.
- Visualiseer snel concrete klantwensen en werk met kleine doelen.
- Houd rekening met mogelijke tegenwerking in oudere of hiërarchische organisaties, vaak vanuit IT-afdelingen of het middle-management.
- Zorg dat sprintresultaten demonstreerbaar en werkend zijn, zodat ze integraal getest kunnen worden met eerdere sprints.
Werking / principe
- Gebruik een product backlog: de verzameling van functionele eisen, specificaties en user stories voor het totale systeem.
- Gebruik een sprint backlog: de selectie van specificaties en taken voor een enkele sprint.
- Werk in sprints van doorgaans twee tot vier weken; tijdens een sprint worden eisen ontworpen, gecodeerd en getest.
- Voer dagelijkse evaluaties uit en pas bijsturing toe waar nodig; streef naar een demonstreerbaar en werkend deelproduct (deliverable) aan het einde van elke sprint.
- Bouw het systeem incrementeel op: elke sprint voegt een werkend deel toe aan het geheel.
Scrum en terminologie
- Scrum is een vorm van agile werken die in sprints opereert en waarbij het scrum-team bestaat uit leden van verschillende disciplines.
- Een sprint-team werkt simultaan aan het product, niet in lange opeenvolgende fasen; het resultaat van een sprint is een werkend deelproduct dat getoond kan worden.
- Scrum beschrijft het totaal van activiteiten die gericht zijn op een zo goed mogelijk resultaat en bevordert empirisch leren tijdens het proces.
Verschil met traditionele methoden
- Geen lange, sequentiële overdracht van fase naar fase (analyse → ontwerp → ontwikkeling → testen), zoals bij de watervalmethode.
- Geen langdurig proces met telkens "over de muur" schuiven, maar intensieve samenwerking binnen het team en met de klant.
- Meer focus op interactie en werkende resultaten dan op formele processen.