28
mrt

OVERSTAP NAAR DE CLOUD?

Bedrijven kunnen anno 2017 niet meer om de cloud heen. Er zijn altijd uitzonderingen, maar in het algemeen heeft vrijwel iedere organisatie de cloud op een of andere manier in de toekomstplannen opgenomen. De vraag is hoe je een transitie naar de cloud zo succesvol mogelijk maakt. Het antwoord: door het anders te doen dan je vroeger deed.

Bij de transitie moet je rekening houden met twee richtingen. Ten eerste dien je de noodzakelijke organisatorische veranderingen helder in beeld te brengen. Ten tweede moet je de architectuur van de applicaties die je wilt verplaatsen veranderen om ze zo efficiënt mogelijk en tegen lage kosten te laten draaien in een cloudomgeving.
De cloud biedt een zelfbedieningsmodel voor de inrichting van IT-omgevingen. Denk daarbij aan zaken als server-hardware, netwerken, softwareservices zoals databases en storage, die voorheen via toegewijde IT-operationsafdelingen en via vaak langdurige procedures moest worden aangevraagd. Deze verandering heeft een aanzienlijke impact op de manier waarop systemen worden gebouwd hun dagelijks beheer.


De cloud maakt het mogelijk om sneller te gaan leveren en de IT-omgeving volledig te automatiseren. Hierbij zie je de trend die bekend staat als continuous delivery en DevOps. Maar wat houdt deze trend nu echt in en wat zijn daarvan de gevolgen voor toekomstige IT-organisaties?

Nieuwe concepten

Bij veel organisaties zie je een duidelijke trend in de adoptie van het jaren geleden geïntroduceerde concept van continuous delivery: het volledig automatisch in productie brengen van je software op een betrouwbare en herhaalbare manier. In dit proces zoek je steeds naar de volgende versnelling die je kunt realiseren. Dit is het proces van continuous improvement. Eenmaal gestart met optimaliseren, kwamen veel organisaties erachter dat niet de tools, maar de organisatie zelf de bottleneck is in het snel leveren van functionaliteit naar productie. De basis van het probleem zit hem daarbij in het feit dat organisaties zijn georganiseerd rondom silo’s die individueel worden gestuurd om optimaal te functioneren. Daarbij wordt echter bijna nooit gekeken naar de end-to-end experience voor eindgebruikers en klanten.
De omslag die moet worden gemaakt is die van geoptimaliseerde silo’s naar een high-performance organization (HPO). In tegenstelling tot het groeperen in silo’s die streven naar operational excellence, organiseren HPO’s teams dusdanig dat ze volledig verantwoordelijk zijn voor de volledige business-capability. Doel is dat een team deze capability zo snel en kostenefficiënt mogelijk kan leveren. Dit betekent: geen centrale autoriteit die de te gebruiken technologieën of clouddiensten dicteert. Elk team is autonoom en bevoegd tot het maken van eigen beslissingen ten behoeve van het zo efficiënt mogelijk runnen van de eigen capability tegen hoge tevredenheid van de klant. De gevormde teams hebben de businessstakeholders, ontwikkelaars en beheerders bijeengebracht en zijn verantwoordelijk voor het runnen van de gehele business-capability. Dit noemen we ook wel BizDevOps of product-thinking.

Drie zaken

Er zijn drie belangrijke zaken waar je aan moet denken bij het transformeren van de organisatie naar een HPO: systems-thinking, feedback-loops en continuous-learning:

  1. Systems-thinking laat je kijken naar de organisatie als geheel. Veel organisaties zijn verdeeld in groepen mensen die hetzelfde werk doen. Dit is vaak het resultaat van het optimaliseren voor operational-excellence per afdeling. Er zijn hiervoor zelfs geformaliseerde processen en certificeringen; IT-afdelingen kunnen bijvoorbeeld ITIL-, ITSM- of ISO-gecertificeerd zijn. Maar wat levert het op als het resultaat van de communicatie tussen afdelingen overhead en bureaucratie is? Deze organisaties dienen grotendeels het proces in plaats van het einddoel; snelle marktacceptatie en een goede klantperceptie. Systeemdenken legt de nadruk op end-to-end customer-journey’s en stelt je in de gelegenheid je processen en teamstructuren daarvoor te optimaliseren.
  2. Met feedback-loops stop je feedback uit het proces zo snel mogelijk weer in het proces met als doel om te verbeteren. Terugkoppeling zorgt ervoor dat je inzicht krijgt in wat je aan het doen bent en hoe goed je het doet. Feedback-loops ontdekken tevens vroeg in het proces gebreken en inefficiënties in het systeem. Dit helpt enorm in het tijdig verhelpen van het probleem ver voor het productiestadium.
  3. Continuous-learning gaat over het creëren van een cultuur waarin continu experimenteren, risico’s nemen en leren van fouten worden omarmd. Dit ondersteunt het begrip dat herhaling en oefening de voorbode voor meesterschap zijn. In de meeste organisaties worden mensen gemotiveerd om risicomijdend te zijn, dus gaan ze zich daarnaar gedragen. Hiermee vertragen ze innovatie en snelheid. In plaats daarvan zouden we mensen moeten aanmoedigen om te experimenteren in een gecontroleerde omgeving waarin je experimenten opzet om te leren en om korte iteraties te doen waarin je snel faalt als het moet, en inzichten krijgt die je helpen in de volgende iteratie. Net zolang tot het goed is.

Versneller

De cloud is een versneller in het realiseren van continuous-delivery en DevOps, en is daarmee een enabler van de HPO. Het concept van systems-thinking wordt ondersteund met de beschikbaarheid van zelfbediening voor compute resources die voorheen geleverd werden door een IT/OPS-organisatie. Het resultaat: geen lange wachttijden meer voor het behandelen van tickets, maar zelf de servers via een portaal inregelen en volledig geautomatiseerd de software naar productie brengen.
Als het aankomt op feedback-loops, voorzien veel cloudproviders in oplossingen voor telemetrie in applicaties en daarmee het monitoren ervan. De delivery-pipelines laten vooruitgang van functionaliteiten zien, van ontwikkel tot test en productie, en geven inzicht in productkwaliteit, schaalbaarheid en gebruik vanaf de start.
Het uitvoeren van experimenten en het verkrijgen van data over hoe het product functioneert en gebruikt wordt, is standaard in de cloud. Er zijn veel inzichten die helpen de customer-journey’s te optimaliseren en de beste gebruikerservaring te realiseren.

Microservices

De afgelopen jaren is er een belangrijk inzicht ontstaan wat betreft de organisatie-inrichting en architectuur. Als het design van je organisatie niet in overeenstemming is met je systeemarchitectuur, dan loop je tegen constante knelpunten aan tijdens de ontwikkeling en implementatie van deze systemen. Een van de nieuwe en opkomende systeemarchitecturen is de microservices-architectuur (MSA).
In een MSA bouw je diensten die betrekking hebben op specifieke autonome business-capabilities. Een zelfstandige business-capability wordt volledig verwerkt door één service. Er zijn geen afhankelijkheden met andere services om de dienst te verlenen, anders zou het niet autonoom zijn. Er is een team verantwoordelijk voor het ontwerpen, bouwen en het beheren van de service. Zij kunnen nieuwe versies van de service uitbrengen zonder enige coördinatie met andere teams. MSA omarmt het concept van fouttolerantie en kan gemakkelijk omgaan met uitval van andere, omliggende diensten. Dit resulteert in een perfect fit voor continuous-delivery, aangezien de uitrol op productie geen ander systeem in de weg zit. Alle services zijn immers autonoom en kunnen zelfstandig doorgaan. Een microservices-architectuur is congruent aan een organisatie die (Biz)DevOps of product-thinking implementeert.

Herdefiniëren

Als de cloud een gegeven is, organisaties zich verplaatsen naar DevOps en iedereen ernaar streeft om dingen beter, goedkoper en sneller te doen, dan is er maar één manier om relevant te blijven in deze branche. Je moet je uitgangspunten herdefiniëren.
Het is nu tijd om te resetten en te gaan denken in termen als cloud, DevOps-microservices, event driven. ‘Rethink what you have been doing’ in plaats van denken in traditionele concepten als private datacentre, organizational silo’s, layered architecture en ‘doing what you know’. Pas je aan de verandering aan of raak overbodig voordat je er erg in hebt.

Door Marcel de Vries
Marcel de Vries is oprichter en CTO van Xpirit, een zelfstandig onderdeel van de Xebia Group.

Leave a Reply