Door snel veranderende omgevingsfactoren zoals globalisering, nieuwe wet- en regelgeving en nieuwe toetreders in de markt moeten organisaties Agile (wendbaarder) worden. Hiervoor worden standaarden ingezet als Scrum, SAFe (Scaled Agile Framework) en LeSS (Large Scale Scrum). Om goed Agile te kunnen werken, moeten ook de processen voor development en operations aangepast worden. Maar hoe? DevOps biedt een uitkomst.
Agile wordt voornamelijk toegepast binnen informatie-intensieve organisaties, zoals banken,
verzekeraars en overheidsinstanties. Deze organisaties zijn afhankelijk van IT-voorzieningen
voor het aanbieden van producten en/of diensten. Informatieverwerking is in hoge mate te
automatiseren. Hierdoor is de manier waarop er geautomatiseerd wordt doorslaggevend voor de time-to-market en dienstverleningskwaliteit. Het is noodzakelijk dat de bedrijfsprocessen optimaal aansluiten op de manier van werken. Dit is de belangrijkste reden om Agile te werken.
DevOps richt zich op het samenvoegen van de verantwoordelijkheden voor de development- en beheerprocessen. Van oudsher liggen die bij op zichzelf staande afdelingen, die zich veelal fysiek op een andere locatie bevinden. Hierdoor ontbreekt directe afstemming en is de communicatie vaak formeel en minimaal. Indien een product of dienst aangepast moet worden, of niet goed werkt, moet er eerst worden afgestemd wie verantwoordelijk is of waar het ‘probleem’ ligt. De focus ligt hierdoor op het leveren van de best mogelijke dienstverlening voor de klanten en/of gebruikers.
Vanuit de DevOps-filosofie moeten de verantwoordelijkheden tussen de beheer- en ontwikkelteams worden herzien om de snelheid en servicegerichtheid te vergroten. Teams moeten autonoom kunnen werken en een end-to-end verantwoordelijkheid krijgen. DevOps vraagt hiermee een andere manier van werken van de IT-professional. Developers moeten kennis hebben van de beheeromgeving inclusief de gebruikte tooling. Omgekeerd moeten de beheerders kennis hebben van de development-omgeving en -tooling. Verder moet het team steeds beter samenwerken. Binnen de DevOps-filosofie is er daarom evenredig veel aandacht voor cultuur en samenwerking als voor techniek en tooling.
Belangrijk is het ook om een infrastructuur op te zetten waarbinnen de teams simultaan aan nieuwe functionaliteit kunnen werken, deze kunnen testen en altijd kunnen implementeren. Om dit proces zo effi ciënt mogelijk te maken en de foutgevoeligheid te verminderen dient er, waar mogelijk, geautomatiseerd te worden. Dit wordt continuous integration en delivery genoemd. DevOps biedt de structuur voor het continu verbeteren van een product of dienst en legt hiermee het fundament om organisaties Agile te laten werken.
Sjon Post
Programmamanager Computrain
Computrain werkt nauw samen met DASA (DevOps Agile Skills Association). DASA heeft als doel het wereldwijd definiëren en standaardiseren van competenties binnen een DevOps-team op zowel technisch als soft skills gebied. Dit met behulp van partners die voorloper zijn binnen het DevOps-werkveld.
1. Acteer altijd klantgericht
2. Zorg voor end-to-end verantwoordelijkheid binnen teams
3. Creëer cross-functionele, autonome teams
4. Zorg voor continue verbetering
5. Automatiseer waar mogelijk
Agile kenmerkt zich onder andere door:
• Waardecreatie: elke wijziging binnen een product of dienst moet van een bewezen toegevoegde waarde zijn.
• Kort cyclisch: een keer per maximaal 30 dagen wordt er een werkend deelresultaat opgeleverd.
• Feedback gedreven: de feedbackcyclus op een deelresultaat is zeer direct, ofwel vanuit de gebruikers zelf rechtstreeks, of door het geautomatiseerd monitoren van het gebruik van bijvoorbeeld een website.
• Teamgedreven: er wordt in kleine teams gewerkt aan een of meer functionaliteiten. Deze teams hebben een end-to-end verantwoordelijkheid.
Op basis van deze Agile-kenmerken heeft Computrain onderstaand Agile DevOps-curriculum samengesteld. Daarmee kunnen de belangrijkste kerncompetenties verworven worden.