Flexibiliteit in projecten met Scrum Terug

25 februari 2010

Scrum is een Agile proces voor software ontwikkeling. In nauwe samenwerking met de gebruiker, verloopt een Scrum project via een serie van iteraties, Sprints genoemd.

Scrum is bij uitstek geschikt voor projecten waar nog niet alles duidelijk is, of waar de omgeving snel verandert, of waar snel een eerste resultaat nodig is. Projecten waar flexibiliteit wenselijk is bij de ontwikkeling.

 

Wat is Scrum?

Scrum is een framework voor software ontwikkeling en een Agile proces dat het mogelijk maakt om de hoogste prioriteiten van de business binnen de kortst mogelijke tijd te realiseren. De business zelf bepaalt hierbij de prioriteiten. De teams organiseren zichzelf op een specifieke manier om de beste aanpak te garanderen.

In plaats van het verstrekken van volledige, gedetailleerde beschrijvingen van hoe alles moet worden gedaan tijdens het project, wordt veel overgelaten aan het team. Scrum is gebaseerd op een zelforganiserend, multidisciplinair team. Het team heeft geen algemene teamleider die beslist wie wat zal doen of hoe een probleem zal worden opgelost; dit wordt gedaan door het gehele team.

Het team wordt ondersteund door twee specifieke personen: een ScrumMaster en een Product Owner. De ScrumMaster is de coach van het team. Hij beschermt het team tegen verstoringen, verbetert de productiviteit van het team en helpt bij het toepassen van het Scrum-framework. De Product Owner vertegenwoordigt de business en zorgt voor de ontwikkeling van het juiste product. Vanuit een duidelijke productvisie wordt de Product Backlog samengesteld. Dit is een overzicht van requirements, in volgorde van prioriteit en business waarde, en vormt de basis voor de Sprints en de werkzaamheden van het team. De Product Owner bewaakt dat het team alleen werkt aan de meest belangrijke Product Backlog Items.

 



 

Wat zijn de belangrijkste activiteiten in Scrum?

De Sprint is de belangrijkste activiteit in een Scrum project. Scrum is een iteratief proces en het gehele project is opgesplitst in een reeks van opeenvolgende Sprints. In een Sprint, een tijdsbestek van 2 weken, zal het team alles doen om een kleine set van Product Backlog Items van idee naar een gecodeerde en geteste oplossing te brengen.

Elke Sprint start met een Sprint Planning. Tijdens dit overleg praten het team en de Product Owner over de Product Backlog Items met de hoogste prioriteit. Samen bepalen ze welke items kunnen worden gerealiseerd tijdens de Sprint en plaatsen deze op de Sprint Backlog.

Tijdens de Sprint wordt elke dag een Daily Scrum gehouden. Dit overleg wordt bijgewoond door het gehele team, de ScrumMaster en de Product Owner, duurt niet langer dan 15 minuten en is bedoeld om de werkzaamheden van het team te synchroniseren. Staande bij het ScrumBoard vertelt elk teamlid waar hij gisteren mee bezig is geweest, wat hij vandaag gaat doen en wat hem blokkeert in de uitvoering van zijn werk.

Aan het einde van een Sprint wordt een Sprint Review georganiseerd. Het team demonstreert aan de Product Owner en andere belanghebbende wat zij hebben gerealiseerd. Doel van dit overleg is om feedback te krijgen over de gerealiseerde functionaliteit.  Deze feedback kan resulteren in wijzigingen van de gerealiseerde functionaliteit. Het kan ook leiden tot een ander inzicht in het product, waardoor items op de Product Backlog worden herzien of nieuwe onderwerpen worden toegevoegd.

Na de Sprint Review komt het team samen met de ScrumMaster en de Product Owner om de afgelopen Sprint te evalueren, Sprint Retrospective genoemd. Deze bijeenkomst is de gelegenheid om te bespreken wat fout en vooral goed ging tijdens de afgelopen Sprint en te identificeren wat de punten zijn voor verbetering van de volgende Sprint .


Waarom Scrum gebruiken?

Scrum maakt het mogelijk om snel en regelmatig écht werkende software te laten zien. Iedereen kan elke twee weken de echte software bekijken en besluiten om het vrij te geven voor productie, of door te gaan met uitbereidingen in een volgende sprint.

Scrum accepteert wijzigingen tijdens het ontwikkelen van het product. De Product Backlog biedt de gebruikers continu de mogelijkheid om items bij te stellen, nieuwe items toe te voegen en items van prioriteit te veranderen.

Scrum hanteert kleine teams waarin alle kundigheid en ervaring is opgenomen om een feature te kunnen realiseren van idee tot draaiende software. Dit geeft korte communicatielijnen, een intensieve samenwerking van meerdere disciplines voor de realisatie van software en iedereen van het team is betrokken bij het groter geheel. Doordat alles door het multidisciplinaire team wordt gedaan, kennen we slechts één overdrachtsmoment: namelijk de oplevering van de draaiende software aan de gebruikers.


Waar vind ik meer informatie?

Over Scrum is veel informatie te vinden. Het framework van Scrum is eenvoudig van opzet en gemakkelijk te begrijpen. Echter de implementatie van Scrum is maatwerk en is voor elke organisatie anders.

Mocht u meer informatie willen hebben over Scrum en hoe het bij uw organisatie kan worden geïmplementeerd? Neem dan gerust contact met ons op.

Kor Meelker
Project Manager
Synobsys Nederland B.V.
KMeelker@Synobsys.nl
+31 10 458 55 32