Vad är DevOps?
Kontraktionen av "Dev" och "Ops" syftar på att ersätta siloed Development and Operations. Tanken är att skapa tvärvetenskapliga team som nu arbetar tillsammans med delade och effektiva metoder och verktyg. Viktiga DevOps-metoder omfattar smidig planering, kontinuerlig integrering, kontinuerlig leverans och övervakning av program. DevOps är en ständig resa.
Förstå din cykeltid
Låt oss börja med ett grundläggande antagande om programvaruutveckling. Vi beskriver det med loopen OODA (Observe, Orient, Decide, Act). Ursprungligen utformad för att hålla stridspiloter från att skjutas upp från himlen, är OODA-slingan ett utmärkt sätt att tänka på att ligga före dina konkurrenter. Du börjar med att observera företag, marknad, behov, aktuellt användarbeteende och tillgängliga telemetridata. Sedan orienterar du dig med uppräkning av alternativ för vad du kan leverera, kanske med experiment. Därefter bestämmer du vad du ska fortsätta med, och du agerar genom att leverera fungerande programvara till verkliga användare. Du kan se att allt inträffar under en viss cykeltid.
Bli datainformerad
Vi rekommenderar att du använder data för att informera om vad du ska göra i nästa cykel. Många erfarenhetsrapporter säger oss att ungefär en tredjedel av distributionerna kommer att ha negativa affärsresultat. Ungefär en tredjedel har positiva resultat och en tredjedel gör ingen skillnad. Misslyckas snabbt på effekter som inte främjar verksamheten och dubblar ner på resultat som stöder verksamheten. Ibland kallas metoden pivot eller framhärdning.
Sträva efter validerad inlärning
Hur snabbt du kan misslyckas snabbt eller dubbla ned bestäms av din cykeltid. Dessutom, i hur lång tid den loopen tar, eller i magert termer. Din cykeltid avgör hur snabbt du kan samla in feedback för att avgöra vad som händer i nästa loop. Den feedback som du samlar in med varje cykel ska vara faktiska, handlingsbara data. Vi kallar det validerad inlärning.
Förkorta din cykeltid
När du använder DevOps-metoder:
- Du förkortar din cykeltid genom att arbeta i mindre batchar.
- Använda mer automatisering.
- Härdning av versionspipelinen.
- Förbättra telemetrin.
- Distribuera oftare.
Optimera validerad inlärning
Ju oftare du distribuerar, desto mer kan du experimentera. Ju fler möjligheter du har att pivotera eller framhärda och få validerad inlärning varje cykel. Den här accelerationen i validerad inlärning är värdet av förbättringen. Tänk på det som summan av de framsteg som du uppnår och de fel som du undviker.