9 metriky, které může mít vliv na dnešní vývoj software týmy

Jak jsem uvedl v článku „Proč metriky nezáleží na vývoj software (pokud jste spárovat s obchodní cíle),“ výběr metriky vyžaduje značnou myšlení a péče na podporu konkrétní otázky podnikání opravdu potřebuje odpověď. Zde je kritický bod: měření by měla být navržena pouze jako způsob, jak odpovědět na obchodní otázky. A tyto otázky jsou nikdy, “ kolik KLOCs jsme až teď?“

Tento článek navazuje tam, kde předchozí skončili, diskutovat o první konkrétní metriky každý tým by měl začít používat, nebo alespoň plán, jak brzy jako způsob, jak zlepšit patrný výkon. Všimněte si, že název tohoto článku tvrdí, že existují „metriky 9, které mohou změnit …“ – protože to, co je skutečně důležité, co skutečně změní, je to, jak se tyto metriky skutečně používají ke zlepšení obchodní hodnoty. To je na vás. Pak tento článek končí vysvětlením, jak můžete kombinovat tyto metriky k vytvoření významu, stejně jako formulovat a testovat hypotézu obchodní hodnoty.

Začněte tím, že měření správné věci

Zde je devět objektivní metriky (označené body), které byste měli sledovat průběžně, pro postupné zlepšování procesů a prostředí výroby. Zlepšení těchto čísel nezaručí, že úroveň spokojenosti vašich zákazníků vzroste mílovými kroky. Ale alespoň to jsou správné věci k měření. V pozdější části tohoto článku,“ dát to všechno dohromady, “ uvidíte proč.

metriky agilních procesů

pro agilní a štíhlé procesy jsou základními metrikami dodací lhůta, Doba cyklu, rychlost týmu a rychlost otevírání/zavírání. Tyto metriky napomáhají plánování a informují o rozhodování o zlepšování procesů. I když neměří úspěch ani přidanou hodnotu a nemají nic společného s objektivní kvalitou softwaru, měli byste je stejně měřit. Vysvětlím, proč níže.

  • Leadtime – jak dlouho trvá přechod od nápadu k dodanému softwaru. Pokud chcete být více citlivý na své zákazníky, práce snížit dodací lhůty, obvykle tím, zjednodušit rozhodování a snížit dobu čekání. Leadtime zahrnuje dobu cyklu.
  • doba cyklu-jak dlouho trvá, než provedete změnu softwarového systému a dodáte tuto změnu do výroby. Týmy používající nepřetržité doručování mohou mít doby cyklu měřené v minutách nebo dokonce sekundách namísto měsíců.
  • rychlost týmu – kolik“ jednotek „softwaru tým obvykle dokončí v iteraci (také znám jako „sprint“). Toto číslo by mělo být použito pouze k plánování iterací. Porovnávání týmových rychlostí je nesmysl, protože metrika je založena na neobjektivních odhadech. Léčení rychlost jako úspěch opatření je nevhodné, a dělat konkrétní rychlost do cíle narušuje jeho hodnoty pro odhad a plánování.
  • míra otevření/zavření—kolik výrobních problémů je hlášeno a uzavřeno v určitém časovém období. Na obecném trendu záleží více než na konkrétních číslech.

pokud jsou některé nebo všechny tyto metriky mimo očekávaný rozsah nebo trendy v alarmujících směrech, nepředpokládejte příčinu. Promluvte si s týmem, získejte celý příběh a nechte tým rozhodnout, zda existuje důvod k obavám, a pokud ano, jak to opravit.

z čísel nemůžete znát ani předpokládat hlavní příčiny, ale tyto metriky vám umožňují nahlédnout do toho, kde vaše základní procesy vyžadují pozornost. Vysoký otevřený kurz a nízké úzké sazby přes několik iterací, například, může znamenat, že výrobní problémy jsou v současné době nižší prioritu než nové funkce, nebo možná, že tým je zaměřený na snižování technických dluh na opravu celé třídy problémů, nebo že jediný člověk, který věděl, jak je opravit přestat, nebo něco jiného. Z čísel nemůžete znát ani předpokládat hlavní příčiny.

Výroba analytics

  • střední doba mezi poruchami (MTBF)
  • čas na zotavení/opravy (MTTR)

Oba jsou celkově opatření softwaru výkon systému v jeho současné výrobní prostředí.

  • míra selhání aplikace-kolikrát aplikace selže děleno kolikrát byla použita. Tato metrika souvisí s MTBF a MTTR.

Všimněte si, že žádný z těchto tří metrik vám řekne o jednotlivé prvky nebo uživatelů postižených. Stále platí, že čím menší čísla, tím lépe. Moderní operace-sledování software umožňuje získat podrobné metriky na jednotlivých programů a transakcí docela snadné, ale to vyžaduje čas a pečlivou myslel, nastavit správné rozsahy pro upozornění a/nebo triggery pro škálování nahoru nebo dolů (pro cloud-based systems).

chtěli bychom, aby náš software nikdy nezklamal, ale to je statisticky nepravděpodobné. Když náš software dělá to nepodaří, jsme chtěli, aby nikdy ztratit důležitá data a obnovit okamžitě, ale to může být mimořádně obtížné dosáhnout. Pokud je váš software zdrojem příjmů, stojí za to úsilí.

kromě MTBF a MTTR jsou jemněji Zrnitá měření založena na jednotlivých transakcích, aplikacích atd. Pokud se vaše aplikace pro zpracování transakcí zhroutí jednou za sto, ale zotaví se za sekundu nebo dvě a neztratí žádné důležité informace, může být tato míra selhání 1 procenta dost dobrá. Ale pokud každý pád je aplikace, která běží 100,000 transakce denně, ztrácí $ 100 prodej, a náklady $ 50 k nápravě na zadní straně, že 1 procent crash rate bude prioritou. Jeho upevnění výrazně ovlivní spodní řádek.

bezpečnostní metriky

bezpečnost je aspekt kvality softwaru, který je často přehlížen až později (nebo příliš pozdě). Nástroje pro analýzu bezpečnosti lze použít v procesu sestavování, kromě specializovanějších hodnocení a zátěžových testů. Bezpečnostní požadavky jsou často jednoduché a běžné, ale tým pro vývoj softwaru je musí mít na paměti, a metrik z nich odvozených.

plný rozsah bezpečnostních postupů a související metriky je nad rámec tohoto článku, ale jako s agilní proces, metriky a ukazatele výroby, existuje několik specifické metriky, které může znamenat hodně pro své zákazníky‘ celková spokojenost.

  • incidenty koncových bodů-kolik koncových bodů (mobilní zařízení, pracovní stanice atd.) zažili jste virovou infekci v daném časovém období?
  • MTTR (střední doba do opravy)—v bezpečnostní metriky, to je doba mezi objevem narušení bezpečnosti a nasazení, pracovní prostředek. Stejně jako u výrobní metriky MTTR uvedené výše, bezpečnostní MTTR by měl být sledován v určitých časových intervalech. Pokud MTTR hodnota roste menší, v průběhu času, pak vývojáři jsou stále více efektivní v chápání bezpečnostních otázek, jako jsou chyby a jak je opravit.

pro obě tyto metriky menší čísla v průběhu času znamenají, že se pohybujete správným směrem. Méně incidentů koncových bodů mluví samo za sebe. Jak se hodnota MTTR zmenšuje, vývojáři jsou stále efektivnější v porozumění bezpečnostním problémům, jako jsou chyby a jak je opravit.

další způsoby, jak aplikovat metriky zabezpečení na vývoj softwaru, najdete v článcích zabezpečení aplikací pro agilní projekty a modely bezpečnostních hrozeb: agilní Úvod.

poznámka k metrikám zdrojového kódu

dnes je snadné připojit skener zdrojového kódu do vašeho sestavení potrubí a vytvářet hromady objektivních metrik. Existují empirické průměry a navrhované rozsahy a logické argumenty o relativní důležitosti těchto metrik. V praxi jsou však tyto nástroje nejužitečnější při prosazování stylů kódování, označování určitých anti-vzorů a identifikaci odlehlých hodnot a trendů.

prostě nestojí za to zavěsit na čísla. Zde je příklad, jako vysvětlení.

Předpokládejme, že najdete metodu ve třídě se směšnou metrikou, jako je složitost npath 52 milionů. To znamená, že by bylo zapotřebí 52 milionů testovacích případů, aby bylo možné plně uplatnit každou cestu kódem. Můžete refaktor kód do jednodušší struktury, ale než to uděláte, zvažte, jaký by byl obchodní dopad. Je pravděpodobné, že starý, ošklivý kód funguje dostatečně dobře (i když jeho testovací pokrytí může být nedostatečné). Volá anti-vzor týmu, takže se mohou vyhnout opakování to je cenná učení, ale řešení by to asi nebylo přesunout jehlu na žádné relevantní obchodní metriky.

nejlepší je, pokud tým souhlasí s úrovní shody a pravidly, kterým je jejich kód vystaven, ale uvědomte si, že zkoumání odlehlých hodnot a znepokojení trendovými výkyvy může ztrácet spoustu času.

pak to všechno dohromady: Úspěch je konečný metrický

radost z používání automatizované nástroje pro sledování a měření kvality metriky a uživatele analytics je, že to uvolňuje čas zaměřit se na metriky, které jsou skutečně důležité: úspěch metriky.

jak používat metriky pro úspěch

podniky mají cíle. Cíle znamenají otázky ,například “ jak vypadá úspěch?“nebo“ jak to ovlivní chování zákazníků?“Správně kvantifikované otázky znamenají metriky.

jinak řečeno, metriky by měly být použity pouze k zodpovězení otázek, k testování hypotéz, které podporují konkrétní obchodní cíl. A to by mělo být provedeno pouze tehdy, pokud otázky a odpovědi pomohou řídit pozitivní změny.

nemají všechny projekty obecně nějakou sadu invariantních cílů, otázek a hypotéz, a tedy metrik?

Ano, ale pouze z hlediska podnikání. Opatření na obchodní úrovni věcí, jako je zapojení uživatelů, úzké sazby, generování příjmů atd., poskytují zpětnou vazbu o tom, jak si podnik vede v reálném světě. Změny softwaru, které ovlivňují podnikání, ovlivní také tyto druhy metrik.

Na jemnější úrovni rozlišení, každý prvek a uživatelské příběh může mít svůj vlastní úspěch metrické—nejlépe jen jeden, a jeden, který přímo souvisí s měřítkem hodnoty dodané k zákazníkovi. Dokončení devíti z deseti příběhů ve sprintu pro funkce, které nejsou nikdy dodány, je plýtvání, ne úspěch. Doručování příběhů, které zákazníci nechtějí nebo nepoužívají, je plýtvání, ne úspěch. Přináší příběh, který zlepšuje některé aspekty uživatelského štěstí je úspěch. Úspěšný je také příběh, který prokazatelně nezlepší zapojení uživatelů, protože jste se naučili něco, co nefungovalo, zneplatnili obchodní hypotézu a uvolnili zdroje pro další cesty.

jak formulovat hypotézu hodnoty

hypotéza hodnoty je prohlášení o tom, co si myslíte, že se stane v důsledku doručení konkrétní funkce. Vztah mezi softwarem, požadovaným výsledkem a metrikami tvoří hypotézu hodnoty pro funkci (nebo systém, příběh nebo upgrade atd.). Hypotéza by měla vyjadřovat, jak se očekává, že se cílená metrika změní, v jakém časovém rámci a do jaké míry bude považována za účinnou. Budete muset mluvit s týmem a vlastníkem produktu, minimálně, zjistit konkrétní věc, kterou má tato funkce nebo příběh vytvořit nebo vylepšit s ohledem na podnikání, aby bylo možné formulovat jeho hodnotovou hypotézu. Možná se budete muset několikrát zeptat „Proč“ (jako tříletý), abyste odloupli vrstvy nevystavených předpokladů; buďte trpěliví. Když pochopíte, jaká má být obchodní hodnota, můžete začít klást otázky, které vás povedou k metrikám, které na tuto otázku odpovídají.

například „technický“ příběh ke zlepšení rychlosti procesu pokladny elektronického obchodování může mít za svůj základní předpoklad, že rychlejší pokladna povede k většímu prodeji. Ale proč si to myslíme? Mnoho lidí opouští své nákupní vozíky během procesu platby? V případě, že je konsensus (proto, že konsensus se opírá o základní údaje), pak hodnota hypotéza může být „věříme, že rychlejší checkout proces bude mít za následek snížení košíku opuštění sazby, což vede k vyšší tržby a zlepšení uživatelské zkušenosti.“

pravděpodobně můžete předpokládat, že uživatelé budou mít rádi rychlejší pokladnu, ale není na škodu se zeptat, zda si toho všimli. Míra opuštění košíku a prodej lze měřit před a po zavedení nového procesu, po určitou dobu. Pokud vozík-opuštění frekvence klesne a nárůst prodeje (mimo statistické fluktuace), důkazů podporuje hypotézu, a můžete zvážit, zda i další vylepšení rychlosti jsou oprávněné. Pokud tomu tak není, nechte tuto metriku vyblednout do pozadí (nebo ji odstraňte, pokud to rozptyluje) a zaměřte svou pozornost na další hypotézu. Pokud se míra opuštění košíku sníží, ale prodej se nezmění, změřte delší dobu nebo přehodnoťte předpokládanou souvislost mezi opuštěním košíku a prodejem. Jinými slovy, použijte metriky k učení, a pouze pokud se ukáží jako užitečné pro zlepšení řízení.

v některých případech může být hypotéza zjevně nesprávná ,takže metriky zrušíme (a Zrušíme změny softwaru!) po několika dnech. V ostatních případech může být hypotéza správná, takže v této oblasti pokračujeme v zlepšování po celá léta.

Šest heuristiky pro efektivní využití metriky

viděli Jsme, jak subjektivní softwarové metriky ohledu daleko více pro úspěch v podnikání než tradiční, objektivní metriky kvality staré. Úsilí potřebné k nalezení a měření relevantních obchodních metrik pro funkce převažuje nad získanými poznatky a příležitostmi k učení. Obchodní podmínky a možnosti se neustále mění, takže spíše než shrnout vzorec následovat, které mohou být křehké, zde je šest pravidel palce, nebo heuristiky, aby pomohla udržet zaměření a flexibilitu. Mohou vám pomoci vést vás na vaší cestě ke kvalitnímu softwaru a obchodnímu úspěchu!

  1. metriky vám nemohou vyprávět příběh; To může udělat pouze tým (s kloboukem Todd DeCapula).
  2. porovnání sněhových vloček je odpad.
  3. můžete měřit téměř cokoli, ale nemůžete věnovat pozornost všemu.
  4. metriky obchodního úspěchu vedou k vylepšení softwaru, nikoli naopak.
  5. každá funkce přidává hodnotu; buď ji změřte, nebo ji nedělejte.
  6. Změřte pouze to, na čem nyní záleží.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.