De automatiserings-straat

Q&A met Maarten Veerman: zo werkt continuous automation

Wat is een automatiseringsstraat? En hoe kwam de Continuous Automation werkgroep tot stand? Maarten Veerman legt het ons uit.

Maarten Veerman Productowner Continuous Automation en Architect onderwijs & onderzoek ICT Services

Wat is een automatiseringsstraat?

''Een automatiseringsstraat is een suite van geautomatiseerde tools, die testen of een product gereed is om in productie te gaan. Het kan daarbij gaan om een nieuw systeem dat je wilt implementeren. Maar het kan ook gaan om een product dat al in productie is, zoals Hippo, waar je een verbetering in aan wilt brengen. Je moet de automatiseringsstraat zien als een pijplijn. Deze pijplijn bevat allemaal gateways, oftewel beslismomenten waarop bepaald wordt of een product wel of niet door mag naar de volgende stap. Een gateway kan het testen van de veiligheid zijn. Voldoet het product aan alle beveiligingseisen? Dat wordt in de automatiseringsstraat automatisch getest. Zo niet, dan kan het product niet in productie worden genomen. Het moet dan eerst terug naar de tekentafel om de beveiliging te verbeteren. Vervolgens gaat het product opnieuw door de automatiseringsstraat om getest te worden. Doorloopt het product alle gateways succesvol? Dan is het product klaar om in productie genomen te worden.''

Hoe draagt een automatiseringsstraat bij aan een wendbaar ICT Services?

‘’Voordat de automatiseringsstraat werd geïntroduceerd, duurde het minimaal 8 weken vanaf de start van ontwikkeling van een product tot het daadwerkelijk in productie nemen ervan. Neem bijvoorbeeld het Hippo CMS van de UvA. Eerst werd er in 3 wekelijkse cycli ontwikkeld. Dat ging niet na 3 weken in productie, maar werd nog eens 3 weken opgespaard om vervolgens in een periode van minimaal 2 weken getest te worden. Pas daarna werd er een productieslag gemaakt. Met een automatiseringsstraat kun je vanaf het moment dat een ontwikkelaar de code gereed heeft, al starten met het productieproces van dat stukje code. Dus in plaats van een testperiode in te plannen waarin alle code van de ontwikkelaars wordt opgespaard en tegelijkertijd – vaak nog handmatig – getest wordt, kun je geautomatiseerd en kort-cyclisch gaan testen. Hiermee maak je een enorme efficiencyslag. In plaats van een ontwikkeltijd en een inproductiename van 8 weken, ga je naar een ontwikkeltijd plus inproductiename van hooguit 4 dagen. Heeft de gebruiker een functionele wens? Dan kan de ontwikkelaar daar direct mee aan de slag zonder dat de gebruiker hier maanden op moet wachten. Dus mede dankzij de automatiseringsstraat word je als ICT Services wendbaarder, doordat je veel sneller in kunt spelen op de behoeftes van de gebruiker.''

''Hiermee maak je een enorme efficiencyslag. In plaats van een ontwikkeltijd en een inproductiename van 8 weken, ga je naar een ontwikkeltijd plus inproductiename van hooguit 4 dagen.''

Hoe kwam de Continuous Automation werkgroep tot stand?

‘’We zagen al lang aankomen dat automatiseren noodzakelijk is. We maken bij ICT Services fantastische dingen en we doen alles met best effort, maar we doen niet alles even slim. Om ons heen zagen we allerlei mogelijkheden om ons werk kwalitatief beter en efficiënter te maken, maar daar maakten we geen gebruik van. We hadden in het verleden wel wat losse initiatieven opgestart, maar daar zat geen drive achter om die aan elkaar te verbinden. Toen zeiden wij dat moet veranderen, want we komen nu op een kritiek punt waarbij we, als we doorgaan zoals we gewend zijn, tegen allerlei incidenten aan gaan lopen. Dan is het dweilen met de kraan open, dan hebben we iedere week een major security incident en hebben we niet de mensen en menskracht voorradig om daar nog wat aan te gaan doen. Niet omdat we de juiste kennis missen, maar omdat we de kennis niet uit het systeem krijgen. Een tweede punt was dat we straks gaan werken in de cloud. Daarvoor moet je wel automatiseren: nieuwe technieken vereisen invoering van automatisering. Als we dat nu niet op orde hebben, hebben we straks een groot probleem. Omdat de noodzaak zo groot was, hebben we aan de bel getrokken en een memo geschreven met als advies het opzetten van een automatiseringsstraat. Vervolgens hebben we meerdere keren met het management om tafel gezeten en hen weten te overtuigen dat het voor de nabije toekomst echt heel belangrijk is om automatisering in te voeren. Zo is de oprichting van de werkgroep tot stand gekomen.’’

Wat is jullie rol als werkgroep ten opzichte van de verschillende productteams?

‘’We zijn echt een supportteam voor de productteams. Als productteams willen aansluiten op de automatiseringsstraat, dan moeten de productteams zelf medewerkers vrij maken om verbeteringen door te voeren. Wij hebben uitsluitend een adviserende rol en brengen kennis over hoe ze dat moeten doen. Ons motto is ‘kennisoverdracht en samenwerking’. We merken dat het soms heel lastig is voor productteams om goed op een rijtje te krijgen wat nu echt de problemen zijn rondom een product. Dus wat we momenteel onderzoeken, is of we bepaalde kennis kunnen verhogen. Dat doen we onder andere door het geven van ‘technical debt’ workshops. Bij deze workshops bekijken we de status van een product, en dan met name de uitschieters waar nog extra inspanning nodig is, bijvoorbeeld risico’s op het gebied van veiligheid. Door de technical debt van een product te begrijpen, leer je herkennen of er op een bepaald vlak extra effort in het product gestoken moet worden, zoals de beveiliging. Het mooie is: wij geven eenmalig zo’n workshop en daarna kunnen de medewerkers het zelf.’’

‘’We zijn echt een supportteam voor de productteams. Ons motto is kennisoverdracht en samenwerking.’’