Actualiteit

Continuous Delivery

Continuous Delivery is een onderwerp met veel aandacht. Een hype, Agile in een nieuw jasje, wat hebben we er aan? Nog veel meer vragen kwamen er op het whiteboard tijdens de kennisdeling avond over dit onderwerp. Vragen waar antwoorden op zijn verkregen maar die ook weer nieuwe vragen opleverden. Kortom, een onderwerp waar nog veel over te verkennen valt, dat is wel de uitkomst van de kennisavond.

De afgelopen maanden is er veel informatie verzameld over Continuous Delivery door enkele collega’s die graag hun ervaringen wilden delen met andere collega’s van Qquest. De informatie is verzameld door een zoektocht op het wereldwijde web, door gesprekken te voeren met personen die ervaring hebben met Continuous Delivery, door het lezen van enkele boeken en door er zelf actief mee bezig te zijn.

Bij veel organisaties is het installeren van bijgewerkte software of een nieuwe release van een product een activiteit die veel tijd kost, voorafgaat met zorgvuldige voorbereiding en veel onnodige stress met zich mee brengt. Als resultaat dat er vaak nog fouten aan het licht komen zodra de software in productie is en wordt gebruikt door klanten.

Continuous Delivery is een methodiek om ideeën en wijzigingen zo snel mogelijk en kwalitatief goed naar productie te krijgen. Verwachtingen/uitkomsten kunnen snel gevalideerd worden bij de business waardoor op een kort-cyclische wijze een product vorm gegeven kan worden. In onderstaand overzicht hebben we weergegeven waar Continuous Delivery zich bevindt ten opzichte van andere methodieken die vaak in één adem genoemd worden met Continuous Delivery.

Continuous-delivery

Het wordt steeds meer gebruikt bij software-ontwikkeling vanwege de behoefte bij de business aan:

  • Ontwikkel het juiste product (frequente feedback)
  • Eerder voordelen (sneller kleine stukjes opleveren)
  • Mogelijkheid om snel te reageren op veranderingen (grote releases zijn al achterhaald voordat ze worden opgeleverd)
  • Innovatie (klanten en ontwikkelaars aan elkaar koppelen stimuleert innovatie)
  • Betrouwbaarheid & stabiliteit (kleinere opleveringen, kleinere risico’s)
  • Efficiënter / tijd besparen (opleveringen automatiseren levert tijd op)
  • Strategische impact (de zes voorgaande punten leiden tot strategisch voordeel)

Het invoeren van Continuous Delivery vraagt inspanning op technisch en organisatorisch vlak. De organisatie moet in staat zijn om op een dusdanige manier te werken dat de kort-cyclische en continue werkwijze bijgehouden kan worden. Vandaar dat Continuous Delivery vaak genoemd wordt in relatie tot Agile teams, invoering van Agile en opzetten van een DevOps werkwijze.

Technisch gezien dient er een softwareontwikkelproces ondersteund te worden die herhaalbaar en betrouwbaar uit is te voeren, automatisch natuurlijk. Zodat elke wijziging zonder veel moeite en impact op de bestaande software doorgevoerd kan worden. Dit wordt de continuous delivery pipeline genoemd. Een continuous delivery pipeline is een geautomatiseerde implementatie van het proces van build, deploy, test, en release van een applicatie. Deze pipeline wordt samengesteld uit verschillende tools. De combinatie van die tools noemen we de pipeline, die zelf ook weer georganiseerd en beheerd wordt in een tool.

Er is veel informatie te vinden op het internet. Ook enkele boeken zijn het aanraden waard om te lezen. De volgende literatuur hebben wij geraadpleegd:

  • Continuous Delivery, Reliable Software Releases Through Build, Test, and Deployment Automation – Auteur, Jez Humble
  • The Phoenix Project, A Novel About IT, DevOps, and Helping Your Business Win – Auteur, Gene Kim
  • Continuous Delivery Pipeline – Where Does It Choke? – Auteur, Juni Mukherjee

Meer weten over cloud & CI/CD?

Lees alles over waar wij goed in zijn met Cloud & CI/CD.

Lees meer

Meer weten over cloud & CI/CD?

Lees alles over waar wij goed in zijn met Cloud & CI/CD.

Lees meer

Relevante ontwikkelingen