Delta-NDevOps Antipatterns – Waarom Dev en Ops silos niet werken

DevOps silosHet toepassen van DevOps patronen leidt tot meer waarde voor de klant in kortere tijd. Een van de patronen die helpt om sneller meer waarde te leveren, is het opzetten van cross-functional teams. Teams waarin alle disciplines vertegenwoordigd zijn, die nodig zijn om een softwareproduct van idee naar klant te brengen. Veel bedrijven hebben echter nog gescheiden Development en Operations afdelingen. Dit is vaak al jaren zo, maar er wordt niks aan veranderd. Waarom niet?

Bedrijven hebben vaak een structuur en achterliggende processen die in de loop der tijd ontstaan zijn. Alles binnen het bedrijf is ingericht om die structuur in stand te houden. Denk daarbij aan overleggen, goedkeurings- en reviewprocessen, organisatorische hiërarchieën etc. Dat maakt dat het heel lastig is om van de ene op de andere dag over te stappen naar cross-functional teams.

Tegengestelde belangen

Veel bedrijven hebben zelfs aparte managementstructuren voor Development en Operations. Dan komt Eliyahu Goldratt met z’n “Core Chronic Conflict” weer naar voren; de incentive van Development is verandering, de incentive van Operations is veiligheid en stabiliteit. Die twee spreken elkaar tegen, en dus staan de teams ook lijnrecht tegenover elkaar. Daarom is er ook vaak discussie wanneer er weer eens een probleem in productie optreedt; wie is de schuldige? Wat voor goedkeuringen en processen gaan we nu weer bedenken om dit te voorkomen? En dit terwijl het veel beter zou zijn om gemeenschappelijk aan constructies te werken, waardoor dit soort problemen misschien helemaal niet meer voorkomen.

Cross-functional teams

Waarom zou je cross-functional teams willen? Een van de belangrijkste redenen is efficiency! Het fenomeen waarbij mensen op elkaar zitten te wachten; de ontwikkelaar heeft een database wijziging nodig die door een database specialist uitgevoerd moet worden, maar de database specialist heeft daar pas over 2 weken tijd voor. Dat betekent dat het werk van de ontwikkelaar ook uitgesteld moet worden. De overdracht van de taak heet een “hand-off” en die wil je zoveel mogelijk voorkomen. Wanneer de mensen in hetzelfde team zitten en hetzelfde doel nastreven, is dit een stuk eenvoudiger. Het is begrijpelijk dat niet voor ieder team een database specialist beschikbaar zal zijn. Dit is op te lossen door database specialisten te laten rouleren of te laten functioneren als een “competence centre”, waarbij kennisoverdracht aan de teams centraal staat.

Meer dan Dev en Ops samenvoegen

Dev en OpsHet samenvoegen van Development en Operations om cross-functional teams te maken is ook niet de oplossing. Vaak is er meer nodig dan mensen van operations alleen. Daarnaast bestaat operations regelmatig ook uit mensen die de kantoorautomatisering voor hun rekening nemen (werkplek beheer etc) en die spelen geen directe rol in de voortbrenging van een softwareproduct.

De manier om richting cross-functional teams te bewegen is, zoals bij veel verandertrajecten, door klein te beginnen. Zet een aantal gemotiveerde mensen bij elkaar (ontwikkelaars, testers, architecten, database specialisten, operations/infra specialisten etc) en begin met een klein traject. Geef ze ruimte om vrij te bewegen en geef ze voldoende resources. Zorg voor een goede Product Owner en Scrum Master. Stel een duidelijk doel. Boek en vier successen en laat de organisatie zien dat het werkt. Al snel zullen meer mensen willen aanhaken in het nieuwe concept. Het doel voor zo’n eerste traject kan bijvoorbeeld zijn:

  • Opbouwen van onderling vertrouwen en vertrouwen in DevOps.
  • Het inzicht krijgen dat samenwerking belangrijk is om je klanten blij te maken.
  • Het komen tot een basis patterns en practices die volgende teams kunnen inzetten om succesvol te zijn.

Bedenk wel: er is nooit een goed moment voor zo’n verandering, stel het niet uit, de concurrentie streeft je voorbij voor je het weet!

Lees voor meer informatie over werkende en niet-werkende organisatiestructuren op https://web.devopstopologies.com/.

Wilt u weten met het invoeren van welke DevOps patronen voor uw organisatie het meeste winst te behalen valt? Start met een meting van uw DevOps prestaties.

Fokko Veegens, DevOps Consultant

DevOps in de cloud whitepaper