Scrum: een walhalla voor projectbegeleiders?
Agile. Scrum. Hippe termen. Nou ja, hip: het zijn termen die al behoorlijk lang ronddwarrelen in de wereld van software-ontwikkeling. Maar wat is het nu eigenlijk en hoe werkt het? Kan ik het inzetten binnen mijn organisatie? Of zijn mijn projecten daar te klein voor? In een serie van drie artikelen vertel ik je wat agile projectmanagement met scrum precies inhoudt en hoe je deze methode inzet in kleine bedrijven en bij kleine projecten.
In het laatste artikel leggen we onze theorieën en bevindingen in een uitgebreid interview voor aan Rick IJspeerd, die als scrum consultant de nodige vlieguren heeft gemaakt. Benieuwd hoe je deze methode inzet om projecten soepel te laten verlopen? Lees dan snel verder.
De uitdaging: een voorbeeld
Regelmatig komen mensen bij me langs met prachtige concepten en goede ideeën. Concepten en ideeën die ontstaan zijn uit brainstormsessies of gewoon onder de douche of bij de koffiemachine. Vervolgens is het de uitdaging om alle plannen uit te werken in een technisch werkend geheel. En dat was bij Anouk ook het geval. Anouk kwam vorige maand bij ons langs met een briljant concept en zat boordevol vragen. “Kunnen jullie dit maken? Hoeveel gaat dat kosten? En hoe lang gaat het duren?”
In het verleden zou ik bij Anouk zijn teruggekomen met een waslijst aan vragen. Hoe zie je de uitwerking voor ogen? Wat wil je uitstralen? Hoe wil je het geheel indelen? Hoe gaan je klanten door het proces heen? En dat zijn alleen nog maar de grote lijnen. Zodra we aan de slag gaan met de realisatie moet ieder detail uitgewerkt zijn in een functioneel ontwerp, zodat de programmeurs exact weten wat er bij welke actie gebeurt. Dat zou Anouk volledig in paniek brengen.
Nu we Scrum gebruiken vertel ik haar een ander verhaal: “met elkaar formuleren we zo specifiek mogelijk een visie op het product en definiëren we de hoofdeigenschappen die het moet hebben. Maar als het gaat om de uitwerking van die visie en de fijnafstemming van hoe die kerneigenschappen van een product worden ingevuld, zullen we moeten onderkennen dat we tijdens het project het nodige aan veranderende inzichten zullen tegenkomen.”
Een product opleveren dat weerspiegelt waar je naar op zoek bent
Ik ga verder: “We verzetten ons daar niet tegen, maar omarmen die veranderende inzichten. Zo kunnen we uiteindelijk het product opleveren dat het meest weerspiegelt waarnaar je op zoek bent, in plaats van het product dat je aan het begin in gedachten had. Dat laatste zou inhouden dat je product slechts zo goed is als de eerste verkennende penseelstreken.”
“Een ontwerp moet dus kunnen mee-ademen met verbeterde inzichten. En daarom werken we volgens scrum. Dan houden we het project overzichtelijk en flexibel.” Alsnog keek Anouk me met grote vraagtekens in haar ogen aan en vroeg “Scrum? Wat moet ik me daarbij voorstellen?
Gaan we rugbyen?”
Rugby, maar dan wat liever
Ik zie vaak vragende ogen bij het noemen van de termen agile en Scrum, en ik leg het maar al te graag uit. Als je het woord ‘scrum’ hoort, denk je misschien aan rugby. Dat klopt. In de rugbysport proberen tegenstanders elkaar tijdens een scrum weg te duwen om de bal te veroveren. Daar is samenwerking, aanpassingsvermogen, snelheid en zelfsturing voor nodig.
Dat zijn dan ook direct de kenmerken van de scrum waar ik het in dit artikel over heb: een flexibele methode voor het ontwikkelen en beheren van software, volgens agile-projectmanagement. Een methode die voldoende ruimte over laat voor nieuwe inzichten die tijdens de ontwikkeling van een project ontstaan.
Agile en Scrum: twee verschillende dingen
Agile en Scrum zijn twee termen die veel door elkaar gebruikt worden. Daardoor is het niet altijd even duidelijk wat er met welke term precies wordt bedoeld. In mijn opvatting is Agile een filosofie waarbij je uitgaat van de talenten van je medewerkers, flexibel omgaat met veranderingen, samenwerkt met de klant op basis van vertrouwen en software levert die écht werkt. Onnodige documentatie blijft achterwege en er is voldoende ruimte binnen het project om nieuwe inzichten te verwerken.
In tegenstelling tot de watervalmethodes van vroeger, is Agile een meer creatieve manier van projectbegeleiding. Het geeft meer ruimte voor de creativiteit van het team en dat zorgt voor betere oplossingen en hogere productiviteit.
Vanuit deze filosofie zijn meerdere methodes ontstaan, zoals XP (Extreme Programming), ASD (Adaptive Software Development), FDD (Feature Driven Development), DSDM (Dynamic Systems Development Method) en Scrum. Scrum is onze grote favoriet. Bij scrum bouw je stap voor stap aan een eindproduct. Na iedere stap evalueer je de werkzaamheden en maak je plannen voor de volgende stap. Agile is dus een containerbegrip, waar Scrum er één van is.
Hoe pas je het toe?
Leuk zo’n definitie, maar hoe werkt het en hoe pas je het toe? Scrum gaat uit van het principe dat kleine teams het beste resultaat leveren in projecten. Dus vorm intern een klein team van de juiste mensen. Breng de kwaliteiten, ervaring en skills van een aantal medewerkers bij elkaar en maak een heldere rolverdeling. Volgens Scrum zijn er drie verschillende rollen: producteigenaar, ScrumMaster en de teamleden met ieder zijn of haar eigen verantwoordelijkheden.
Ga met de opdrachtgever om de tafel. Pak er een pallet post-its, papier van maat XXL en je mooiste stiften bij en schets, teken en plak alles wat er in je opkomt bij elkaar. Op deze manier zet je de grote lijnen voor het project uit. Stap voor stap wordt het project concreter. Nu kun je aan de slag met het team.
De grote lijnen vormen voldoende input voor de eerste sprint. Sprint? Ja, sprint. Werk je volgens Scrum, dan werk je met sprints. Tijdens iedere sprint werk je met je team aan de functionaliteiten die volgens de planning in die sprint moeten gebeuren. Is de tijd van een sprint verstreken, dan volgt er een overlegmoment met het team en met de opdrachtgever. Evalueer de werkzaamheden en bepaal de koers voor de volgende sprint.
Afhankelijk van de grootte van het project bepaal je hoeveel sprints nodig zijn en hoeveel dagen er tussen de sprints zitten. Geef iedere sprint een thema, zodat het team én de opdrachtgever weet waar de focus van de bepaalde sprint ligt. Denk bijvoorbeeld aan functioneel ontwerp, vormgeving, de verschillende processen, usability onderzoek en testen.
Scrum een walhalla?
Als ik alles zo omschrijf, lijkt het een walhalla voor projectbegeleiders. Je stelt het perfecte team samen, je plant regelmatig overleg in, houdt ruimte voor nieuwe inzichten, en als je alles mag geloven wat Scrum voorschrijft, lever je ruim binnen het gestelde termijn het project op. En dat alles ook nog ruim binnen het budget. Dat wordt lui achterover leunen…
Back to earth
Ok. Back to earth. Wel even realistisch blijven. In werkelijkheid gaat natuurlijk alles anders. Techniek is onvoorspelbaar, dus je loopt tijdens de ontwikkeling altijd tegen verrassingen aan. Daarbij is er niet maar één project waar je constant mee bezig kan zijn. En dat geldt ook voor je teamleden. Werkzaamheden lopen door elkaar heen. Collega’s komen bij je langs voor vragen. Klanten bellen of je ze ‘nu meteen’ uit de brand kan helpen. En ga zo maar door.
Zie Scrum als een leidraad voor het realiseren van projecten. De grondleggers Ken Schwaber en Jeff Sutherland keuren dat vast niet goed. Zij zeggen: “ga je aan de slag volgens agile met Scrum? Doe het dan volgens de regels, anders werkt het niet.” En daarmee grijpen ze de koe bij de horens. Voor grote projecten is dat natuurlijk extra belangrijk. Hoe complexer projecten zijn, hoe strenger je je aan de voorschriften moet houden.
Maar ook voor kleine projecten is het goed om volgens de voorschriften te werken. Hoe vaker je projecten volgens Scrum oppakt, hoe sneller je het onder de knie krijgt en hoe meer profijt je ervan hebt bij grote én kleine projecten. Voor het project van Anouk hebben we ook gekozen om te werken volgens Scrum: “de werkwijze bevalt me goed. Ik ben blij dat we tijdens mijn project volgens deze methode werken. Ik ben betrokken en heb continu inzicht in de planning en de voortgang. En dat geeft mij rust en vertrouwen”aldus Anouk.
Volgende week meer…
Volgende week vertel ik je meer over hoe je scrum toepast in een kleine organisatie en bij kleine projecten. Hoe streng zijn de richtlijnen? En wanneer mag ik het Scrum noemen? In het daaropvolgende artikel gaan we nog iets meer op de inhoud in met een uitgebreid interview met Independent Scrum Professional Rick IJspeerd.