Wat is DevOps?

Voltooid

DevOps is de samenvoeging van mensen, processen en producten om continue levering van waarde aan onze klanten mogelijk te maken. Wat betekent dat echter precies? Laten we ons bij het team voegen als Mara uitlegt wat DevOps wel en niet is en wat goed presterende teams succesvol maakt.

Mara heeft een korte vergadering belegd met haar teamleden. Iedereen is opgekomen, maar niemand wil er zijn. Ze heeft een doos met donuts op tafel gezet.

Mara: Hallo, bedankt voor de komst. Ik wil het nog even hebben over onze waardestroomanalyse en hoe we onze processen efficiënter kunnen maken.

Mara's waardestroomkaart bevindt zich nog steeds op het whiteboard van hun vorige vergadering:

Screenshot of a whiteboard showing the value stream map.

Mara: Onze waardestroomkaart laat zien waar we de efficiëntie verliezen bij het leveren van waarde aan onze eindgebruikers. Net als iedereen kunnen we het verbeteren. En we kunnen bepalen welke gebieden het eerst moeten worden aangepakt.

Andy: Dit laat ons zien waar we problemen hebben, maar niet wat we eraan moeten doen.

Mara: Juist, het is een oefening die ons in de juiste richting helpt te wijzen. Wat te doen met onze problemen, denk ik dat DevOps ons zal helpen. Bij mijn vorige bedrijf ging onze implementatiesnelheid erdoor omhoog, werd onze doorlooptijd flink korter en waren er minder incidenten bij bewerkingen. Het duurde even om daar te komen, maar het was de moeite waard. DevOps is geen snelle oplossing.

Tim: Ik ken iemand die net een baan als DevOps-engineer heeft gekregen. Volgens mij is dat meer iets voor ontwikkelaars. Iemand zoals jij dus, Andy.

Mara: DevOps is geen functie.

Amita: Is er een softwareprogramma dat ons kan helpen, of een sjabloon? Misschien is er een DevOps-spreadsheet.

Mara: DevOps is geen software.

Andy: Het is meer een methodologie.

Mara: Niet echt.

Andy, Amita, Tim: Dus wat is het?!

Mara: Dit is de definitie die ik graag wil gebruiken:

DevOps is de combinatie van mensen, processen en producten om continu waarde te kunnen bieden aan onze eindgebruikers.

In feite heeft Abel Wang, een Cloud Advocate bij Microsoft, een geweldige set video's met snelle antwoorden op enkele van onze grote vragen. Laten we eens kijken hoe Abel DevOps definieert:

Vraag het aan Abel

Ons doel is om onze klanten goede games te bieden. Dat doen we door samen te werken met een gedeelde set procedures en hulpprogramma's.

Amita: Wat betekent dat? Welke gedeelde procedures? Welke gedeelde hulpprogramma's?

Mara: Dit bedoel ik met praktijken:

  • Agile planning: Samen maken we een achterstand van werk die iedereen in het team en in het management kan zien. We rangschikken de items op basis van prioriteit zodat we weten waaraan we het eerst moeten werken. De achterstand kan bestaan uit gebruikersverhalen, fouten en andere informatie die ons helpt.
  • Continue integratie (CI):We automatiseren hoe we onze code bouwen en testen. Die procedure wordt steeds uitgevoerd wanneer een teamlid wijzigingen doorvoert in versiebeheer.
  • Continue levering (CD): CD is hoe we een build testen, configureren en implementeren vanuit een build naar een QA- of productieomgeving.
  • Bewaking: We gebruiken telemetrie om informatie op te halen over de prestatie- en gebruikspatronen van een toepassing. Met die informatie kunnen we het de volgende keren beter doen.

Amita: Ik weet het niet over geautomatiseerd testen. Mijn tests zijn handmatig en ik doe ze nadat Andy de code aan mij heeft opgegeven. Ik heb geen tijd om mijn hele werkwijze te veranderen.

Tim: Er is geen manier waarop ik jullie in productie laat implementeren.

Andy: Dit zal het management bang maken. Ze denken nooit verder dan de volgende release en ze willen het altijd gisteren.

Mara: Ik weet wat je bedoelt met management. Daarom heb ik deze hand-outs samengesteld over wat goed presterende teams succesvol maakt.

Wat maakt goed presterende teams succesvol?

Dit is de hand-out die Mara heeft gemaakt. De informatie is gebaseerd op DevOps-onderzoeksrapporten en enquêtes onder technische professionals van overal ter wereld.

DevOps helpt bedrijven te experimenteren met manieren om de acceptatie en tevredenheid van klanten te vergroten. Het kan leiden tot betere prestaties van de organisatie en vaak tot een hoger winstgevendheids- en marktaandeel.

Er worden metrische gegevens gebruikt om vier categorieën te maken waarmee elite performers met lage prestaties kunnen worden vergeleken.

Elite performers:

  • Vaker implementeren

    Sommige teams implementeren zelfs tientallen keren per dag.

    Procedures zoals bewaking, doorlopend testen, databasewijzigingsbeheer en het integreren van beveiliging eerder in het softwareontwikkelingsproces helpen elite performers vaker te implementeren, en met meer voorspelbaarheid en beveiliging.

  • De doorlooptijd van doorvoer tot implementatie beperken

    De doorlooptijd is de tijd die het kost voordat een functie bij de klant terechtkomt. Door te werken met kleinere batches, handmatige processen te automatiseren en vaker te implementeren kunnen goed presterende teams in uren of dagen realiseren wat ooit weken of zelfs maanden duurde.

  • Het foutpercentage van wijziging beperken

    Een nieuwe functie die in productie mislukt of waardoor andere functies worden verbroken, kan een verloren kans tussen u en uw gebruikers ontstaan. Naarmate goed presterende teams volwassen worden, verminderen ze hun wijzigingsfoutpercentage in de loop van de tijd.

  • Sneller herstellen van incidenten

    Als er incidenten plaatsvinden, kunnen goed presterende teams sneller zorgen voor herstel. Door te handelen op metrische gegevens kunnen elite performers sneller herstellen terwijl ze ook vaker worden geïmplementeerd.

De implementatiewijze van cloudinfrastructuur is ook van belang. De cloud verbetert de prestaties van softwarelevering en teams die essentiële cloudkenmerken aannemen, worden waarschijnlijk elite performers.

Uitbesteding kan geld besparen en een flexibele arbeidspool bieden, maar het moet op de juiste gebieden worden gebruikt. Slecht presterende teams besteden meer kans om hele functies (zoals testen en bewerkingen) uit te besteden dan hun krachtige tegenhangers.

De onderste regel

DevOps is een belangrijke reden waarom veel elite performers waarde kunnen leveren aan klanten in de vorm van nieuwe functies en verbeteringen, sneller dan hun concurrenten. In deze korte video legt Abel uit waarom u meer moet weten over DevOps:

Vraag het aan Abel

Wat is DevOps niet?

Wanneer u overweegt wat DevOps is, is het ook belangrijk om ervoor te zorgen dat we weten wat het niet is. DevOps is niet:

  • Een methodologie.
  • Een specifiek stukje software.
  • Een snelle oplossing voor de uitdagingen van een organisatie.
  • Alleen een team of functie (hoewel deze titels redelijk gebruikelijk zijn in de branche).