Continue levering vergeleken met continue implementatie

Breng code van hoge kwaliteit sneller uit voor klanten, met deze twee automatiseringsmethoden.

Wat zijn continue levering en continue implementatie?

In combinatie met continue integratie zijn continue levering en continue implementatie werkwijzen waarmee fasen van de softwarelevering kunnen worden geautomatiseerd. Aan de hand van deze methoden kunnen ontwikkelteams hun klanten sneller nieuwe functies, verbeteringen en oplossingen bieden, met meer nauwkeurigheid en productiviteit.

Er zijn veel overeenkomsten tussen continue levering en continue implementatie. Als u wilt weten wat de verschillen tussen deze methoden zijn, en wilt ontdekken welke methode u wilt implementeren, moeten we identificeren welke fasen in de softwarelevering kunnen worden geautomatiseerd.

Het proces voor het leveren van software automatiseren

Er is vanuit consumenten steeds meer vraag naar personalisatie en beveiliging van producten. Ontwikkelteams kunnen een DevOps-cultuur toepassen om aan die vraag te voldoen en software sneller en betrouwbaarder te leveren.

In een DevOps-cultuur worden disciplines in silo's afgebroken en worden mensen, processen en technologie samengebracht om samenwerking en coördinatie te verbeteren. Als gevolg hiervan komen codewijzigingen zo snel mogelijk bij productie terecht, en kan de klant sneller gebruikmaken van de nieuwe waarde.

Door middel van ontwikkeling werken de IT-afdeling, hoogwaardige engineering en beveiligingsteams nauw samen met DevOps. Het softwareleveringsproces blijft echter net zo complex. De softwarelevering wordt door middel van DevOps in vier fasen onderverdeeld: planning, ontwikkeling, levering en implementatie en ten slotte het in gebruik nemen.

Softwarelevering in DevOps

Zonder automatisering moeten ontwikkelteams de software zelf handmatig bouwen, testen en implementeren. Dit omvat het volgende:

  • Code inchecken, testen en valideren.
  • Codewijzigingen samenvoegen in de hoofdvertakking.
  • Code voorbereiden om live te gaan.
  • Een artefact maken dat kan worden geïmplementeerd.
  • Code pushen naar productie.

Fasen die kunnen worden geautomatiseerd

Continue integratie, continue levering en continue implementatie zijn methoden waarmee bepaalde aspecten van de ontwikkelings- en leveringsfasen kunnen worden geautomatiseerd. En bij elke methode wordt de automatisering net een stap verder uitgebreid, te beginnen met continue integratie.

Het verschil tussen continue levering en continue implementatie

Continue integratie

Als we continue levering en continue implementatie willen beschrijven, moeten we eerst continue integratie bespreken. Bij continue integratie is de ontwikkelfase, oftewel het bouwen en testen van code, volledig geautomatiseerd. Telkens wanneer u code doorvoert, worden wijzigingen gevalideerd en samengevoegd in de hoofdvertakking en wordt de code in een artefact verpakt.

Onafgebroken levering

Met behulp van continue levering wordt de volgende fase geautomatiseerd: het leveren. Bij continue levering worden bouwartefacten, telkens wanneer deze ter beschikking komen, automatisch in de gewenste omgeving geplaatst en geïmplementeerd.

Continue integratie en continue levering (CI/CD)

Wanneer teams zowel continue integratie als continue levering (CI/CD) implementeren, worden de ontwikkelings- en leveringsfasen geautomatiseerd. Code is op elk gewenst moment beschikbaar voor productie. Teams hoeven alleen maar de transitie van ontwikkeling naar implementatie handmatig te activeren, zodat het geautomatiseerde bouwartefact ter beschikking komt voor automatische implementatie. Dit kan vaak al door alleen een knop in te drukken.

Continue implementatie

Met continue implementatie kunt u het volledige proces automatiseren. Dit begint bij het doorvoeren van de code en resulteert in de uiteindelijke productie. De trigger tussen de ontwikkelings- en leveringsfase is automatisch, dus codewijzigingen worden in realtime gepusht zodra deze zijn gevalideerd en goed uit alle testen komen. Dit betekent dat klanten meteen verbeteringen ontvangen zodra deze beschikbaar zijn.

Continue levering vergeleken met continue implementatie: welke moet u kiezen?

Hier vindt u alle hulpprogramma's die u kunt gebruiken, of u nu voor continue levering of continue ontwikkeling kiest.

Voordat u besluit welke van deze methoden u gaat implementeren, moet u bepalen of er in uw organisatie al een DevOps-cultuur bestaat die ondersteuning kan bieden. Omdat DevOps-teams ernaar streven het gehele softwareleveringsproces te automatiseren, is de volgende vraag niet: 'Welke methode is beter?', maar moet u zich afvragen: 'hebben een handmatige trigger nodig tussen continue integratie en continue levering?'.

Gebruik in uw zoektocht deze vragen als richtlijn:

  • Kun u de implementatie uitvoeren zonder goedkeuring van belanghebbenden?
  • Is complete automatisering mogelijk voor uw systeem- en poortvereisten?
  • Kunt u uw klanten telkens een klein beetje productiewijzigingen laten ervaren?
  • Reageert uw organisatie snel in het geval van fouten in productie?

Als u alles met Ja hebt beantwoord, is het wellicht handig om continue implementatie uit te voeren en de softwarelevering helemaal te automatiseren, van het doorvoeren van code tot productie.

Als u alles met Nee hebt beantwoord, is het wellicht handig om met CI/CD (continue integratie en continue levering) te beginnen. Hiermee automatiseert u het maken voor code die klaar is voor productie en die altijd maar één handmatige goedkeuring voor implementatie vergt. Na verloop van tijd kunt u meer inzetten op continue implementatie en volledige automatisering van uw softwareleveringsproces.

Welke methode u ook kiest: ze bieden beide een aantal algemene voordelen:

  • Wijzigingen worden automatisch gebouwd, gevalideerd en getest.
  • Code kan altijd direct worden geïmplementeerd, dus geen publicatiestress meer.
  • U krijgt sneller feedback op de releases van belanghebbenden en klanten.
  • Ontwikkelaars zijn productiever dankzij minder handmatige en administratieve taken.
  • Omdat de wijzigingen klein zijn en frequent worden uitgevoerd, zijn fouten zeldzaam en ontstaat zo min mogelijk instabiliteit.

Hulpprogramma's voor continue integratie, continue levering en continue implementatie

Voor het automatiseren van de softwarelevering vertrouwen DevOps-team op toolchains, een reeks met elkaar verbonden hulpprogramma's voor softwareontwikkeling. Welke hulpprogramma's u gebruikt, hangt af van de automatiseringsmethode die u kiest en welke fasen door die methode worden geautomatiseerd. Hier volgen enkele voorbeelden.

Aan de slag met DevOps in Azure

Ontdek de hulpprogramma's voor continue levering en continue ontwikkeling, plus hulpprogramma's om andere DevOps-werkwijzen in de cloud te faciliteren.