Arno Balk: Het belang van persoonlijkheden in DevOps en Scrum teams

| DevOps en Scrum teams

Balk

Arno Balk is werkzaam bij Immune-IT als testconsultant en Scrum Master. En hij is erg enthousiast over DevOps: “De samenstelling van een team wordt in mijn ervaring steeds belangrijker. En dat heeft niet alleen te maken met de benodigde disciplines, maar soms ook met het selecteren van de juiste persoonlijkheden aan de poort.”

In DevOps vallen traditionele rollen steeds meer weg. Iedereen is een beetje van alles: ontwikkelaar, tester, beheerder. Iedereen wordt ook geacht om meerdere disciplines te beheersen, of tenminste twee. De tester wordt T-shaped en wordt geacht meer te doen dan alleen testen. Het team is als geheel verantwoordelijk voor de ontwikkeling, de oplevering en het beheer. Men stuurt zichzelf aan, zonder dat er sprake is van een uitgebreide formele hiërarchie. Deze werkwijze verandert de rol van de tester. De tester is niet meer gespecialiseerd in een bepaald soort test, zoals vroeger, maar moet in staat zijn om alle testen te kunnen uitvoeren. Daarnaast komt het managen/coördineren van het testen ook steeds meer bij de tester zelf te liggen.

Dit alles betekent niet alleen dat er meer van je wordt verwacht, maar ook dat je alle kansen krijgt om je kennis te verbreden en jezelf te ontwikkelen als professional. Je mag – en moet – als 'moderne tester' echt je rol pakken binnen het team. DevOps biedt nog meer dan Scrum, mogelijkheden om je als tester een positie te veroveren tussen de business en techneuten. Tussen die werelden gaapt nogal eens een kloof in kennis en cultuur. De schakelfunctie die je als tester kunt innemen, is van onschatbare waarde in het optimaliseren van het ontwikkelproces.

Een tester (en Scrum Master) heeft – als het goed is – snel inzicht in de ontwikkelketen en weet precies bij wie (of welke afdeling) hij moet zijn wanneer er ergens in het proces iets vastloopt. Die verbindende rol kun je alleen pakken als je genoeg social skills hebt. Je moet gemakkelijk kunnen (mee)bewegen, tussen (en met) verschillende functies en afdelingen die soms een heel andere manier van werken hebben. Een tester moet duidelijk kunnen aangeven waarom bepaalde testen wel of niet nodig zijn, of waarom sommige testen beter geautomatiseerd kunnen worden.

Scrummen in DevOps

Was Scrum de werkwijze die de business, de tester en de ontwikkelaar dichter bij elkaar bracht, met de komst van DevOps is het team – en de kennisuitwisseling – nog verder uitgebreid met de afdeling Operations (beheer). DevOps levert daarmee een nog betere terugkoppeling vanuit de gebruikers van de opgeleverde software. Deze feedback vanuit de praktijk leidt bijna altijd weer tot nieuwe inzichten tijdens de volgende developmentfase. Testers, ontwikkelaars - maar ook de vertegenwoordigers vanuit de business krijgen hierdoor sneller een beter beeld van hoe de software echt gebruikt wordt.

Binnen DevOps is er eigenlijk geen vaste rol voor de Scrum Master. Hoe je je rol vervult ligt, net zoals bij Scrum, in lijn met hoe je zelf als persoon bent, welke mensen je in het Scrum team heb zitten en hoe de organisatie in elkaar steekt. Hierdoor zie je soms (grote) verschillen in hoe Scrum Masters denken over hun eigen functie/rol, in bepaalde dynamieken.

Persoonlijk vind ik dat een Scrum Master altijd het team voorop moet stellen, zelfs wanneer het team keuzes maakt waar je als Scrum Master niet direct achter staat. Als het goed is, heb je een team met specialisten – ieder op een eigen gebied. Je mag (en moet) ook als Scrum Master kritische vragen stellen, maar vooral ook een sfeer zien te creëren waarin iedereen dit kan doen - met respect voor elkaar. Hierin moet je het team helpen – want vertrouwen, respect en een goede sfeer zijn onmisbaar om doelen te bereiken en problemen op te lossen. Wat mij betreft moet het team ook de vrijheid krijgen van de organisatie om zelf keuzes te maken. Wanneer dit niet het geval is, moet ik er als Scrum Master voor zorgen dat de leden van het team wel die vrijheid krijgt om te doen waar ze goed in zijn en waarvoor ze zijn ingehuurd: het opleveren en beheren van goed werkende software.

Het wegvallen van vaste rollen binnen een team – eerst bij Scrum en nog meer bij DevOps – brengt niet alleen een nieuwe dynamiek met zich mee, het levert soms ook fricties op. Deze fricties kunnen het proces verstoren. Het gladstrijken – en liever nog voorkomen – van conflicten binnen een team is een belangrijke maar vaak onderbelichte (want gevoelige) taak van de Scrum Master. Als Scrum Master maak je zelf van alles mee – en ook van collega's hoor je natuurlijk wel eens verhalen van andere projecten. 

 

Productieverstorende spanningen waar je als Scrum Master mee te maken kunt krijgen binnen een Scrum of DevOps team:


1. Twee teamleden geven aan niet meer te kunnen (en dus ook niet meer te willen) samenwerken met elkaar, vanwege een meningsverschil over hoe het team zijn producten moet opleveren;

2. Teamleden die vanwege autorisaties niet alles mogen doen, bijvoorbeeld niet mogen kijken naar productiegegevens of instellingen op de productiemachines. Dit kan leiden tot frustraties en slechte motivatie;

3. Senior developers (en testers) hebben binnen een team ook een coachende rol richting juniors. Je moet goed kunnen uitleggen waarom welke keuzes zijn gemaakt en de junioren helpen om zelf zo’n keuze te kunnen maken. Zodra een senior dit niet kan en zijn zin doordrukt, kan dit leiden tot een explosieve dynamiek.

Omdat Agile werkwijzen als Scrum en DevOps in hoge mate gericht zijn op kennisuitwisseling en intensieve, zelfsturende samenwerking, wordt er in toenemende mate een beroep gedaan op de communicatieve vaardigheden van alle IT'ers in het team. Formeel is niemand de baas, maar het team moet wel efficiënt functioneren. Je grijpt dus in wanneer het echt “vastloopt”.

Komt het team niet verder op eigen kracht, dan trek je het los. Hoe de Scrum Master dat doet, ligt aan de situatie. Het kan zelfs gebeuren dat de Scrum Master het advies geeft om bepaalde mensen uit het team te zetten. Dat is natuurlijk niet de bedoeling, maar soms kan het niet anders. Voorkomen is in mijn optiek altijd beter dan genezen. De samenstelling van een team wordt in mijn ervaring dus ook steeds belangrijker. En dat heeft niet alleen te maken met de benodigde disciplines, maar soms ook met het selecteren van de juiste persoonlijkheden aan de poort.