Close

DevOps best practices

DevOps vereist culturele veranderingen, geautomatiseerde processen en investeringen in de juiste technologieën

Foto van Tom Hall
Tom Hall

DevOps-vertegenwoordiger en -professional


De beste praktijken van DevOps bestaan uit agile projectmanagement, schakelen naar links met CI/CD, automation, monitoring, waarneembaarheid en continue feedback.

Wat is DevOps?


Het is het beste om DevOps te begrijpen als een zakelijke drive om de communicatie en samenwerking tussen development en operations teams te verbeteren, om zo de snelheid en kwaliteit van software-implementatie te verhogen. Het is een nieuwe manier van werken, die belangrijke gevolgen heeft voor teams en de organisaties waarvoor ze werken.

Het belang van DevOps


Hoewel een DevOps-transformatie een herziening van bedrijfsstructuren en processen vereist, is het de moeite waard. In de DevOps Trends-enquête 2020 van Atlassian zei 99 procent van de respondenten dat DevOps een positieve impact had op hun organisatie.

Uit een ander DevOps-onderzoek, DORA's State of DevOps 2019, bleek dat elite-gebruikers 208 keer vaker en 106 keer sneller releasen dan minder goed presterende teams. En het is niet alleen speed to market, DevOps levert verbeterde kwaliteit op, met elite-teams met een veranderingspercentage die zeven keer lager is dan minder goed presterende teams.

Pictogram verbonden cirkels
Gerelateerd materiaal

Gratis aan de slag

Pictogram wedstrijdbeker
Gerelateerd materiaal

Meer informatie over de voordelen van DevOps

Best practices voor het implementeren van DevOps


Agile projectmanagement

Agile is een iteratieve benadering van projectmanagement en softwareontwikkeling die teams helpt sneller waarde te leveren aan hun klanten en met minder hoofdpijn. Agile-teams richten zich op het leveren van werk in kleinere stappen, in plaats van te wachten op één grote releasedatum. Vereisten, plannen en resultaten worden continu geëvalueerd, zodat teams kunnen reageren op feedback en waar nodig kunnen bijsturen.

Hieronder volgen de belangrijkste concepten voor agile projectmanagement:

​​​​​​​Naar links schuiven met CI/CD

Wanneer teams 'naar links verschuiven', voegen ze tests vroegtijdig toe aan hun ontwikkelingsprocessen. In plaats van meerdere wijzigingen naar een afzonderlijke test of QA-team te sturen, worden tijdens het coderingsproces verschillende tests uitgevoerd, zodat ontwikkelaars bugs kunnen fixen of de kwaliteit van code kunnen verbeteren terwijl ze aan het relevante gedeelte van de codebase werken. De procedure voor continue integratie en continue levering (CI/CD) en implementatie benadrukt de mogelijkheid om naar links te verschuiven. Meer informatie over CI/CD.

​​​​​​​Bouwen met de juiste tools

Een DevOps-toolchain vereist de juiste tools voor elke fase van de DevOps-levenscyclus, met belangrijke mogelijkheden om de softwarekwaliteit en snelheid van levering te verbeteren. Meer informatie over het kiezen van DevOps-tools en beoordelingsfuncties voor elke fase van de DevOps-levenscyclus.

​​​​​​​Automatiseren

Met continue integratie en levering kunnen ontwikkelaars code regelmatig samenvoegen in de hoofdrepository. In plaats van handmatig code te controleren, automatiseert CI/CD dit proces, van batching in een gespecificeerd venster tot frequente commits. Naast CI/CD is automatisch testen essentieel voor succesvolle DevOps-werkwijzen. Automatische tests kunnen bestaan uit end-to-end tests, afdelingstests, integratietests en prestatietests. Meer informatie over automation integreren in je softwareontwikkelingsprocessen. Meer informatie over automation.

​​​​​​​De DevOps pipeline en toepassingen monitoren

Het is belangrijk om de DevOps pipeline te monitoren, zodat een beschadigde build of mislukte test geen onnodige vertragingen veroorzaakt. Automation versnelt ontwikkelingen enorm, maar als een geautomatiseerd proces een storing heeft en niemand hiervan op de hoogte is, kun je het werk beter handmatig doen. In dezelfde geest is het belangrijk om productietoepassingen te monitoren om storingen of prestatieproblemen te identificeren, voordat je klanten je hierop wijzen.

​​​​​​​Waarneembaarheid

Nu de industrie is overgestapt van monolithische, on-premise systemen en toepassingen naar cloud-native, microservice-gebaseerde toepassingen, is monitoring nu aanzienlijk complexer. Hierdoor is er steeds meer belangstelling voor waarneembaarheid. Er wordt vaak gezegd dat de drie pijlers van waarneembaarheid logs, traces en statistieken zijn. De meeste systeemcomponenten en toepassingen genereren logs die bestaan uit tijdreeksgegevens over de werking van het systeem of de toepassing. Traces volgen de stroom van logica binnen de toepassing. Statistieken zijn onder meer het reserveren of gebruiken van CPU/RAM, schijfruimte, netwerkconnectiviteit en meer. Waarneembaarheid betekent simpelweg dat we alle drie deze informatiebronnen samen gebruiken om ontdekkingen en voorspellingen te doen over het functioneren van een complex systeem, wat anders erg lastig zou zijn. Meer informatie over waarneembaarheid.

​​​​​​​Continue feedback verzamelen

Continue feedback zorgt ervoor dat teamleden alle informatie hebben die nodig is om hun werk tijdig uit te voeren. Vanuit het ontwikkelingsperspectief houdt dit in dat het team onmiddellijk wordt gewaarschuwd voor storingen in de pipeline. Het betekent ook dat er zo snel mogelijk duidelijke, grondige code-testresultaten beschikbaar worden gesteld aan de ontwikkelaars. Vanuit het oogpunt van productmanagement wordt het team op de hoogte gebracht van productiefouten of prestatiegebreken, of gerapporteerde bugs. In het verleden was er een wijdverbreide overtuiging dat een ontwikkelteam alleen maar kon optimaliseren voor snelheid of kwaliteit. Continue feedback is een van de elementen van DevOps die het mogelijk maakt om beide te hebben.

​​​​​​​De cultuur veranderen

DevOps vereist samenwerking, transparantie, vertrouwen en empathie. Als je organisatie een van de weinige is waar dit al aan de orde is, zou het voor je teams vrij eenvoudig moeten zijn om DevOps-werkwijzen toe te passen. Zo niet, dan zijn er redelijk wat inspanningen vereist om deze kwaliteiten te ontwikkelen. De meest voorkomende organisatiestructuren zijn geïsoleerd, wat betekent dat verschillende teams afzonderlijke gebieden van eigendom en verantwoordelijkheid hebben en dat er minimale communicatie of samenwerking tussen teams is. Om DevOps te laten slagen, moeten deze barrières worden weggenomen door de 'you build it, you run it' procedure in te voeren. Dit betekent niet dat er geen mensen of teams zijn die gespecialiseerd zijn, alleen dat de communicatielijnen en samenwerking tussen teams open zijn en gebruikt worden. Meer informatie over het opbouwen van je teamcultuur.

Het aanscherpen van je DevOps-werkwijzen is een continu proces. Concentreer je op de mensen en processen terwijl je je DevOps-transformatie start en gebruik geavanceerde tools, integratie en functionaliteit van functies als je een volwassen team wordt.

Tom Hall
Tom Hall

Tom Hall is een DevOps-voorstander en -uitvoerder, leest alles wat los en vast zit en speelt piano.
Hij heeft in de afgelopen 20 jaar certificeringen behaald voor Novell, EMC, VMware en AWS. Hij was onderdeel van de organisatie van DevOpsDays in Atlanta in 2016 en daarna in Austin, TX.


Deel dit artikel
Volgend onderwerp

Aanbevolen artikelen

Bookmark deze resources voor meer informatie over soorten DevOps-teams of voor voortdurende updates over DevOps bij Atlassian.

Toelichting DevOps

DevOps-community

Toelichting DevOps

Simulatieworkshop

Afbeelding van kaart

Gratis aan de slag

Meld je aan voor onze DevOps-nieuwsbrief

Thank you for signing up