DevOpsDevOps verbeteren? Focus op competenties!

DevOps competentiesOrganisaties die in DevOps willen investeren zijn van nature geneigd zich te focussen op het implementeren van tools. Het ligt ook voor de hand. Het zijn voor het management tastbare investeringen. Het eindresultaat, de hoeveel tijd en de kosten zijn redelijk goed in te schatten, maar een gedragsverandering is onvoorspelbaar. Uiteraard zijn tools belangrijk. Maar tools zijn ondersteunend aan de competenties.

Volgens onderzoek van het DevOps Research and Assessment-instituut (DORA) zijn er twintig competenties waarop organisaties zich moeten richten om zich via DevOps te verbeteren. Deze competenties zijn onder te verdelen in vier clusters: technisch, proces, meten en cultuur. Organisaties die zich met DevOps op deze competenties richten, blijken uit onderzoek van DORA succesvoller te zijn dan organisaties die zich hier niet op richten.

Technisch

Eén van de technische competenties is Trunk Based Development (TBD). TBD houdt in dat er steeds korte tijd in een geïsoleerde omgeving aan nieuw functionaliteit wordt gewerkt. Het idee is dat het resultaat zo snel mogelijk wordt vrijgegeven voor productie. Hoe sneller de nieuwe functionaliteit wordt toegevoegd, hoe kleiner de kans dat er conflicten zijn met andere functionaliteiten die tegelijkertijd zijn ontwikkeld door andere teamleden. Het verbeteren van deze competentie zorgt voor het sneller kunnen implementeren van nieuwe functionaliteit en minder fouten bij releases.

Proces

Een voorbeeld van een proces-competentie is het zichtbaar maken van klantfeedback. De essentie van deze competentie is dat de teams die software ontwikkelen volledig op de hoogte zijn van hoe de eindgebruiker de oplossing gebruikt en waardeert. Een vraag die daarbij gesteld kan worden is: Wordt de functionaliteit die wordt ontwikkeld ook daadwerkelijk gebruikt? En als eindgebruikers de nieuwe functionaliteit gebruiken, doen zij dat dan op de manier zoals bedacht? Leidt een bezoek aan een webwinkel bijvoorbeeld ook tot aankoop? Het idee achter het verbeteren van deze competentie is het realiseren van een korte feedbackcyclus. Tevens zorgt het ervoor dat het team zich bewust is van hoe de eindgebruiker met de oplossing werkt.

Meten

Een voorbeeld van een meet-competentie is monitoring. Hierbij is het belangrijk dat fouten die optreden in de productie-omgeving direct zichtbaar gemaakt worden. Door voortdurend te meten en fouten zichtbaar te maken, kunnen problemen al worden opgelost voordat gebruikers er last van hebben. Ook is het mogelijk gebruikers via bijvoorbeeld een dashboard proactief te informeren over de status van de software.

Cultuur

Ten slotte is er het cultuuraspect. Belangrijk daarbij is dat organisaties een klimaat scheppen waar teams permanent kunnen leren. Denk hierbij aan de mogelijkheid tot het volgen van trainingen en seminars, of het reserveren van een vast dag(deel) om zelf nieuwe functionaliteit te ontwikkelen. Een voorbeeld hiervan is de Think Friday bij IBM. Uiteraard aan u de keuze.

En nu?

Nu duidelijk is welke competenties voor DevOps van belang zijn, kunt u gaan werken aan het verbeteren ervan. Het is daarbij belangrijk om niet aan alle competenties tegelijkertijd te willen werken, maar te focussen op maximaal 2 of 3 competenties tegelijkertijd. Via een DevOps Assessment kunt u bepalen waar voor uw organisatie het meeste winst te behalen valt. Een voorbeeld hiervan is het DevOps Program.

Marcel Groennou, Unit manager DevOps