Wat betekenen iteratief en incrementeel in Agile?
‘Iteratief’ en ‘incrementeel’ zijn veel voorkomende begrippen in organisaties die agile. Toch halen velen deze termen door elkaar. Dus, wat betekenen iteratief en incrementeel in Agile?
Kort gezegd:
- In een iteratief proces is er sprake van een stelselmatige herhaling van kleine stapjes. Hierin start je met een ruwe versie en werk je in stapjes naar een steeds verfijnder product.
- In een incrementeel proces groeit stap voor stap het aantal of de omvang of de functionaliteit van het eindproduct.
- In een echt waterval project kun je het resultaat pas opleveren als het klaar is in één ‘big bang’.
Om het visueel te maken, zie je in de bovenstaande figuur vier kwadranten. Deze ontstaan door de twee assen. Hierbij betreft de horizontale lijn het wel of juist niet gebruiken van een incrementeel proces. Dan stelt de verticale lijn het wel of niet gebruiken van een iteratief proces voor.
Niet iteratief en niet incrementeel
In de linkerbenedenhoek zie je de aanpak waarbij een team noch iteratief en noch incrementeel werkt. Dit is dus typisch een ‘waterval’-aanpak. Het projectteam doorloopt alle activiteiten, zoals ‘ontwerpen’, ‘analyseren’, ‘bouwen’, ‘testen’ en ‘in productie nemen’, eenmaal voor het gehele project. In dit geval gaat het dus om een oplevering van het eindproduct gebaseerd op een vaste scope. Bij deze aanpak kan de klant de toegevoegde waarde (pas) verzilveren na de oplevering van het eindproduct. Immers pas als het eindproduct draait in de productieomgeving, gebeurt er iets waar de klant wat aan heeft. Je kunt met verschillende projectmanagementmethoden op een watervalmanier opleveren, zoals PRINCE2.
Niet iteratief en wel incrementeel
In het kwadrant rechtsonder zie je een incrementele aanpak zonder iteraties. Dit is een gefaseerde oplevering van kleinere onderdelen of functionaliteiten van het eindproduct. Alle activiteiten binnen een bepaalde fase zoals ‘ontwerp’, ‘analyse’, ‘bouwen’, ‘testen’ en ‘in productie nemen’, worden één keer uitgevoerd. Binnen een bepaalde fase ligt de scope vast. Tegelijkertijd is het totale eindproduct gebaseerd op een meer dynamische of flexibele scope. Die kan dan voorafgaand aan een volgende fase worden bijgesteld. De klant kan toegevoegde waarde bereiken na elke oplevering van het (deel)product. Op deze manier incrementeel opleveren kun je bijvoorbeeld doen met PRINCE2 of PRINCE2 Agile.
Wel iteratief en niet incrementeel
In het linker bovenste kwadrant zie je een spiraalvormige of iteratieve aanpak zonder incrementele oplevering. Dit is één oplevering waarbij het eindproduct tot stand komt door gebruik te maken van meerdere iteraties. Een goed voorbeeld van deze aanpak is ‘design thinking’. ‘Design thinking’ is een aanpak voor de ontwikkeling van ontwerpconcepten zoals bijvoorbeeld voor een gebouw, een machine, een communicatiecampagne, enzovoorts.
In de spiraal zie je een opeenvolging van de activiteiten ‘framen’, ‘analyse’, ‘ideegeneratie’, ‘realisatie’ en ‘reflectie’. Deze opeenvolging wordt herhaaldelijk of iteratief uitgevoerd. Zo kom je in elke iteratie dichter bij het uiteindelijke, juiste of vereiste, product. Vaak is het beoogde eindproduct een prototype of model. In deze spiraalbenadering is de scope dynamisch of flexibel. De klant kan de toegevoegde waarde (pas) bereiken na de oplevering van het eindproduct. Een van de belangrijkste doelen in deze aanpak is het komen tot de juistheid van de oplossing.
Wel iteratief en wel incrementeel
In het kwadrant rechtsboven zie je de combinatie van een incrementele en een iteratieve aanpak. Dit is Agile. Hierbij kun je denken aan werkwijzen zoals Scrum maar ook AgilePM en PRINCE2 Agile. Aan het einde van elke sprint of timebox, levert het team een increment van het product op. Dit increment ontstaat aan de hand van vele iteraties om te komen tot kleine, correcte onderdeeltjes van het product. Deze onderdeeltjes ken je waarschijnlijk als ‘user stories’ of ‘backlog items’. Hiermee levert het team het eindproduct stap voor stap op. De scope is hierbij dynamisch of flexibel. Dit maakt dat de klant (al) toegevoegde waarde kan ontvangen na elke deeloplevering. Een van de belangrijkste doelen in deze aanpak is dan ook het snel genereren van klantwaarde met frequente opleveringen en gebruikmaken van klantenfeedback.
Wil je meer weten over onze Agile trainingen? Neem daarvoor contact met ons op en wij helpen je graag verder. Tijdens kantooruren kun je ook terecht op onze chat.
Henny Portman is blogger, recensent, auteur, internationaal spreker, consultant portfoliomanagement en PPM volwassenheidsmetingen.