Het doorlopende leverings-/implementatiemodel

Voltooid

U hebt geleerd over de vele nadelen van de 'epische implementatie' als een model voor softwarelevering, maar weten wat niet goed werkt, is slechts de helft van de strijd. In deze les leert u meer over het alternatief voor die monolithische methode en hoe u hiermee uw doel van verbeterde betrouwbaarheid kunt verbeteren.

Wat is doorlopende levering?

Doorlopende levering is een methode waarmee u softwarewijzigingen beschikbaar kunt maken voor gebruik op een snellere, minder stressvolle, minder risicovolle en meer reproduceerbare manier. In plaats van elke software-implementatie of -update een epische gebeurtenis te maken, is het doel van een doorlopende levering om deze om te zetten in een snelle, routinematige, voorspelbare ervaring die op on-demand plaatsvindt.

  • Implementatiefrequentie: Met een model voor continue levering vinden implementaties vaak plaats. Dit kan vaak maandelijks, wekelijks, dagelijks, zelfs elk uur zijn. De sleutel is dat u kleinere, meer gerichte wijzigingen vaker implementeert.

  • Geïnitieerd door het doorvoeren van code: in plaats van ver van tevoren te worden gepland, vinden implementaties plaats terwijl code wordt doorgevoerd. Deze code kan software, infrastructuur of zelfs softwareconfiguraties zijn.

  • Geautomatiseerd testen: u kunt geïntegreerde geautomatiseerde tests gebruiken, niet alleen om de code te testen, maar ook om snel feedback te geven over de resultaten van deze tests. Dit is deze snelle feedback waarmee u snel mislukte tests kunt herhalen en herstellen.

    Zodra uw code is getest, kunt u de implementatie testen totdat deze eindigt in een reeks gefaseerde omgevingen, zoals testen, QA, enzovoort. Als u uw implementaties doorlopend via deze omgevingen uitvoert, wordt dit een geïntegreerd onderdeel van de implementatie-ervaring.

  • Historische records: U wilt niet alleen een historisch overzicht van implementatieactiviteiten, maar u wilt ook uw productieomgeving op elk gewenst moment kunnen afstemmen. U wilt weten welke implementatie uw huidige productieomgeving heeft gemaakt. Met deze kennis kunt u zaken traceren zoals configuraties, testresultaten en de code zelf helemaal terug naar de afzonderlijke pull-aanvraag die de implementatie heeft geactiveerd.

Implementatiedoelen

Nu u weet hoe doorlopende levering werkt, kunt u kijken welke doelen u kunt bereiken door gebruik te maken van DevOps-methoden zoals deze voor de implementatie van software-oplossingen.

Doel 1: Verminder de stress die gepaard gaat met het implementeren van services terwijl de betrouwbaarheid van deze services wordt verhoogd

Dit is een win-win; U verhoogt niet alleen de tevredenheid van uw werk door de stress bij software- en infrastructuurimplementaties te verminderen, u verhoogt ook zowel de tevredenheid van de job als de tevredenheid van eindgebruikers door uw systemen betrouwbaarder te maken. Gezien deze positieve impact op de klantervaring, is dit technisch gezien een win-win-win-win.

Doel 2: Verminder de tijd tussen wanneer u weet dat een wijziging vereist is en wanneer die wijziging wordt geïmplementeerd in productie

Stel dat u een codefout hebt geïdentificeerd die invloed heeft op de omzet. U weet precies wat het probleem is en hoe u de fix moet coderen. Hoe lang duurt het voordat u die code in productie hebt? Hoeveel tekenreeksen moet u ophalen? Hoe gaat u testen? Met de DevOps-methoden kunt u een code doorvoeren, gaan lunchen en een melding ontvangen dat het probleem is opgelost voordat u weer bij uw bureau bent.

Doel 3: De tijd verkorten tussen het hebben van een idee en het leveren van bruikbare software

Dit is vergelijkbaar met het vorige doel, maar in plaats van wijzigingen te implementeren, hebben we het over pure innovatie. Hoe lang duurt het voordat u aan de slag gaat met innovatie? Met dit implementatiemodel kunt u een nieuw concept integreren in een productiesysteem en het vertrouwen hebben dat de toegevoegde innovatie het huidige systeem op geen enkele manier belemmert. Met dit vertrouwen kunt u snel de nieuwe functie leveren.

Implementatieresultaten

De doelstellingen die in deze les worden besproken, zijn niet alleen theoretische aspiraties, ze zijn haalbaar. Hier volgen enkele statistieken uit het rapport uit 2019 over de versnellingsstatus van DevOps door DevOps Research and Assessment (DORA) en Google Cloud DevOps & SRE. Hierin hebben ze vastgesteld dat DevOps-bedrijven met hoge prestaties:

  • Het aantal implementaties is 208x.
  • Zijn 106x sneller van doorvoer naar implementatie.
  • Een foutpercentage van 7x lagere wijzigingen hebben.
  • Een 2604x snellere hersteltijd voor incidenten hebben.

Dit leidt allemaal tot een hogere omzet en sneller op de markt.

Deze getallen onderstrepen het belang van implementatieprocedures.

Kennis testen

1.

Het regelmatig implementeren van kleinere, gerichte wijzigingen is een kenmerk van het volgende?

2.

Wat is bewezen voor high-performance DevOps-bedrijven?

3.

Welke van deze opties is niet een doel dat door doorlopende levering kan worden bereikt?