KNOWLEDGE BASE

Scrum

Algemeen

Scrum is een relatief jonge (1993) manier waarop teams samenwerking om een product (meestal software) te ontwikkelen. Wekende producten worden in beperkte tijd (doorgaans 1 tot 4 weken) en in kleinere delen opgeleverd, waarbij het opgeleverde deel is voortgebouwd op eerder opgeleverde delen. Op deze manier wordt de creativiteit van de teamleden gestimuleerd en kan er sneller en gereageerd worden op terugkoppeling en wijzigingen, zodat alleen gebouwd wordt wat nodig is. De term Scrum is dan ook afkomstig uit de rugbywereld en behoort to de Agile softwareontwikkeling. Scrum is met name effectief als er sprake is van complexe projecten. Er wordt binnen Scrum van een beperkte set aan regels uitgegaan, die net voldoende zijn om structuur te geven om het team richting te geven aan het bedenken van oplossingen. De menselijke waarde staat hoog in het vaandel van Scrum: respect, bij het team horen, doen, maken, creatief zijn, persoonlijk groeien, verbeteren en samenwerken met andere mensen. Scrum stelt mensen in staat om boven zichzelf uit te stijgen en samen meer dingen voor elkaar te krijgen. Samenwerking, gezamenlijk, samen verantwoordelijkheid nemen zijn terugkerende begrippen in de Scrum-wereld. Bedenkers van Scrum zijn Jeff Sutherland en Ken Schwabe.

Rollen

Scrum kent wezenlijk drie fundamentele rollen: Development teams; Development teams boven op basis van specificaties van de product owner (binnen 30 dagen) en demonstreren wat zij gebouwd hebben. De product owner gebruikt deze demonstratie om de volgende bouw vast te stellen. Development Team zitten bij idealiter in één ruimte, zodat er makkelijk kan worden samengewerkt. Product owner; Deze persoon bepaalt wat er in de komende periode gebouwd moet worden (tot max. 30 dagen). De product owner is tevens verantwoordelijk voor de Product Backlog. Scrum Master; Dit is degene die ervoor zorgt voor de randvoorwaarden dat het team zo probleemloos mogelijk kan bouwen, verbetert continu het ontwikkelproces, het team en het product. De Scrum Master is niet alleen leidinggevende, hij/zij is ook dienstig aan het Development Team. De Scrum Master bewaakt de Scrum theorie, de toepassing en de regels.

Karakteristieken

Daily scrum; Iedere dag komt het Development Team een kwartiertje bij elkaar om de activiteiten op elkaar af te stemmen en de activiteiten voor de komende 24 uur vast te stellen. Hierbij wordt gekeken naar wat er sinds de laatste Daily Scrum voor elkaar is gebokst en welke zaken beter kunnen. Demo; Na afloop van een Spint wordt in een Demo het Increment getoond dat af is en wordt aangegeven wat niet af is. De Demo duurt maximaal 4 uur. Het hele Development Team is aanwezig plus eventueel andere geïnteresseerden. Definition of Done; binnen Scrum is het belangrijk dat men een gemeenschappelijk beeld heeft wanneer een deellevering klaar is. Dit om transparantie en duidelijkheid te creëren. Increment; Dit is de som van alle punten in de Product Backlog die gedurende de huidige en alle voorgaande Sprints zijn opgeleverd. Product Backlog; Dit is een geordende lijst van alles dat nodig is om het product volwaardig te maken. De Backlog is de enige bron waaruit geput kan en mag worden bij het maken van het product. De verantwoordelijkheid voor de Backlog ligt bij de Product Owner; zowel de inhoud, de beschikbaarheid als de volgorde. Scrum Team; Dit team bestaat uit de Product Owner, het Development Team en de Scrum Master. Scrum Teams are zelfsturend, autonoom en afdelingsoverstijgend. Sprint Backlog; Dit is dat deel van de Product Backlog dat gebouwd gaat worden in een Sprint. Het bevat tevens een plan hoe het Increment opgeleverd gaat worden en hoe het Sprint Goal gerealiseerd gaat woden. De Sprint Backlog wordt samengesteld door het Development Team. Sprint Goal; Dit is een instrument om het Development Team enige flexibiliteit te geven ten aanzien van de functionaliteit die gedurende een Sprint opgeleverd moet worden. Sprint Planning Meeting; Het werk dat uitgevoerd moet worden gedurende een Sprint wordt gepland tijdens een Sprint Planning Meeting. Het is een gezamenlijk plan van het gehele Scrum Team. Sprint Retrospective; De Retrospective is een mogelijkheid voor het Scrum Team om terug te kijken op de eigen activiteiten en te bekijken waar verbeteringen mogelijk zijn. De Retrospective vindt plaats ná de Scrum Review, maar voor de eerstvolgende Sprint Planning Meeting. De Retrospective duurt maximaal drie uur, afhankelijk van de lengte van een Sprint. Sprint Review; Een Sprint Review wordt gehouden aan het einde van een Increment en is vormt een mogelijkheid om de gezamenlijk Product Backlog aan te passen. Deelnemers aan de Sprint Review zijn het Scrum Team en de stakeholders. De Review heeft een informele status en heeft vooral als doel om feedback gemakkelijker te maken en samenwerking te stimuleren. Sprint; Het hart van Scrum wordt gevormd door de Sprint, een periode van maximaal een maand waarin een Done Increment wordt opgeleverd. Het Increment moet aan het einde van de Sprint gereleased kunnen worden. Sprints hebben een consistente doorlooptijd gedurende het ontwikkelproces en starten direct na de beëindiging van de vorige.