Interesse in Agile verbeteren?

Agile

Als je Agile vertaalt naar het Nederlands kom je op woorden als: lenig, fit, soepel, flexibel of wendbaar. Dit slaat normaliter op mensen maar dit idee is ook uitgewerkt voor organisaties.  Dus wendbaar zijn en flexibel kunnen inspelen op veranderende behoeftes zijn hierin cruciaal. Het agile werken is een methode die men gebruikt voor het effectief ontwikkelen van een product.

1. Wat is Agile en Agile werken?

Agile

Inspelen op en aanpassen aan veranderende eisen en omstandigheden vragen om een wendbare organisatie. Lean legt de focus op efficiency maar aanvullend hierop legt Agile het accent op flexibiliteit.

Hierbij gebruikt men naast de technieken zoals men die ook in Lean gebruikt  zoals bijvoorbeeld SMED aanvullend organisatorische zaken gericht op het flexibiliseren van de organisatie. Denk hierbij aan Multi inzetbaarheid van medewerkers, flexibele FTE, onderling ‘uitlenen’ van (seizoen)medewerkers.

Ook de innovatiesnelheid is een speerpunt bij Agile. Het hierna te behandelen ”Agile werken” speelt hier een belangrijke rol. Maar daarnaast zijn flexibele systemen en begrippen als Smart Manufacturing (zie ook Industry 4.0) cruciaal bij het concretiseren hiervan.

Agile werken

Agile werken is een methode komt uit de hoek van projectmanagement van IT projecten. Hierbij richt men de aandacht op flexibiliteit, samenwerking en continue verbetering. In de IT werd en wordt vaak de zogenaamde watervalmethode toegepast. Hierbij voert men een project uit op basis van een vooraf vastgesteld plan wat vervolgens in één keer uitgevoerd.

Agile werken richt zich op het leveren van waarde in een iteratief proces met korte cycli, waarbij in iedere ronde aanpassingen worden gedaan naar aanleiding van veranderende omstandigheden, aangescherpte behoeften en feedback van wat is opgeleverd.

Agile werken

Die korte cycli worden sprints genoemd: 

Sprint = Een afgebakende tijdsperiode waarin een team werkt aan het opleveren van een bepaalde hoeveelheid werkende functionaliteit. Tijdens een sprint worden de taken en doelen vastgesteld en wordt er intensief samengewerkt om het afgesproken werk te voltooien. Bij het einde van de sprint wordt er een werkend (tussen)product opgeleverd dat aan de klant kan worden getoond.

Deze aanpak is gebaseerd op de volgende ervaringen :

  • De klant weet vaak niet als hij opdracht geeft wat hij of zij wil, pas later worden behoeften duidelijk
  • Het team ontdekt gaandeweg het proces pas hoe ze het moeten maken
  • Tijdens het ‘maken’ veranderen de omstandigheden

Agile werken leent zich daarom het beste voor een dynamische omgeving waarin veel veranderingen plaatsvinden en waar niet vooraf het geheel al duidelijk is en van A tot Z gepland kan worden.

Definitie van Agile werken

Agile werken is een flexibele managementmethode die gericht is op samenwerking, continue verbetering en het leveren van waarde in korte iteraties op basis van nieuwe inzichten en veranderende omstandigheden.

2. 4 waarden van Agile

De Agile methode is gebaseerd op vier kernwaarden:

2.1. Individuen en interacties boven processen en hulpmiddelen

Agile legt de nadruk op de kracht van het team en de samenwerking tussen teamleden. Door de focus te leggen op de mensen en hun onderlinge interacties vergroot je de productiviteit van het team. Eerst je collega’s goed kennen en begrijpen, dan goed samenwerken en dan pas met het proces en de tools aan de slag.

2.2. Werkende software boven uitgebreide documentatie

Het opleveren van werkende producten of diensten staat centraal. Uitgebreide documentatie en werkinstructies/handleidingen zijn wel belangrijk maar de focus ligt op het creëren van tastbare resultaten die direct waarde toevoegen voor de klant.

2.3. Samenwerking met de klant boven contractonderhandelingen

Samenwerking met de klant staat voorop en daarom wordt de klant actief betrokken en is het regelmatig verzamelen van feedback cruciaal zodat snel kan worden ingespeeld op veranderende eisen en wensen. Dit betekent dat afspraken en contracten minder dichtgetimmerd hoeven te worden.

2.4. Inspringen op verandering boven het volgen van een plan

Verandering is een constante factor. In plaats van star vast te houden aan een vooraf opgesteld gedetailleerd plan, moedigt Agile daarom aan om flexibel te zijn en snel te reageren op veranderende omstandigheden. Voor de langere termijn wordt alleen gewerkt met een globale roadmap die weer gekoppeld is aan een einddoel/visie.

Deze waarden vormen de basis van Agile werken en helpen bij het realiseren van succesvolle trajecten.

3. Agile principes

Naast de vier waarden heeft Agile ook twaalf principes die richting geven aan de manier van werken.

1. Klanttevredenheid door continue levering van waardevolle producten en/of diensten.
2. Verwelkom veranderende eisen en wensen, zelfs laat in het traject.
3. Lever werkende producten op in korte iteratieve cycli s van een paar dagen of weken.
4. Werk dagelijks multidisciplinair samen.
5. Stel agile team samen uit gemotiveerde medewerkers en geef hen het vertrouwen, de ondersteuning en de middelen die ze nodig hebben.
6. Face-to-face communicatie is de meest effectieve en efficiënte manier om informatie te delen binnen een team.
7. Een werkend product of dienst is de belangrijkste indicator om de voortgang te meten.
8. Ontwikkel in een zo constant mogelijk tempo.
9. Continue aandacht voor kwaliteit via technische excellentie en goed vakmanschap.
10. Zoektocht naar eenvoud staat centraal. Kunst van het weglaten is belangrijk om verspilling tegen te gaan.
11. Werk met zelforganiserende teams die in staat zijn om problemen op te lossen en zichzelf continu te verbeteren.
12. Regelmatig reflecteren op het werk en de werkwijze en de samenerking om zo effectiever te worden en aanpassingen te maken waar nodig.

Deze principes helpen bij het creëren van een omgeving waarin Agile teams optimaal kunnen functioneren en waarde kunnen leveren aan de klant.

4. Scrum

Bij Scrum werkt een multidisciplinair team in korte sprints van normaliter twee tot vier weken, waarin de teamleden samenwerken aan het realiseren van afgebakende taken. Het team houdt regelmatig korte bijeenkomsten om de voortgang te bespreken, de zogenaamde stand-ups. Aan het eind van elke sprint levert het team een werkend (tussen)product op.

In essentie draait het om een werkwijze gebaseerd op onderstaande elementen:

1. Kort cyclisch werken (Sprints)
2. Scrum team rollen
3. Scrum events houden
4. Scrum basiselementen

4.1 Kort cyclisch werken (Sprints)

Telkens wordt in een periode van twee à drie weken gewerkt aan de oplevering van een werkbaar (deel)product. Deze vaste lengte zorgt voor continuïteit en duidelijkheid. De inhoud van de nieuwe Sprint bepaald he team nadat de vorige Sprint is afgerond en deze start onmiddellijk.

Agile Scrum Sprint
Ontwikkelen en verbeteren in korte effectieve sprints

4.2 Scrum team Rollen

Agile werken vereist een andere manier van organiseren dan de traditionele methoden. In plaats van een hiërarchische structuur waarin de besluitvorming top-down verloopt, richt Agile zich op zelforganisatie en gedeelde verantwoordelijkheid. Men moedigt teamleden aan om samen te werken, te communiceren en beslissingen te nemen op basis van hun expertise en ervaring.

Scum Team

Scrum Teams worden multidisciplinair samengesteld zodat zijn waarde kunnen creëren in de sprints die nodig zijn om te komen tot een gewenst eindresultaat. Het is een zogenaamd zelfsturend team, wat betekent dat de teamleden onderling bepalen wie wat wanneer doet en zelf bepaald hoe.

In een Scrum Team zijn er drie specifieke rollen:

1. De Product Owner is eindverantwoordelijk voor de ‘stem van de klant’ en stemt af met stakeholders zodat de maximale waarde voor de klant wordt bereikt.

2. Als tweede rol is er de Scrum Master die het team begeleid en zorgt ervoor dat het proces op de juiste wijze wordt gevolgd. Deze is er ook verantwoordelijk voor om te zorgen dat alle betrokkenen kennis hebben van en vaardig zijn in het Agile werken.

3. De laatste rol Developers / teamleden focussen zich op het realiseren van een werkbare oplossing. Per sprint kan de samenstelling wisselen omdat er bijvoorbeeld specifieke expertise nodig is.
Daarnaast is er nog een vierde groep die niet aansluiten bij het uitvoeren van een sprint maar wel worden uitgenodigd voor reviews om feedback te geven en communiceren hun wensen aan de Product Owner.

4.3 Scrum events houden

Er zijn vaste ‘events’ in een sprint die het team met elkaar houden en soms ook met de stakeholders.

4.3.1. Sprintplanning

Dit event vindt plaats bij start van de sprint. Eerst wordt hierbij wordt het doel voor komende sprint bepaald en vervolgens worden de activiteiten van de sprint zelf ingepland door het gehele Scrum team.

4.3.2. Daily Scrum

Vervolgens start de sprint en wordt dagelijks door het hele Scrum team gekeken naar wat er is bereikt en wat het doel is voor de dag. Dit heet de Daily Scrum en dit duurt maximaal een kwartier.

4.3.3. Sprint review

De Sprint review vindt plaats na oplevering van een (deel)product waarbij deze wordt gedemonstreerd aan de stakeholders. Het Scrum team en de stakeholders bespreken samen wat men heeft bereikt (verbeterd product) en wat er is veranderd qua behoefte, omgeving dan wel randvoorwaarden. Op basis hiervan bepaald het team de inhoud van de volgende Sprint.

4.3.4 Sprint Retrospective

Het Scrum team bespreekt na afloop van de Sprint hoe het hele proces is verlopen. Hierbij kijkt men naar de teamleden, samenwerking & interacties in het team, het proces & de voortgang en wat er uiteindelijk is opgeleverd.
Tijdens de Retrospective bespreek je wat er goed ging, wat er beter kan en wat men gaat doen in de volgende Sprint om het beter te doen.

4.4 Scrum basiselementen

Er zijn drie elementen die houvast geven in het scrum proces namelijk:

4.4.1. Product Backlog

De Product Backlog, ook wel de ‘user stories’ genoemd, is een lijst met eisen en wensen die gebruikers, klanten of stakeholders hebben. Dit is een geordende lijst die de Product Owner bijhoud. Hierin staat duidelijk vermeld wat de prioriteiten van het werk zijn dat het team moet oppakken.

4.4.2. Sprint Backlog

Op de Sprint Backlog staat alles wat gedaan wordt in actuele Sprint. Dit overzicht is te vinden op het Kanban bord. Het bestaat uit het Sprint Doel (waarom), de set van Product Backlog items geselecteerd voor de Sprint (wat) en een uitvoerbaar plan voor het opleveren van het gewenste resultaat (hoe).

4.4.3. Kanban (Scrum bord)

Kanban is een bord waar taken visueel worden gemaakt zodat de teamleden kunnen zien welke taken er nog openstaan, in uitvoering zijn en afgerond zijn. Dit overzicht wordt continu bijgewerkt en besproken in de Daily Scrum. Vaak zijn dit drie kolommen:

To do (= Wat moeten we nog doen?)
Doing (= Waar zijn we nu mee bezig?)
Done (= Wat is al klaar en opgeleverd?)

Het doel van Kanban is om de doorstroom van taken te verbeteren en eventuele bottlenecks in het proces snel op te sporen en op te lossen.

4.4.4 Scrum raamwerk

Al de hiervoor genoemde zaken komen terug in het Scrum raamwerk

Agile Scrum Framework
Agile Scrum Framework

5. Voordelen Agile

Al met al biedt Agile werken een flexibele en effectieve aanpak voor het realiseren van projecten. Door te focussen op samenwerking, klantwaarde en continue verbetering, kunnen teams succesvolle projecten opleveren en voldoen aan de veranderende eisen en behoeften van de klant.

Het werken volgens de Agile methode heeft diverse voordelen:

1. Hoge waarde voor de klant (Productkwaliteit) omdat regelmatig wordt gecheckt of een product werkt tijdens ontwikkeling. Dit zorgt ervoor dat eventuele aanpassingen makkelijk en snel doorgevoerd kunnen worden en men bewust is van eventuele problemen.

2. Korte ‘’time-to-market’’, doordat er in korte iteraties wordt gewerkt en er regelmatig werkende (deel)producten worden opgeleverd en er optimale voortgangscontrole is.

3. Flexibeler kunnen inspelen op veranderde behoeftes en omstandigheden.

4. Hogere klanttevredenheid door de hoge mate van betrokkenheid in het proces waardoor de klant krijgt wat hij/zij wil.

5. Werkplezier teamleden door de betrokkenheid en samenwerken met collega’s

6. Verminderde risico op (volledig) falen omdat er vanuit korte cycli wordt gewerkt.

7. Snellere ROI omdat de functionaliteit/voordelen stapsgewijs worden opgeleverd, waardoor voordelen al vroeg worden gerealiseerd terwijl het product nog niet is uitontwikkeld.