Continuous Delivery is volgende stap na Scrum

Erik Hamoen

Hackathons en Design Sprints brengen je naast Amazon en Netflix op de innovatieladder.

Softwaredevelopment moet steeds sneller en goedkoper. Bedrijven als Amazon en Netflix realiseren dat met Continuous Delivery en het is dus hoog tijd om goed uit te leggen wat deze term precies inhoudt en waarom deze methode werkt.

Scrum wordt tegenwoordig al veelvuldig gebruikt als ontwikkelmethode. Dat is niet verwonderlijk, want Scrum versnelde het ontwikkelproces enorm ten opzichte van de aloude watervalmethode.

Van Waterval naar Scrum

Die oude methode werkte vooral bij heel duidelijk gedefinieerde projecten en systeemeisen. Stapsgewijs werken developers naar het einddoel. Een team legde de eisen vast, ging ontwikkelen en na uitgebreide tests kwam de software uiteindelijk op de markt. Maar na maanden of zelfs jaren van ontwikkeling, voldeed het eindproduct soms niet meer aan de wensen en eisen van de klant. En bijsturen was gedurende het project niet mogelijk.

Met Scrum is al na enkele weken resultaat zichtbaar. Dit komt doordat teams werken met korte sprints waarbij ze in kleine stappen naar het einddoel werken. Samen met de klant stellen en veranderen ze prioriteiten wanneer nodig. Bovendien is een goed uitgevoerd Scrumproject vaak stukken goedkoper dan een project dat vooraf volledig vastgelegd wordt.

Nog sneller met Continuous Delivery

Maar het kan nóg sneller, beter en voordeliger. De grote spelers op de markt passen inmiddels Continuous Delivery toe. Daarmee behouden zij de voorsprong op de rest. Deze aanpak maakt het mogelijk om op elk moment een softwarerelease te kunnen doen. Soms wel vaker dan eens op een dag. De zeer korte ontwikkelfases van vaak niet meer dan een paar uur, dragen bij aan het succes van grote bedrijven als Netflix en Booking.com. Wie net als deze grote spelers snel wil groeien en hogere omzetten wil behalen, zal deze werkwijze moeten omarmen.

De stap van waterval naar Scrum eiste al veel aanpassingsvermogen, maar Continuous Delivery vergt nog meer ingrijpende veranderingen in de manier van werken. Van begin tot eind zal het proces geautomatiseerd moeten worden. Test automation zal zijn intrede moeten doen in het ontwikkelproces, geautomatiseerde releases zijn een noodzaak en natuurlijk moet ook voortdurend het werk van de ontwikkelaars worden samengevoegd, de zogenoemde Continuous Integration. Deze verandering van aanpak lijkt zeer kostbaar. Maar uiteindelijk betaalt de korte time-to-market zich terug. Het voordeel is namelijk enorm.

Prototypen in productie

Hoewel Continuous Delivery geen ontwikkelmethode is, maar een set van bestaande methoden, is het een fundamenteel instrument om hoger te scoren op de innovatieladder. Deze set bestaat uit Hackathons, Design Sprints en prototypeontwikkeling. En die prototypen blijven niet, zoals gewoonlijk, alleen beschikbaar in een test- of ontwikkelomgeving, maar teams nemen ze een of meerdere keren per dag in productie. Met A/B-tests werken ze prototypen vervolgens in de live-omgeving uit, tot het moment dat ze het daadwerkelijk nabouwen in de definitieve techniek en opnemen in het hoofdsysteem.

Wie opziet tegen het in productie nemen van een prototype dat heel snel gebouwd is, moet zich bedenken dat de grote jongens dagelijks met deze 80-procentsversies werken. Daar dwingen de programmeurs zichzelf samen met de klant, die doorgaans ook in het ontwikkelteam zit, genoegen te nemen met minder dan perfect. Daarbij maken ze duidelijke keuzes en zo kunnen ze de laatste 20 procent achterwege laten.

Van Hackatons en Design Sprints naar Scrumteam

Het hele proces kan beginnen met een Hackathon. Tijdens zo'n event, dat meerdere dagen duurt, bedenken bedrijven een aantrekkelijk concept. Tijdens zo'n informele bijeenkomst komen opdrachtgevers in contact met leveranciers en medewerkers. De deelnemers vervullen allerlei verschillende functies. Onder meer managers, programmeurs en designers, bedenken, ontwerpen en ontwikkelen samen prototypen.

Ook Design Sprints zijn een middel in de praktijk van Continuous Delivery, waarmee het concept verder wordt uitgewerkt en verfijnt. Meestal duurt zoiets een werkweek. Verdere oplossingen worden ontworpen, prototypen worden gebouwd en nieuwe ideeën worden getest bij klanten. En wanneer een organisatie enthousiast is, zal zij besluiten om een Scrumteam op te zetten.

Het Scrumteam ontwikkelt in hoog tempo vervolgversies. Daarbij worden de wensen van zogenoemde early adopters ieder keer opgenomen in de nieuwe versies. Zodra deze early adopters het prototype naar tevredenheid gebruiken, kan het product opgenomen worden in het hoofdsysteem.

Sneller en beter

Met veelal bestaande methoden en beperkte investeringen bij aanvang van een project, is het met Coninuous Delivery mogelijk om snel tot kwalitatief betere softwareoplossingen te komen. Pas wanneer het concept levensvatbaar blijkt, zullen de investeringen omhoog gaan. Onnodige investeringen in minder goede concepten worden zo beperkt en mogelijk vermeden, omdat er snel gefaald wordt. Succesvolle ideeën komen boven drijven en dragen bij aan het succes. Gooi dus je werkwijze om en kom naast grote spelers als Amazon en Netflix op de innovatieladder.