Wat is DevOps?
Wat is DevOps?
DevOps is het principe, in softwareontwikkeling, waarbij de ontwikkelaars (Dev) en operations (Ops) samenwerken in het gehele ontwikkelproces en de volledige levenscyclus. Van ontwerp naar ontwikkeling tot productondersteuning. Om dit te bereiken, moet de traditionele scheiding tussen development en operations worden doorbroken. Dit omdat beide expertises cruciaal zijn voor het succesvol leveren en onderhouden van software die voldoet aan de functionele- en niet-functionele eisen.
Het onderstaande voorbeeld geeft een beter beeld over de verschillen tussen de traditionele aanpak (development en operations gescheiden) en een DevOps team.
Dev en Ops gescheiden
Het development team bouwt een stukje software, test het en geeft het door aan operations. Vanaf dit punt is operations verantwoordelijk voor de integratie, het onderhouden en het ondersteunen van de nieuwe software. Soms geven de developers een uitleg over het omgaan met mogelijke productie problemen. Maar in veel gevallen heeft operations een beperkte kennis over de productie-omgeving.
Beide afdelingen hebben weinig kennis over de werkwijze van de ander en hun benodigdheden. Daarom kan het moeilijk zijn voor Ops om de kern van het probleem te vinden bij eventuele issues. Het gevolg hiervan is meer downtime en een vertraging bij het ontwikkelen van nieuwe features.
DevOps team
Een echt DevOps team werkt onder het principe “You build it, you run it”. In andere woorden: het team dat een feature ontwikkelt, is ook het team dat verantwoordelijk is voor het uitvoeren en het ondersteunen ervan. Op deze manier is het makkelijk om een bug te vinden en te verhelpen.
“You build it, you run it“
– Werner Vogels CTO @Amazon –
De voordelen van DevOps
Voordat we ingaan op de grootste voordelen van DevOps, is het belangrijk om te benoemen dat DevOps niet gezien moet worden als een doel op zichzelf, maar als een middel om een bepaald doel te bereiken. Het kan je helpen om de time-to-market te verkorten of om de samenwerking tussen Dev en Ops te verbeteren door ze in één team te plaatsen.
Andere voordelen zijn:
- Krijg veranderingen sneller in productie en minimaliseer risico’s in softwarekwaliteit en compliance
- Eerdere detectie en snellere oplossing van problemen en daarmee een product van hogere kwaliteit
- Een continue stroom van software levering
- Minder afhankelijkheid door verspilling te elimineren (onnodige hand-overs)
- Meer tijd om te innoveren (in plaats van repareren en onderhouden)
Hoe start ik met DevOps?
Wanneer je start met DevOps, is het belangrijk dat je inzicht krijgt in jouw huidige development proces en dus de value chain. Zoals de hoofdpersoon in The Phoenix Project ontdekt, zijn er grofweg drie fasen om te kijken naar jouw value chain om deze te verbeteren.
Elke business unit, ieder team en iedere persoon speelt een rol in het leveren van “concept to cash”. Alle betrokkenen moeten de “flow” begrijpen van hoe hun werk waarde toevoegt aan het eindproduct. Value stream mapping is een uitstekende tool om je hierbij te helpen.
Vervolgens is het belangrijk dat het mogelijk is om de waarde van een product (of feature) te meten. Je moet niet zomaar aannemen dat er waarde wordt geleverd. Daarnaast moet je er ook voor zorgen dat de gemeten waarde ook wordt teruggekoppeld aan de belanghebbenden uit de waardeketen. Hierdoor blijft iedereen betrokken en engaged bij het proces.
Zodra het duidelijk is hoe het werk van een persoon, team of business unit invloed heeft op de uiteindelijke waarde, kan je beginnen met kortere iteraties met feedback loops en experimenten. Als je vaker kunt leveren, is het namelijk eenvoudiger voor alle betrokkenen om zich aan te passen op basis van de gemeten resultaten (van wat er is geproduceerd). Deze continue experimenten kunnen in eerste opzicht gevaarlijk lijken, maar het is van groot belang om bij te blijven met de concurrentie.
Onze DevOps diensten
Door middel van DevOps transformaties, trainingen en DevOps software teams, helpen wij organisaties om hun softwareontwikkeling radicaal te verbeteren. Daarnaast leiden we softwareorganisaties op om de volgende stap te nemen richting Continuous Delivery, DevOps en Digital Disruption om de competitie voor te blijven in deze snel veranderende markt. DevOn heeft drie expertise gebieden: Testautomatisering, Continuous Delivery en DevSecOps.
Daarnaast biedt DevOn ook zelfsturende AI Powered High-Performance Teams die iedere sprint hoge kwaliteit software leveren.