Wat is Scrum?

Het ontstaan van Scrum management

De naam Scrum in de context van ontwikkeling komt voort uit het artikel The New New Product Development Game. Professors Hirotaka Takeuchi  en Ikujiro Nonaka publiceerden het artikel in de Harvard Business Review in 1986.

Uit onderzoek bij verschillende bedrijven zoals Fuji-Xerox, Canon, Honda, NEC, Epson, Brother, 3M, Xerox en Hewlett-Packard concludeerden zij dat het succesvolThe godfathers of Scrum ontwikkelen van nieuwe producten het beste gedaan wordt volgens de rugby aanpak.

De rugby aanpak zorgt voor snelheid en flexibiliteit die nodig zijn tijdens ontwikkeling om te voldoen aan de behoeften van de klant in een snel veranderende markt.

De traditionele sequentiële aanpak is zoals in een estafette. De ene groep specialisten rondt zijn werk af en geeft een deelproduct door aan de volgende groep specialisten. Deze aanpak blijkt ontoereikend voor ontwikkeling van nieuwe producten in een veranderende omgeving. In de estafette aanpak is het proces gedefinieerd en gaat het project van fase naar fase: concept, analyse, design, ontwikkel proces, pilot productie en vervolgens productie. Functies zijn gespecialiseerd en gesegmenteerd waardoor het product in ontwikkeling in de verschillende fasen door verschillende specialisten afzonderlijk wordt bewerkt.

De bedrijven die succesvol zijn met hun nieuwe product ontwikkelingen zijn bedrijven waarin het ontwikkel proces ontstaat door de constante interactie van een multidisciplinair team waarvan de leden samenwerken van het begin tot aan het eind. In het project zijn meerdere fasen tegelijk aan de gang en overlappen elkaar tot in de latere fasen van ontwikkeling. Het multidisciplinaire team werkt samen als een rugby team. Ze nemen gezamenlijk de volgende sprint terwijl ze elkaar de bal toespelen om tot een goed resultaat te komen.

Het management proces dat de bedrijven gebruikten om volgens de rugby aanpak te werken noemden Nonaka en Takeuchi SCRUM management. Het is genoemd naar de SCRUM in rugby; een formatie van spelers die samenbinden tot een hechte groep wanneer het spel hervat moet worden om tot de volgende aanval te komen.

Het Scrum raamwerk

In 1995 hebben Ken Schwaber en Jeff Sutherland tijdens de OOPSLA conferentie Scrum op de kaart van software land gezet. In het artikel SCRUM Development Process introduceerde Ken Schwaber de Scrum aanpak gebaseerd op onder andere het werk in de New New Product Development Game, eigen onderzoek en werk op het gebied van empirical process control.Scrum daily standup

Sinds een aantal jaren hebben Ken Schwaber en Jeff Sutherland de officiële definitie van het Scrum raamwerk opgeschreven in de Scrum Guide. De Scrum Guide is inmiddels vertaald naar vele talen en is te vinden op Scrum.org onder de Scrum Guides

De Scrum flow

Scrum is een agile aanpak voor het ontwikkelen van nieuwe producten. Het is een waarde gedreven aanpak die ervoor zorgt dat het meest waardevolle wordt opgeleverd binnen de beperkingen van tijd en budget. De centrale vraag is niet meer 'zitten we nog op planning en binnen budget?' maar de centrale vraag is 'wat weerhoudt ons ervan om vandaag op te leveren naar onze klanten?'. Hierdoor krijgen projecten een focus op het creëren van klant waarde in plaats van het voldoen aan een planning. Het resultaat is een product dat alleen die functionaliteit bezit die echt waardevol is. Het resultaat is een product dat beter voldoet aan de behoeften van de klant, goedkoper is om te ontwikkelen, sneller is opgeleverd en van hogere kwaliteit is.

Scrum neemt aan dat je niet precies weet wat je product zal zijn en ook niet precies weet hoe je het maken moet. Er zijn meer vragen dan antwoorden! Daarom wil je juist gedurende het project zo veel mogelijk leren over wat het product moet zijn, hoe het product te maken, wat klanten belangrijk vinden en tegen welke kosten het product te realiseren is.

Om goed om te gaan met de bijbehorende risico's, ziet Scrum het ontwikkel proces als een empirisch proces ofwel een black box. Hierdoor zorgt Scrum ervoor dat zeer frequent de mogelijkheid bestaat om te bepalen waar je staat met je product ontwikkeling op het gebied van voortgang, kosten, risico's en verwachte waarde. Scrum zorgt er verder voor dat je altijd de laatste inzichten en klant feedback meeneemt om de volgende stap in het ontwikkel proces te bepalen.

Visie

Een Scrum ontwikkel traject begint met een visie. Een visie waarin aangeven wordt welke klant behoeften worden opgelost, wie de klanten zijn, welke attributen essentieel zijn in het product en hoe geld aan het product verdiend gaat worden. De Product Owner is de drijvende kracht achter de visie en gebruikt de visie voor het verkrijgen van financiële middelen. Deze visie is concreet genoeg om voor een duidelijke richting te zorgen. De visie is ook vaag genoeg zodat de weg tot realisatie vrij is om te ontstaan. De visie komt tot stand in samenwerking tussen de Product Owner, het Development Team en eventueel eindklanten. Hierdoor zijn de mensen in het team betrokken en voelen zich verantwoordelijk voor het succes. 

Scrum framework

Product backlog 

Op basis van de visie maakt de Product Owner samen met het Development Team een plan. Een belangrijk onderdeel van het plan is de Product Backlog. De Product Backlog is een op waarde geordende lijst met al het werk dat gedaan moet worden om de visie te realiseren. In samenspraak met het Development Team en stakeholders wordt bepaald wat het meest waardevol is. Wat waardevol is hangt af van de risico's op kosten, technologie, business waarde en kennis. De product backlog is het startpunt en wordt na elke sprint opnieuw geordend op basis van de meest recente informatie.

Iteratief en incrementeel

Om de verschillende risico's te verkleinen en zo veel mogelijk te leren wordt ontwikkeling gedaan in korte sprints van maximaal 30 dagen. Een Sprint start met een Sprint planning waarin de Product Owner en het Development Team het werk bepalen voor de komende sprint. De Product Owner is verantwoordelijk voor de waarde van het werk dat gedaan wordt. Het Development Team is verantwoordelijk voor de kwaliteit van het werk dat opgeleverd wordt.

Gedurende de sprint komt het self-organizing Development Team dagelijks bij elkaar in een Daily Scrum meeting van maximaal 15 minuten. In de Daily Scrum bekijkt het Development Team waar ze staan en hoe ze elkaar die dag het beste kunnen helpen. Ook maken ze gezamenlijk een dagplanning. Het Development Team zorgt voor volledige transparantie door elke dag zichtbaar te maken welk werk onderhanden is, wat het geschatte werk nog te gaan is en wat de voortgang is. Het Development Team heeft iedereen aan boord die nodig is om een Sprint succesvol te doorlopen.

Aan het einde van een Sprint wordt een werkend Increment ofwel een uitbreiding op het software product opgeleverd dat in potentie opleverbaar is naar productie. Het increment wordt door de stakeholders geïnspecteerd in een Sprint Review meeting. Verder wordt in de Sprint Review meeting de voortgang tot nu toe besproken, de product backlog geordend en worden belemmeringen die het Development Team in de weg staan besproken. Het doel van deze meeting is het creëren van transparantie voor de stakeholders, het verkrijgen van feedback en het bepalen wat het meest waardevolle is om de volgende sprint op te pakken.

De Sprint wordt afgesloten met een Retrospective. In deze meeting bekijken de Product Owner en het Development Team hoe ze kunnen verbeteren op het gebied van samenwerking, gevolgde proces, kwaliteit van de Increment en gebruikte tooling. Het resultaat zijn acties voor verbeteringen die de komende Sprint worden opgepakt.

Risico management in Scrum 

In Scrum lever je elke Sprint een increment op van werkend product dat een klant kan ervaren. Het resultaat is:

  • Dat de klant feedback het risico verlaagt dat je een product ontwikkelt dat niet voldoet aan de behoeften van de klant;
  • Dat je investeringsrisico verkleint omdat je per Sprint kunt financieren. Hierdoor kun je na elke Sprint beslissen om te stoppen als je voldoende waarde hebt toegevoegd. Of juist om meer te investeren afhankelijk van de reacties van klanten en andere stakeholders.
  • Dat de feedback van de klanten de gemaakte aannames in je visie vroegtijdig valideren.
  • Dat feedback van klanten en stakeholders je helpen bepalen wat het meest waardevol is om als volgende op te pakken;
  • Dat het volledig transparant is welk werk er gedaan is, welke werk er niet gedaan is en hoeveel werk er nog gedaan moet worden. Hiermee geef je de stakeholders maximale informatie waarmee ze de beste beslissingen kunnen nemen;
  • Dat je echte voortgang meet en een betrouwbare voorspelling kunt doen over wanneer welke functionaliteit gereed zal zijn;
  • Dat het product getest is in de productieomgeving en daardoor fouten opgespoord en opgelost worden op het moment dat het nog relatief weinig kost om ze op te lossen;
  • Dat je elke Sprint volledig gereed bent en daardoor optimaal gebruik kan maken van mogelijkheden die zich voordoen. Je kunt snel reageren op nieuwe informatie en mogelijkheden die voorbij komen;
  • Dat je duidelijk hebt of het Scrum Team de juiste kennis en kunde in huis heeft om de visie binnen acceptabele kosten en duur te realiseren.
  • Dat je door frequente oplevering van je product een hogere Return On Investment krijgt en daardoor eerder op het break even punt aankomt.