AGILE DEVELOPMENT VERSUS SCRUM
Agile Development versus Scrum

Over Agile Development heb je waarschijnlijk al van alles gehoord. Tot nu toe wist je ook niet beter dan dat Agile werken onlosmakelijk verbonden is met het begrip Scrum. Het gaat immers om Scrum teams die op een Agile wijze nieuwe software ontwikkelen. Toch is er een beetje een kip-of-ei probleem. Agile development en Scrum zijn namelijk niet hetzelfde.

Flexibele werkwijze en simpele opzet

Vraag jij je af hoe dit zit? Laten we dan eerst eens kijken wat een Scrum team eigenlijk is. Zo’n Scrum team bestaat uit een aantal mensen die gezamenlijk een nieuw stuk software ontwikkelen. Tot zover nog geen nieuws. Maar nu komt het: Werken met Scrum teams is slechts één van de vele Agile Development methodieken. Scrum onderscheidt zich van de andere Agile methodes door de uiterst flexibele werkwijze en simpele opzet van het werkende team. Net als alle Agile Development methodes, wordt gewerkt op basis van het Agile Manifesto uit 2001. Naast het werken als Scrum, zijn er echter meer dan 40 andere Agile werkvormen mogelijk. Toch geniet Scrum bijna altijd de voorkeur. Binnen het kleine, multidisciplinaire Scrum team bestaat een krachtige synergie. Alle deelnemers zijn goed op elkaar afgestemd. Ze passen zich continu aan, blijven op snelheid en zijn zelfsturend. Als een rugbyteam werken ze naar hetzelfde doel. De term Scrum komt ook uit deze sport. Wordt op zo’n manier gewerkt, dan is dit ongeveer een derde sneller en een kwart goedkoper dan werken volgens de klassieke methode.

De drie rollen binnen het Scrum team

Binnen een Scrum team vallen maar drie rollen te verdelen. Om te beginnen is er de eigenaar van het toekomstige product, de ‘Product Owner’. Binnen het project is dit dus de klant. Zo’n klant kan van buiten komen, maar binnen een grote organisatie kan het ook een opdrachtgever zijn van een andere afdeling. De Product Owner zal samen met een eindgebruiker in het Scrum team zitting nemen. Dan zijn er natuurlijk de softwareontwikkelaars zelf die binnen het Scrum team een belangrijke rol spelen. Zij vormen het ‘Ontwikkelteam’. Het zijn de softwaredeskundigen die de technische kant van de opdracht voor hun rekening nemen. Heel belangrijk is tenslotte de ‘Scrum Master’. Deze persoon zorgt ervoor dat de leden van het Scrum team optimaal kunnen opereren. Hij of zij regelt de benodigde faciliteiten en voldoende ruimte in de agenda’s van iedereen om binnen het team te functioneren. Ook zorgt de Scrum Master voor een belangrijk stuk motivatie om iedereen de juiste focus te laten behouden. Een Scrum Master staat niet aan de top van het team. Hij of zij faciliteert slechts.

Altijd iteratief werken bij Agile Development

Agile Development is een stapsgewijze benadering van het eindproduct. De ontwikkelaars beginnen niet aan een uitgestippeld plan om vervolgens maanden later een kant-en-klaar eindproduct op te leveren. Dit laatste wordt wel werken volgens de Watervalmethode genoemd. Werken volgens die methode kan soms flink fout gaan. Bijvoorbeeld omdat in die maanden de wensen veranderd zijn. Bij de stapsgewijze benadering van Agile Development, worden steeds in periodes van enkele weken opeenvolgende basisversies van de software opgeleverd. Dat is natuurlijk veel fijner, want dat biedt ruimte om al in een heel vroeg stadium in de praktijk te testen. Bovendien kan de steven zo nodig 180 graden worden gewend. Bijvoorbeeld als blijkt dat de softwarematige oplossing in een heel andere hoek moet worden gezocht. Steeds wordt de feedback uit het veld mee teruggenomen en wordt weer aan de basisversie verder gewerkt. Voor deze werkwijze binnen Agile Development bestaat een woord: er wordt ‘iteratief’ gewerkt.

Elke Sprint op het juiste spoor

Ben je nog een beetje bij de les? Dan vatten we hier even samen: Elke vorm van Agile Development is iteratief, werken met een Scrum team is één van die iteratieve methodes.
Zo’n Scrum team werkt in zogenaamde Sprints. Zo’n Sprint is de periode waarin een volgende basisversie wordt klaargestoomd. In onderling overleg bepalen de teamleden hoelang zo’n Sprint gaat duren. Meestal varieert dit van één week tot een maand. Elk teamlid belooft om in die termijn het volgende stuk werk op te leveren. Steeds worden er na een Sprint nieuwe gebruikersverhalen en gebruikerswensen aan de informatie van het team toegevoegd. Door op deze manier optimaal te communiceren, blijft het Scrum team steeds op het juiste spoor.

Agile Development met Scrum team voor een optimaal product

Agile Development zorgt ervoor dat snel aan een project begonnen kan worden. Langdurige inventarisatierondes zijn niet nodig. Een klant hoeft ook niet bang te zijn dat langs ingewikkelde trajecten grote ontwikkelbudgetten worden verspeeld. Door de iteratieve werkwijze blijft het ontwikkelproces voor iedereen transparant. Zet je daarbij een Scrum team op de zaak, dan heb je een ideale combinatie. Door de maximale communicatie en wendbaarheid van dit team, is een optimaal eindproduct verzekerd.