(Time-To-Market).
Ăven pĂ„ helgerna tĂ€nkte han pĂ„ metrik: "Och vad fĂ„r jag ut av att mĂ€ta tiden? Vad ger det mig?"
Verkligen, vad ger vetskapen om tiden? Anta att leveransen tar 5 dagar. Och vad hĂ€nder sedan? Ăr det bra eller dĂ„ligt? Ăven om det Ă€r dĂ„ligt, mĂ„ste man Ă€ndĂ„ minska denna tid. Men hur?
Dessa tankar gjorde honom orolig, men lösningen kom inte.
Ivan insÄg att han hade nÄtt kÀrnan. De otaliga diagrammen av metrik som han sett tidigare hade för lÀnge sedan övertygat honom om att den standardmetoden inte skulle fungera, och att om han bara skulle skapa ett diagram (), skulle det inte ge nÄgot vÀrde.
Vad ska man göra?âŠ
En metrik Àr som ett vanligt trÀlinjal. MÀtningar som görs med det kan inte förklara orsaken, varför till att det mÀtta objektet Àr just den lÀngd som det visade. Linjalen visar bara storleken, och inte mer. Den Àr inte en filosoferande sten, utan bara en trÀplanka som anvÀnds för att mÀta.
"Rostfri rĂ„tta", den Ă€lskade karaktĂ€ren av författaren Harry Harrison, sa alltid: tanken mĂ„ste nĂ„ botten av hjĂ€rnan och vila dĂ€r, sĂ„ efter att ha kĂ€mpat utan resultat i nĂ„gra dagar beslutade Ivan sig för att ta sig an en annan uppgiftâŠ
NÄgra dagar senare, nÀr han lÀste en artikel om nÀtbutiker, insÄg Ivan plötsligt att den kraft av pengar som en nÀtbutik fÄr, beror pÄ hur besökarna pÄ webbplatsen beter sig. Just de, besökarna/kunderna, ger butiken sina pengar och Àr dess kÀlla. Det slutliga beloppet av pengar som butiken fÄr pÄverkas av förÀndringar i kundernas beteende, inte av nÄgot annat.
Det visade sig att för att förÀndra den mÀtta storheten mÄste man pÄverka dem som formar detta vÀrde, det vill sÀga för att förÀndra mÀngden pengar i nÀtbutiken mÄste man pÄverka beteendet hos kunderna pÄ denna butik, och för att förÀndra leveranstiden i DevOps mÄste man pÄverka de team som "skapar" denna tid, det vill sÀga de som anvÀnder DevOps i sitt arbete.
Ivan insÄg att DevOps-metriker inte alls borde representera diagram. De mÄste representera ett verktyg för att söka efter "framstÄende" team som formar den slutliga leveranstiden.
Ingen mÀtning kan nÄgonsin avslöja orsaken till varför ett visst team tog lÄng tid pÄ sig att leverera distributionen, tÀnkte Ivan, eftersom det kan finnas miljoner orsaker, och mÄnga av dem kan vara organisatoriska snarare Àn tekniska. Det vill sÀga, det mesta man kan förvÀnta sig av mÀtningar Àr att de visar teamens prestationer och resultat, och dÀrefter mÄste man ÀndÄ gÄ till dessa team för att ta reda pÄ vad som har hÀnt.
à andra sidan fanns det en standard i Ivans företag som Älade alla team att kontrollera byggnader pÄ flera testmiljöer. Teamet kunde inte gÄ vidare till nÀsta miljö förrÀn den föregÄende var klar. Det innebar att om man ser DevOps-processen som en sekvens av att gÄ igenom testmiljöer, sÄ skulle mÀtningarna kunna visa den tid som lag spenderade pÄ dessa miljöer. Med vetskap om miljö och lagets tid kunde man prata mer konkret med dem om orsakerna.
Utan att tveka lyfte Ivan telefonluren och slog numret till en person som hade god insikt i DevOps inre funktioner:
â Denis, kan du berĂ€tta om det finns nĂ„got sĂ€tt att förstĂ„ om teamet har passerat en viss testmiljö?
â SjĂ€lvklart. VĂ„r Jenkins sĂ€tter en flagga om byggnaden har rullat ut framgĂ„ngsrikt (klarat testet) pĂ„ miljön.
â Super. Vad Ă€r en flagga?
â Det Ă€r en vanlig textfil av typen "miljö_OK" eller "miljö_FAIL", som indikerar om byggnaden har klarat eller inte klarat testet. FörstĂ„r du?
â I princip ja. Skriver den i samma mapp i lagret dĂ€r byggnaden ligger?
â Ja.
â Vad hĂ€nder om byggnaden inte klarar testet? MĂ„ste man göra en ny byggnad?
â Aha.
â Okej, tack. Och en till frĂ„ga: förstĂ„r jag rĂ€tt att jag kan anvĂ€nda datumet för nĂ€r flaggan skapades som datum för att passera testmiljön?
â Absolut!
â Super!
Inspirerad lade Ivan pÄ luren och insÄg att allt hade fallit pÄ plats. Med vetskap om skapelsedatumet för byggfilen och datum för flaggorna kunde man exakt rÀkna ut hur lÄng tid teamen tog pÄ varje testmiljö och förstÄ var de spenderade mest tid.
"Genom att förstÄ var mest tid gÄr, kan vi identifiera team och gÄ till dem för att grÀva fram problemet." Ivan log.
Till nÀsta dag satte han som mÄl att skissa pÄ arkitekturen för det framvÀxande systemet.
FortsĂ€ttning följerâŠ
KĂ€lla: habr.com
