News

×

DevOps: een paar belangrijke lessen


Sinds het begin van dit decennium is DevOps voor velen geëvolueerd van een hol buzzword naar een effectieve implementatie van een betere samenwerking tussen development en operations. Aangezien meerdere organisaties dit principe beginnen op te pikken, geven we enkel belangerijke ‘key takeaways’ mee:

 

DevOps draait om meer dan louter een snelle pijplijn om code in productie te krijgen.

Alhoewel een snelle time to market van nieuwe functionaliteit zeker een kernonderdeel van DevOps kan genoemd worden, speelt de menselijke aanpak een nog belangrijkere rol. Werknemers van beide afdelingen die elkaar met gelijkheid behandelen en openstaan voor samenwerking, vormen de kernwaarden van DevOps. Waar ruimte is voor discussie en directe communicatie, versterkt de samenwerking tussen beide partijen zodat ze meer als één team beschouwd kunnen worden.

 

Waar Agile methodologieën de afstand tussen IT en business proberen overbruggen, tracht DevOps dit te doen tussen development en operations.

In oudere denkpatronen zijn de verantwoordelijkheden van deze afdelingen sterk gescheiden. De ontwikkelaars schrijven de software. Wanneer deze klaar is, is het aan de systeembeheerders om de software aan de praat te krijgen en te houden. Aangezien continuous integration en continuous delivery meer en meer hun waarde tonen in het opleveren van software, wordt samenwerken alsmaar belangrijker. Deze samenwerking mag echter niet gezien worden als een noodzakelijk kwaad, maar moet zoveel mogelijk omarmd en uitgespeeld worden.

 

De vier pijlers van DevOps zijn allen even belangrijk om het volledige concept in evenwicht te houden

  1. Collaboration

DevOps gaat in eerste instantie over mensen te laten samenwerken. Dit kan verschillende vormen aannemen zoals code reviews houden, documentatie schrijven, aan pair programming doen, … Binnen het DevOps team willen we een zogenaamde blameless culture kweken, waarbij in eerste instantie wordt onderzocht wát er is fout gelopen en niet door wíe.

  1. Affinity

Deze pijler is vergelijkbaar met collaboration, maar dan op teamniveau. Er doen vaak een aantal vooroordelen de ronde die ervoor zorgen dat teams niet goed kunnen samenwerken, zoals het gevoel dat sommige teams belangrijker zijn dan andere.

  1. Tools

Tools kunnen de samenwerking bevorderen, maar het is belangrijk om in te zien dat deze een middel zijn en geen doel op zich. Indien men een DevOps tool aanwendt (Chef, Ansible, …), wil dit niet per sé zeggen dat men aan DevOps doet. Het is belangrijker hoe men een tool toepast dan welke tool men gebruikt.

  1. Scaling

Bedrijven moeten in hun achterhoofd houden dat ze blijven evolueren. Dit kan zowel groei als inkrimping betekenen waarmee de organisatie rekening moet houden (bij het uittekenen van teams, informele processen, …).

Het is niet altijd even evident om DevOps te introduceren bij cliënten of op projecten. Hieronder enkele valkuilen die een implementatie verhinderen of bemoeilijken:

 

Uiterlijke schijn

Wat we op het werkveld vaak zien is dat bedrijven een werkwijze of methodologie proberen aanmeten door de uiterlijke kenmerken ervan na te bootsen. Zo zijn er organisaties die afgebakende ontwikkelperiodes sprints noemen, ’s ochtends rechtopstaand vergaderen en hierdoor menen aan Scrum te doen. Niets is uiteraard minder waar. Net zoals bij agile methodologieën, is er bij DevOps vooral nood aan een mentaliteitswijziging. Enkele zicthbare trekjes overnemen volstaat niet.

 

Aparte teams

Het oprichten van een apart DevOps team kan logisch lijken, maar is in feite een contradictio in terminis. Hoe willen we namelijk een betere samenwerking tussen teams realiseren door nog een extra team op te richten? En nee, het volstaat niet om een andere naam voor dit team te verzinnen…

 

DevOps is geen methodologie of framework

DevOps blijft een behoorlijk abstract gegeven. Er is nog wel wat werk om de processen te formalizeren. Formele processen zouden kunnen helpen bij het opzetten van een omgeving die conform is aan de kernwaarden. Er zijn momenteel nog weinig concrete implementatiemiddelen waartoe iemand zich kan wenden als hij of zij DevOps wenst te gebruiken. Veel bronnen geraken helaas niet verder dan dat DevOps voor goed samenwerken staat. Het is dan ook sterk afhankelijk van hoe je omgeving eruit ziet waarin je DevOps wil gaan toepassen.

 

Conclusie, DevOps verandert fundamenteel de samenwerking van vandaag tussen Dev en Ops. Er zijn nieuwe skills voor nodig, nieuwe tools en nieuwe prioriteiten. Het is een continu proces dat tijd in beslag neemt en een nieuw perspectief over samenwerken vereist.

13 Mei 2019

Check out our lastest news posts

LipDub Team Weekend Konato


18 Oktober 2019

Read more

Procesanalyse: een vak apart!

Wat is een bedrijfsproces? Een proces is het best te omschrijven als een serie van activiteiten uitgevoerd door mensen of machines, waarbij verschillende middelen nodig zijn. Deze activiteiten worden op hun beurt ondersteunt door informatie en communicatie. Over verschillende teams of afdelingen heen, zorgen bedrijfsprocessen voor een standvastige structuur (standaardisatie) met als doel een optimaal […]


27 Augustus 2019

Read more

DNA van het ideale project!

Ideaal bestaat niet… Ideaal is een synoniem van perfect. En van perfectionisme weten we al lang dat het niet bestaat. Dus een ideaal project = een perfect project = onbestaand? Als we echt eerlijk zijn, is er in elk project wel iets dat soms een beetje en soms, veel beter kan. Laten we er dus […]


19 Augustus 2019

Read more