05 September 2019

Vorige week werd het "State of DevOps" report 2019 weer gepubliceerd; iets waar ik ieder jaar naar uit kijk omdat er altijd weer een aantal interessante en opvallende conclusies in staan. Het State of DevOps Report is een jaarlijks rapport met een aantal van de belangrijkste ontwikkelingen op IT gebied met focus op de ontwikkeling en operations van IT systemen. Dit rapport wordt samengesteld door DORA (DevOps Research and Assessment) en is gebaseerd op statistische analyse van 31.000 respondenten wereldwijd waarbij zij vragen beantwoorden over hun werkwijzen en een aantal KPI's zoals Change lead time, Deployment frequency, Change fail rate, focus, burn-out percentages etc.

In dit artikel beschrijf ik de belangrijkste conclusies uit dit rapport: 
 

  1. Bij alle branches en sectoren komen high performing organisaties voor die er in slagen snelheid van innovatie te combineren met stabiliteit en betrouwbaarheid. Ook het voldoen aan strenge wet en regelgeving zoals bij overheden en banken hoeft geen belemmering te zijn om snel, hoge kwaliteit software te leveren, met stabiliteit van systemen. Wel zien we bij retailers een hoger percentage elite performers, wat waarschijnlijk veroorzaakt wordt door de hoge concurrentiedruk en de kleine marges.
  2. Bij elite performers is het duidelijk dat zij erin geslaagd zijn een cultuur te creëren gebaseerd op "psychological safety "; het gevoel openlijk met iedereen te kunnen praten, ook als het over lastige onderwerpen gaat. Deze organisaties besteden veel aandacht aan cultuuraspecten en nemen maatregelen om deze te bevorderen. Een duidelijk change proces verhoogt bijvoorbeeld deze psychologische veiligheid, net als “continuous delivery” elementen zoals automatische deployment naar productie, code onderhoudbaarheid en losgekoppelde architectuur.
  3. Duidelijk is dat cloud oplossingen een essentieel onderdeel zijn geworden van succesvolle DevOps implementaties. Wel is daarbij ook de specifieke invulling van deze cloud oplossing van belang, want niet iedere variant levert de beste resultaten op. Succesvolle cloud oplossingen hebben namelijk de volgende kenmerken:
  • On-demand self-service
  • Broad network access (Makkelijk benaderbaar vanaf verschillende devices)
  • Resource pooling (Het “multi-tenant” model waarbij resources dynamisch, on-demand worden toegekend)
  • Elastic (Capaciteit kan snel verhoogd of verlaagd worden)
  • Measured service (Cloud oplossingen stellen organisaties beter in staat hun kosten te beheersen)
  1. Het gebruik van serverless toepassingen (Function-as-service) is toegenomen met services als AWS Lambda, Azure Functions, GCP Cloud Functions, en Zeit. Dit zorgt ervoor dat het werk van de IT engineer nog verder weg komt te liggen van de IT infrastructuur en dat hij of zij zich nog meer bezig kan houden met het ontwikkelen van de applicaties.
  2. Organisaties die de onderhoudbaarheid van hun code prioriteit geven doen het daadwerkelijk beter dan andere organisaties.
  3. Organisaties die makkelijk te gebruiken tools promoten, en niet heel veel zelf-ontwikkelde tools gebruiken, presteren beter dan andere organisaties. Elite performers gebruiken meer open source software en maken ook meer gebruik van externe kennisbronnen zoals Stack Overflow.
  4. De rol van het CAB (Change Authority Board) verandert. Controles en kwaliteitsbewaking komen steeds meer bij de developers zelf te liggen, waardoor het CAB zich meer op strategische zaken kan richten, zoals het monitoren van strategische risico’s.
  5. Het DASA onderzoek heeft een duidelijk verschil laten zien in de manier waarin een nieuwe manier van werken in de organisatie uitgerold wordt. Elite performers maken gebruik van Communities of Practice of zogenaamde Grassroot teams (zie tabel). Ook de strategie van “Proof of Concepts (PoC) as a Template” is redelijk succesvol. Training Centers (ook wel Dojo’s genoemd) en Centers of Excellence lijken minder succesvol te zijn, omdat zij silovorming en geïsoleerde expert groepen bevorderen.
     

Mijns inziens is het inmiddels duidelijk dat DevOps geen hype is, maar de nieuwe manier van werken is en wordt, waarbij samenwerking, kennisdeling en leervermogen centraal staan.

 

Communities of Practice

Interesse groepen waarbij iedereen die deel wil nemen kennis en ervaring deelt over specifieke onderwerpen, zoals programmeertalen, tools, werkwijzen, technologie etc.

Grassroots (of Bottom up)

Kleine teams op de werkvloer die zich bezighouden met nieuwe werkwijzen en hun leerpunten of informele wijze delen met de rest van de organisatie, zonder formele ondersteuning.

Proof of Concepts (PoC) as a Template

Een team dat de vrijheid krijgt een nieuwe werkwijze uit te proberen, waarbij het doorbreken van allerlei organisatorische regels toegestaan is, waarna deze nieuwe werkwijze als blauwdruk overgezet wordt naar andere afdelingen, die hier hun eigen, specifieke invulling aan kunnen geven.