Læringsløp 04Leksjon 10 / 10

Mål leveransesystemet

Kombiner leveranseflyt, ustabilitet, tjenesteeffekter og arbeidsinnsats. Bruk tydelige definisjoner når dere vurderer virkningen av AI.

Praktisk10 minGjennomgått

Publisert av Slik skriver vi

Dette lærer du

  • Skill leveranseevne fra kodegenereringsaktivitet.
  • Tolk et måltall ut fra hendelsesdefinisjonene og omfanget.
  • Bruk målinger til å velge en forbedring fremfor å rangere enkeltpersoner.

Begynn med beslutningen dere må ta

Et team vil vite om AI forbedrer leveransen. Å telle genererte linjer svarer på et annet spørsmål. Definer det nyttige resultatet og kvalitetsvilkårene før dere velger et måltall.

For en fiktiv eksporttjeneste er ønsket resultat pålitelig levering av godkjente endringer med mindre samlet innsats. Registrer forberedelse, implementasjon, review, retting og venting. Ta med endringer som feilet eller ble avbrutt.

Bruk én tjeneste med en tydelig grense. Å kombinere et eksperimentelt nettsted og en kritisk betalingstjeneste kan gi et tall som ikke forklarer noen av dem. Beskriv konteksten før dere sammenligner perioder eller team.

Bruk gjeldende definisjoner

DORAs gjeldende leveransemodell inneholder fem måltall. Omfanget er leveranseevne, ikke verdien av hver funksjon eller bidraget fra en enkeltperson. DORAs måltallsdefinisjoner.

MåltallHva det måler
Ledetid for endringerFra commit til produksjon
UtrullingsfrekvensHyppighet av produksjonsutrullinger
Gjenopprettingstid etter mislykket utrullingGjenoppretting etter en mislykket utrulling
Andel mislykkede endringerUtrullinger som krever umiddelbar inngripen
Andel omarbeidingsutrullingerUplanlagte utrullinger forårsaket av produksjonshendelser

Et dashbord kan bruke en annen definisjon. Les den før dere tolker resultatet. Taigas gjeldende utrullingsdokumentasjon beskriver fire rapporterte måltall basert på leverandørens utrullingsregistreringer. Gjenopprettingsmålet bruker en senere vellykket utrulling. Det er ikke en fullstendig registrering av alle produksjonshendelser. Taigas definisjoner.

Undersøk en fiktiv endringssekvens

Anta at en tjeneste gjør tolv utrullinger på en måned. Åtte leverer planlagte endringer. Fire reparerer problemer fra tidligere utgivelser. Antallet er tolv, men sammensetningen betyr noe.

Neste måned gjør teamet ti utrullinger: ni planlagte endringer og én reparasjon. Færre utrullinger kan forekomme sammen med mer nyttig arbeid. Tallene illustrerer tolkning; de er ikke en ytelsesreferanse.

Undersøk også fordelingen. Én lang ventetid på review kan forsvinne i et gjennomsnitt. Et gjenopprettingsmål fra én enkelt feil er svakt bevis for fremtidig pålitelighet. Oppgi antallet observasjoner og vesentlige unntak.

Koble flyt til konsekvenser

Bruk tjenestesignaler til å kontrollere om endringer i leveransen påvirker brukerne. En raskere pipeline er ikke tilstrekkelig hvis eksporter feiler oftere. Bruk et passende SLO eller et annet tydelig definert resultatmål. SLO-veiledning.

Innsats i review og omarbeid bidrar til å forklare resultatet. Hvis AI forkorter implementasjonen, men produserer store differ, kan review bli begrensningen. Hvis det tar dager å skaffe miljøer, kan raskere koding ha liten effekt på samlet leveringstid.

Velg én forbedring som håndterer den observerte begrensningen. Tilby for eksempel et støttet testmiljø eller reduser størrelsen på en endring. Definer et balanserende kvalitetsmål slik at teamet kan oppdage en tilsynelatende hastighetsgevinst som skyldes svakere kontroller.

Hold målingen nyttig

Unngå individuell rangering basert på antall PR-er eller generert kode. Slike mål kan belønne kunstig oppdeling av arbeid, unngåelse av vanskelig vedlikehold eller flytting av review-arbeid til kolleger.

Gjennomgå resultatet med dem som er ansvarlige for hele tjenesten. Dokumenter hva som endret seg i verktøy, oppgavesammensetning, team og miljø. Behandle en før-og-etter-sammenligning som bevis med begrensninger, ikke automatisk bevis på årsakssammenheng.

Formålet er en bedre neste beslutning. En liten, pålitelig måling som fører til en verifisert forbedring, er mer nyttig enn et stort dashbord uten avtalt betydning.

Øv med ti endringer

Dette separate fiktive datasettet registrerer ti planlagte endringer. Alle tider er UTC på datoen som vises. Et tomt rettefelt betyr at ingen retting er registrert i dette datasettet.

Endring / datoArbeidet starterKoden er klarReview starterGodkjentUtgittRettet
C01 · 2026-09-1408:0008:4509:1509:3010:00—
C02 · 2026-09-1409:0009:3012:0012:2013:00—
C03 · 2026-09-1508:0009:0009:1509:4010:0015:00
C04 · 2026-09-1510:0010:3010:4511:0011:15—
C05 · 2026-09-1608:0009:0013:0013:3014:00—
C06 · 2026-09-1610:0011:0011:3012:0012:15—
C07 · 2026-09-1708:0008:3009:0009:2009:30—
C08 · 2026-09-1710:0010:4511:0011:3014:30—
C09 · 2026-09-1808:0008:3009:0009:3010:00—
C10 · 2026-09-1809:0009:3010:0010:3011:0014:00

Sammenlign tiden fra koden er klar til review starter, deretter fra godkjenning til utgivelse. Finn den lengste synlige ventetiden. Undersøk årsaken før dere kaller den unngåelig. Tidsstemplene måler ikke aktiv innsats og viser ikke når en hendelse begynte. En rettingsutgivelse alene kan ikke fastslå gjenopprettingstid etter mislykket utrulling.

Last ned det fiktive datasettet (CSV)

Kontroller ventetidene

Kontroller tolkningen din: C05 venter fire timer på review. C08 venter tre timer etter godkjenning før utgivelse. Datasettet forklarer ikke disse ventetidene. Spør om kapasitet, arbeidstid, utgivelsespolicy og avhengigheter.

Gjør øvelsen

Bruk datasettet med ti endringer i denne leksjonen. Definer en utrulling, en mislykket endring og en gjenopprettingshendelse. Finn den lengste synlige ventetiden, og oppgi hva som ville fastslått årsaken. Foreslå en forbedring og et mål som ville avdekket dårligere kvalitet.

Last ned arbeidsark (Markdown)

Kontroller forståelsen din

Utrullingsfrekvensen øker etter innføring av AI, mens uplanlagte reparasjonsutrullinger også øker. Hva bør dere konkludere med?

Kilder og videre lesning

Relatert lesning fra Taiga