(Čas-do-trga).
Tudi med vikendi je razmišljal o metrikah: „No in kaj, če izmerim čas? Kaj mi to prinese?“
Res je, kaj prinese poznavanje časa? Recimo, da dostava traja 5 dni. In kaj naprej? Je to dobro ali slabo? Tudi če je slabo, moraš to čas vendarle nekako skrajšati. Kako pa?
Te misli mu niso dale miru, a rešitev se ni pojavila.
Ivan je razumel, da je prišel do samega bistva. Nešteti grafi metrik, ki jih je pred tem videl, so ga že dolgo prepričali, da standardni pristop ne bo deloval in da če zgolj nariše graf (), ne bo nobenega učinka.
Kaj pa zdaj?…
Metrika je kot navaden leseni ravnil. Meritve, narejene z njegovo pomočjo, ne bodo povedale, zakaj je merjeni predmet prav te dolžine, kot jo je pokazal. Ravnil bo samo pokazal njegovo velikost in nič več. Ni filozofski kamen, temveč zgolj lesena deska, s katero merimo. „Kovina iz nerjavečega jekla“ njegovega najljubšega pisatelja Harryja Harrisona je vedno govorila: misel mora doseči dno možganov in tam počivati, zato je Ivan, potem ko je brezciljno trpel nekaj dni, sklenil, da se loti druge naloge…
Čez nekaj dni, ko je bral članek o spletnih trgovinah, je Ivan nenadoma spoznal, da količina denarja, ki ga prejme spletna trgovina, odvisna od vedenja obiskovalcev spletne strani. Prav ti, obiskovalci/stranke, predajajo trgovini svoj denar in so njihov vir. Na končni znesek denarnih sredstev, ki jih trgovina prejme, vplivajo spremembe v obnašanju strank in ne kaj drugega.
Iz tega je izhajalo, da je za spreminjanje merjenega zneska potrebno vplivati na tiste, ki oblikujejo to vrednost, tj. za spremembo zneska denarja spletne trgovine je bilo treba vplivati na vedenje strank te trgovine, za spremembo časa dostave v DevOps pa je bilo treba vplivati na ekipe, ki to vreme „ustvarjajo“, tj. uporabljajo DevOps pri svojem delu.
Ivan je spoznal, da metrika DevOps ne sme predstavljati grafov. Morajo predstavljati
orodje iskanja „izjemnih“ ekip, ki oblikujejo končni čas dostave. „izjemnih“ ekip, ki oblikujejo končni čas dostave.
Nobena metrika nikoli ne bo pokazala vzrok, zakaj je določena ekipa dolgo dobavljala distribucijo, je pomislil Ivan, saj je lahko razlogov milijon in nekaj malega, in ti povsem morda niso tehnične, temveč organizacijske. To pomeni, da je maksimum, kar lahko pričakujemo od metrik, prikaz rezultatov ekip, nato pa se bomo kljub temu morali osebno obrniti na te ekipe in ugotoviti, kaj se je zgodilo.
Po drugi strani pa je v podjetju Ivana obstajal standard, ki je vse ekipe zavezoval, da preverjajo zgradbe na več postajah. Ekipa ni mogla preiti na naslednjo postajo, dokler prejšnje niso opravile. Tako je izhajalo, da bi, če bi proces DevOps predstavili kot zaporedje prehoda postaj, metrike lahko prikazovale čas, ki so ga ekipe preživele na teh postajah. Poznavajoč postajo in čas ekipe, bi bilo mogoče bolj konkretno govoriti z njimi o razlogih.
Ivan ni dolgo razmišljal, dvignil je telefonsko slušalko in poklical osebo, ki se dobro spozna na notranjost DevOps:
— Denis, povej mi, prosim, ali lahko nekako razumemo, da je ekipa prešla določeno postajo?
— Seveda. Naš Jenkins postavi zastavico, če se je zgradba uspešno razdelila (prešla testiranje) na postaji.
— Super. Kaj pa je zastavica?
— To je navaden besedilni datoteka tipa „postaja_OK“ ali „postaja_FAIL“, ki pove, da je zgradba prešla ali ni prešla postaje. No, razumeš, kajne?
— Načeloma ja. Se piše v isto mapo v skladišču, kjer je zgradba?
— Da
— Kaj pa se zgodi, če zgradba ni prešla postaje? Bo treba narediti novo zgradbo?
— Aha
— Dobro, hvala. In še eno vprašanje: prav razumem, da lahko kot datum prehoda postaje uporabim datum ustvarjanja zastavice?
— Absolutno!
— Super!
Navdušen, je Ivan odložil slušalko in spoznal, da je vse na svojem mestu. Poznavajoč datum ustvarjanja datoteke zgradbe in datum ustvarjanja zastavic, je bilo mogoče natančno do sekunde izračunati, koliko časa ekipe porabijo na vsaki postaji in ugotoviti, kje porabijo največ časa.
„Razumevajoč, kje se porablja največ časa, bomo natančno našli ekipe, se odpravili k njim in raziskali problem.“ Ivan se je nasmehnil.
Za jutri si je zadal nalogo, da bo osnutek arhitekture zasnove sistema.
Nastaviće se…
Izvor: habr.com
