De verschuiving van projectmatig werken naar Agile 1. Introductie In de laatste 10 jaar (Dingsøyr, Nerur, Balijepally, & Moe, 2012) zijn het gebruik van agile methodes zoals bijvoorbeeld Scrum, eXtreme Programming (XP) en Lean software development sterk toegenomen. Uit onderzoek (Dingsøyr et al., 2012) blijkt dat 63 landen onderzoek hebben gedaan naar agile. Hieruit kan opgemaakt worden dat er wereldwijd steeds meer interesse ontstaat rondom agile en het dus aan te raden is om hier ook serieus naar te kijken. Deze trend zorgt ervoor dat het vakgebied projectmanagement aanzienlijk aan het veranderen is. Het overstappen en omarmen van deze methodieken is voor sommige bedrijven nog niet altijd even makkelijk. De traditionele aanpak (projectmatig werken) is vertrouwd en heeft zijn effectiviteit bewezen. Echter leven we in een dynamisch technologisch tijdperk waar deze manier van werken niet meer op aansluit. De time to market en snel kunnen reageren op technologische ontwikkelingen en veranderingen zijn aspecten waarin agile een oplossing kan bieden. 2. Agile Projectmanagement Agile staat voor ‘behendig’ en ‘lenig’, oftewel: “Agile can thus be said to be concerned with the rapid and frequent delivery of increments of business value while being both adaptive and responsive.” (Management & Way, 2011). De vier basis principes van agile die zijn opgesteld zijn verwoord in het Agile manifesto (2001): 1. Mensen en hun onderlinge interactie boven processen en tools. 2. Werkende software boven allesomvattende documentatie. 3. Samenwerking met de klant boven contractonderhandelingen.
4. Inspelen op verandering boven het volgen van een plan. Agile focust zich op het managen en versnellen van activiteiten. Deze methode van projectmanagement kenmerkt zich door het project op te delen in iteraties. Door dit te doen kunnen er makkelijk, snel en op het juiste moment aanpassingen worden aangekaart en geïmplementeerd. Onnodig werk wordt zo voorkomen en stakeholders worden actief betrokken bij de ontwikkeling van een product of dienst. De intensieve communicatie tussen projectmedewerkers waarbij de opdrachtgever ook onderdeel uitmaakt van het team zijn feiten die belangrijk zijn bij agile project management. 3. Methodieken Er zijn verschillende Agile methodieken, de minder bekende zijn: Crystal, Feature Driven Development (FDD), Dynamic Systems Development Method (DSDM) en Adaptive Software Development. Op de volgende populairdere methodieken zal wat verder worden ingegaan: Scrum, eXtreme Programming (XP) en Lean software development. Scrum “Scrum is een raamwerk voor het ontwikkelen en onderhouden van complexe producten.”(Schwaber & Sutherland, 2011). De projectrollen die bij deze methodiek aanwezig zijn: 1. Product Owner: verantwoordelijk voor het maximaliseren van de waarde van het product en de werkzaamheden van het ontwikkelteam.
1
2. Scrum Master: verantwoordelijk voor het op de juiste manier invoeren van de scrum methodiek. 3. Ontwikkelteam: een team van experts die een product of dienst ontwikkelen. Daarnaast heb je de zogenoemde Scrum gebeurtenissen: 1. Sprint: een periode van 2 tot 4 weken waarin producten worden opgeleverd. 2. Sprint review: terugkijken op de afgelopen sprint en de volgende sprint definiëren. 3. Scrum meeting: een dagelijkse korte bijeenkomst waar de huidige stand van zaken kort worden besproken. Tenslotte worden de volgende artefacten aangemaakt: 1. Product Backlog: een geordende en geprioriteerde lijst van alle productfuncties. 2. Sprint Backlog: een selectief aantal items uit de Product Backlog vormen samen de Sprint Backlog. 3. Burndown chart: de Burndown chart visualiseert De totale hoeveelheid werk dat gedaan is en hoeveel nog gedaan moet worden. eXtreme Programming (XP Net als bij Scrum werkt XP ook met iteraties waarin een aantal taken worden gerealiseerd. De klant wordt sterk betrokken bij het project en kan hierdoor op een effectieve manier feedback geven. Testen is een belangrijk onderdeel en wordt daarom ook frequent gedaan in de vorm van unit tests en acceptatietesten. Lean software development Lean omvat 7 principes (Ambler, 2010):
1. Eliminate waste: alles wat er gedaan wordt moet bijdragen aan de waarde van het product. 2. Build in quality: met behulp van iteraties het werk valideren en eventueel verbeteren in plaats van dit op het einde van het project te doen. 3. Create knowledge: ontdekken wat stakeholders eigenlijk echt willen. 4. Defer commitment: flexible aanpakken die verandering toestaan. 5. Deliver quickly: door gebruik te maken van iteraties wordt de ‘timeto market’ verkleind. 6. Respect people: motiveren in plaats van controleren. 7. Optimize the whole: kijk naar het groter geheel om zo een compleet uniform product op te kunnen leveren. 4. De Agile projectmanager Als agile projectmanager ben je verantwoordelijk voor het vaststellen van duidelijke rollen en verantwoordelijkheden. Het is van groot belang dat elk individu zelfstandig beslissingen kan nemen zodat het project niet stagneert. “The agile manager understands the effects of the mutual interactions among a project’s various parts and steers them in the direction of continuous learning and adaptation.” (Augustine, Payne, Sencindiver, & Roject, 2005). 5. Projectmatig werken versus Agile Er bestaan veel verschillen tussen projectmatig werken (traditionele manier) en agile. Een aantal van deze verschillen zijn terug te vinden in Tabel 1 “Comparative Chart – Traditional vs. Agile (Hoda, Noble, & Marshall, 2008)”.
2
Comparative Chart – Traditional vs. Agile Categories Traditional
Agile
Development Model
Traditional
Iterative
Focus
Process
People
Management
Controlling
Facilitating
Customer involvement
Technology
Requirements gathering and delivery phases Work individually within teams Any
On-site and constantly involved Collaborative or in pairs Mostly Object Oriented
Product Features
All included
Most important first
Testing
End of development cycle
Documentation
Thorough
Iterative and/or Drives code Only when needed
Developers
Tabel 1. Adapted from “Agile Project Management”. By Hoda, R., Noble, P. J., & Marshall, S. (2008), 2, p. 2.
Traditionele projecten worden volledig gedocumenteerd met een op voorhand opgestelde duidelijke scope. Er is hierdoor weinig ruimte voor verandering. Agile daarentegen omarmt deze verandering. Uit onderzoek (van Waardenburg & van Vliet, 2013) blijkt dat dit voor bedrijven dan ook één van de belangrijkste redenen is om agile zich eigen te maken. Agile methodieken waren van oorsprong bedoeld voor kleine projecten. Door de belofte van een snellere time to market van projecten raken steeds meer bedrijven met grote opdrachten geïnteresseerd in deze methodiek. Onderzoek heeft
aangetoond (van Waardenburg & van Vliet, 2013) dat beoefenaars moeite hadden met het toepassen van agile in deze grote complexe projecten. Tevens stelden ze vast dat er te weinig business involvement was bij het doorvoeren van agile. Sommige stakeholders zaten namelijk helemaal niet te wachten op deze manier van werken. Een oplossing zou kunnen zijn om beide methodieken tegelijkertijd te hanteren. R. Max Wideman ondersteund deze oplossing. In zijn boekrecensie (Chin, 2006) schrijft hij: “In our view, the responsibilities of upper management involve a healthy dose of both the classic and agile roles described in the boxes above (zie figuur 1) – and in equal quantities!”
Figuur 1. Adapted from “Agile Project Management”. By Chin, G. (2004), 6, p. 3.
3
6. Conclusie Door het dynamisch technologisch tijdperk waarin we leven ontstaat er wereldwijde belangstelling voor agile methodieken zoals Scrum, XP en Lean, dit heeft veel invloed op het vakgebied projectmanagement. Doordat projecten steeds groter en complexer worden vindt er een verschuiving van projectmatig werken naar agile plaats. De conclusie die getrokken kan worden is dat projectmatig werken en agile
daarentegen perfect naast elkaar kunnen (voort)bestaan in dezelfde organisatie. Beide methodieken kunnen evengoed bijdragen aan het uiteindelijke projectsucces, dit hangt af van het type project en hoe alle belanghebbenden van het project tegen de agile manier van werken aankijken. 31 oktober 2013 Tom Rutten
4
Bibliografie Agile Manifesto. (2001). Manifesto for Agile Software Development. Retrieved October 2013, from Agile manifesto http://agilemanifesto.org/ Ambler, Scott. (2010). The Principles of Lean Software Development. Retrieved October 2013, from IBM http://ibm.com/ Augustine, B. S., Payne, B., Sencindiver, F., & Roject, A. G. P. (2005). M A N A G E M E N T : STEERING, 48(12), 85–90. Chin, B. G. (2006). Agile Project Management, 2004. Dingsøyr, T., Nerur, S., Balijepally, V., & Moe, N. B. (2012). A decade of agile methodologies: Towards explaining agile software development. Journal of Systems and Software, 85(6), 1213–1221. doi:10.1016/j.jss.2012.02.033 Hoda, R., Noble, P. J., & Marshall, S. (2008). Agile Project Management, (April). Management, P., & Way, A. (2011). Work in the Enterprise, (February). doi:10.1002/pmj Schwaber, K., & Sutherland, J. (2011). De Scrumgids. Van Waardenburg, G., & van Vliet, H. (2013). When agile meets the enterprise. Information and Software Technology, 55(12), 2154–2171. doi:10.1016/j.infsof.2013.07.012
5