Testen binnen scrum – Test Talk Whiteboard

In deze Test Talk whiteboard wordt ingegaan op het testen binnen de Scrum methodiek. Veel kijk plezier.

Abonneer je op ons YouTube kanaal en blijf op de hoogte van alle nieuwe video's.

Videotranscriptie

Testen binnen scrum

Welkom bij Test Talk  whiteboard  In deze Test Talk whiteboard zal ik ingaan op Testen binnen scrum. 

De volgende onderwerpen zullen worden behandeld:

  • Proces binnen scrum
  • Testen in de verschillende fases van scrum
  • Mogelijke valkuilen
  • Skills benodigd voor testen
  • Testmethodieken toepasbaar?

Scrum proces

Scrum proces

Het scrum proces begint bij de backlog die gevuld wordt door de stakeholders en de product owner. Binnen de backlog worden de backlog items gevuld en voor zover mogelijk beschreven. Nadat een backlog is gevuld en geprioriteerd start het refinement proces. Hierin worden de specificaties duidelijk gemaakt aan het team en waar nodig aangepast zodat het team de specificaties en requirements snapt.

Nadat de refinement is uitgevoerd volgt de planning. In de planning wordt de Sprint gevuld op basis van de hoogste geprioriteerde backlog items,  wordt het aantal punten bepaald voor het backlog item en worden de backlog items in de sprint geplaatst op basis van de velocity.

De in de sprint geplaatste backlog items worden verwerkt tot een increment en deze wordt getest. Als het increment klaar is aan het einde van de Sprint volgt de review waarin de stakeholders, product owner, scrum Master en het team samen het increment bespreken. Als het increment is besproken volgt de retrospective waarin teruggekeken wordt op de afgelopen Sprint en verbeterpunten voor de volgende Sprint worden opgesteld.

Testen binnen het scrum proces

Testen binnen scrum

Het testen begint al vroeg binnen het scrum proces. Al tijdens de refinement zou testen betrokken moeten worden voor en risico inschatting, een intake op de testbasis en volledigheid check. Bij elk backlog item zou een risico inschatting moeten zitten opgesteld door de productowner waarbij testen één van de stakeholders is. Het kan zijn dat de risico inschatting tijdens de refinement sessie nog wordt bijgesteld of dat de requirements worden aangescherpt. Dit heeft invloed op het testen.

Als tweede moet de tester tijdens de refinement sessie de intake testbasis uitvoeren. Hij moet beoordelen of het backlog item testbaar is. Zo niet moet hij hierover vragen stellen om het item beter testbaar te krijgen.

Als derde zou de tester een volledigheidscheck moeten uitvoeren op de backlog items. Is alles aanwezig om dit backlog item goed te kunnen testen.

Tussen de refinement en planning moet de tester een “teststrategie” opstellen. Deze “teststrategie” is niet groot. Dit kan zijn een A4tje per backlog item, een memoblaadje of gewoon in het hoofd van de tester. In deze ‘teststrategie” zorgt de tester dat duidelijk is welke testontwerptechnieken gebruikt gaan worden. Hierdoor kan hij beter inschatten welke punten benodigd zijn in de planningssessie. Ook de diepgang van de testen op basis van de risicoanalyse moet hierin meegenomen worden. Hoe diepgaander er getest moet worden hoe hoger de punten.

Planning

In de planningssessie zal de tester op basis van zijn teststrategie punten gaan geven aan de verschillende backlog items. Hierdoor kan hij gemotiveerd aangeven waarom bepaalde punten worden gescoord. Daarnaast moet hij rekening houden met de impact op regressie. Als de impact op regressie groot is zal de tester ook hoger moeten scoren tijdens de planningssessie.

Increment

Tijdens de ontwikkeling van het increment is de tester aan het voorbereiden en uitvoeren. Hij zorgt ervoor dat de gewenste strategie wordt uitgevoerd met de diepgang zoals eerder bepaald.

Review

Tijdens de review krijgt het scrumteam de mogelijkheid vertrouwen te verschaffen, aan de stakeholders, in het product. Dit kan ook de tester heel goed doen. Waarom? De tester heeft vaak over het gehele domein kennis en kan dus de voor de stakeholders relevante informatie verschaffen. Daarnaast kan hij door het tonen van de testware vertrouwen verschaffen dat het product volledig en goed is getest.

Retrospective

Tijdens de retrospective worden de verbeterpunten besproken. Ook hier dient de tester zijn verbeterpunten in te brengen om het verloop van de testen tijdens de volgende sprints soepeler en sneller te laten verlopen.

Testen binnen scrumMogelijke valkuilen

Er zijn verschillende valkuilen binnen scrum die het testen bemoeilijken.

  • Er zijn geen goede backlog items. Hierdoor wordt er foutief, niet naar de klantwens, gebouwd maar ook het testen kan hierdoor de verkeerde focus hebben. De gewenste teststrategie kan niet worden uitgevoerd waardoor er binnen de uitgevoerde testen niet de juiste focus is gelegd. Zorg er dus voor dat alle backlog items goed zijn doorgesproken met zowel de stakeholders als het gehele scrumteam in de refinementsessie(s)
  • Testen ligt ook binnen scrum vaak op het kritieke pad. Door een beperkte voorbereidingstijd en uitvoering die langer duurt kan er voor zorgen dat aan het einde van de sprint er beperkte tijd over is om alle testen nog uit te kunnen voeren. Ook software fouten welke in het testtraject naar voren komen kunnen leiden tot vertraging van het testen. Zorg ervoor dat alle gebouwde backlog items ook direct getest worden en fouten hierin worden opgelost.
  • Door een keuze van een teststrategie kan het zijn dat er een verkeerde focus komt te liggen op een backlog item. Hierdoor wordt dit item te diep of te weinig getest. Hierdoor ontstaan planningsproblemen of de functionaliteit wordt niet volledig getest.

Benodigde skills

In scrum wordt er veel van een tester verwacht zowel testmanagement taken als uitvoerende skills.

  • In de refinement moet de tester een risico inschatting kunnen doen, intake op de testbasis en een volledigheidscheck. Hiervoor zijn hoofdzakelijk testmanagement skills benodigd
  • In het opstellen van de teststrategie heeft de tester kennis nodig van testontwerptechnieken en waar deze wel en niet toe te passen zijn. Dit zijn testmanagement skills.
  • Bij de planningssessie moet hij uit kunnen leggen waarom bepaalde testontwerptechnieken benodigd zijn en welke impact dat heeft op de tijdsbesteding, het aantal punten. Dit zijn testmanagement skills.
  • Bij het creëren van het increment moet de tester zijn uitvoerende skills tonen. Hij moet de testen kunnen voorbereiden op basis van de gekozen testontwerptechnieken en deze uitvoeren op het increment.
  • Bij de review moet de tester uitleg kunnen geven over het opgeleverde increment en de daarbij behorende testware.
  • Bij de evaluatie moet de tester kunnen meepraten over verbeteringen over testen.

Je ziet dus dat alle facetten van het testvak geraakt worden door het gehele scrum proces, daarvoor moet de tester dus wel brede testskills hebben.

Om de skills te hebben moet de tester ook een grote theoretische kennis hebben over het gehele testdomein. De tester moet in het gehele proces alles theoretisch kunnen onderbouwen

Ook moet de tester technisch onderlegd zijn. In de uitvoering worden door het team bepaalde beslissingen genomen op technisch vlak. De tester moet dan wel kunnen bepalen wat de impact is op testen. Een voorbeeld hiervan is een wijziging in het database model. de tester moet dan kunnen bepalen welke impact dat heeft op de testgevallen. Daarnaast heeft het ook een pré als een tester kennis heeft van de gebruikte ontwikkeltaal. Hiermee kan de tester dan beter inschatten wat oplossingen in de software voor impact hebben op de testgevallen. De tester hoeft geen ontwikkelaar te zijn maar technische domein kennis is wel een voorwaarde.

Binnen alle sessies heeft de tester een grote rol. Om deze rol goed uit te kunnen voeren heeft hij diverse communicatieve skills nodig.

  • In de refinement moet de tester kunnen praten met stakeholders en productowner
  • In de planningssessie moet de tester kunnen praten met het team en de teststrategie kunnen uitleggen.
  • Tijdens het maken van het increment moet de tester kunnen praten met ontwerpers en ontwikkelaars.
  • In de review moet de tester een demonstratie kunnen geven en uit kunnen leggen hoe de testware is opgebouwd en in de retrospective moet de tester de verbeterpunten kunnen uitleggen.

Binnen scrum volgen veranderingen op het gebied van testen zich snel op. Om goed bij te blijven in het vakgebied moet de tester zich constant scholen.

De tester moet zelfreflectie kunnen doen om te kijken of zijn kennis nog steeds voldoende is op testgebied. Hiervoor moet de tester kritisch naar zichzelf en het testproces kunnen kijken. Daarvoor is natuurlijk wel veel parate kennis nodig over testen. De tester moet boven de materie kunnen staan om goed te kunnen functioneren in een scrumteam.

Testmethodieken toepasbaar

Zijn de gangbare methodieken zoals TMap(r)Next en ISTQB  nu bruikbaar binnen scrum? Natuurlijk zijn deze bruikbaar. Deze methodieken zijn adaptief en kunnen dus goed gebruikt worden.

Als je kijkt naar het scrumproces zie je de verschillende fases uit de methodieken naar voren komen.

  • Als je kijkt naar de refinement kun je TMap en ISTQB toepassen, het gaat hierbij om aspecten van de product risico analyse en de intake op de testbasis.
  • Als je kijkt naar de “Teststrategie”, hierin zitten zaken die in de planning van een testproces zijn beschreven.
  • In de planningssessie worden de punten toegekend. Dit onderdeel wordt beschreven in de begroting in de methodieken.
  • Bij het maken van het increment worden de testontwerptechnieken toegepast
  • In de review wordt het increment besproken dit staat niet specifiek in de methodieken maar is een einde van de uitvoeringsfase waarin het increment wordt opgeleverd
  • In de retrospective wordt de fase afronding gedaan.

Hieruit blijkt dat aspecten van de methodieken toepasbaar zijn binnen scrum. Moet je de methodiek volledig toepassen? Nee, pak alleen die aspecten op die van toepassing zijn voor het scrumproces en pas deze toe binnen de grenzen zoals scrum deze stelt.

Ik hoop dat jullie dit een waardevolle presentatie vonden over testen binnen scrum en ik hoop jullie de volgende keer weer te zien bij Test Talk witheboard. Houdoe! 😉

Ook interessant?

Scrum

Testmanagement taken bij scrum

Door veel testprofessionals wordt de vraag gesteld of de rol van testmanager niet aan het vervallen is in relatie met ...
Meer Lezen
Doing Agile / Being Agile

Verandert de rol van testen binnen Agile/Scrum?

Er is al veel gesproken en geschreven over het realiseren van de Agile waarden door het toepassen van Scrum. Veel ...
Meer Lezen
Ontwikkelmethodiek Scrum toepassen

Wanneer is Scrum toepasbaar – TestTalk Whiteboard

Deze TestTalk whiteboard gaat over demethode Scrum. En dan toegespitst op de situaties waarin Scrum goed of minder goed te ...
Meer Lezen
Agile / Scrum testplan

Testplan voor Agile / Scrum

Is een testplan benodigd binnen Agile / Scrum? Ja, er is een testplan benodigd binnen Agile /Scrum. Maar is dat ...
Meer Lezen
Blijf op de hoogte van onze nieuwste ontwikkelingen, schrijf je hier in voor de nieuwsbrief!