Měření software, produktové a procesní metriky, význam pro sledování kvality a řízení postupu.

 Metrika = způsob stanovení velikosti

Složitost, přehlednost

počet možných cest skrz zdrojový kód

strukturální metrika, která měří poměr počtu modulů, které volají daný modul ku počtu modulů, které volá daný modul

součet složitosti všech metod ve třídě

nedostatek soudržnosti - jedna metoda dělái více funkcí (které se ve svém "smyslu" liší)

Počet Use Cases, funkčních bodů

Kvalita (nepřímé metriky)

Pokrytí testy – kódu, požadavků

Charakteristika defektů – hustota, výskyt

Střední doba mezi poruchami

Produktové a procesní metriky - viz předchozí otázka

počet use case, 

počet podsystémů, modulů, tříd…,

složitost modulů, 

počet řádků,

počet odhalených chyb v jednotlivých modulech při testování, 

složitost dat modulu (funkční body), 

člověkohodiny apod.

Staff turnover (fluktuace zaměstnanců),

změny postupu/plánu

…

Breakage = průměrná váha změny (LOC (Lines of Code) / CR (Change Rate))

Pracnost celkem, přepočtená na CR (Change Rate)

Množství chyb (procenta) odhalených před odesláním zákazníkovi.

Složitost, přehlednost

Počet UC, funkčních bodů

Možná někdy případně i také LOC

Kvalita (nepřímé metriky)

Pokrytí testy - kódu, požadavků

Charakteristiky defektů - hustota, výskyt

PMD, FindBugs, …

Jitter - change requesty a jejich zpracování, staff turnover, změny postupu a plánu

Breakage = průměrná váha změnu LOC / CR (lines of code / change request)

Pracnost celkem, přepočtená na Change Requesty

Jak měřit

Definovat cíl měření

Přístup k definování metrik

Rámec pro systém zaměřený na konkrétní problémy

Goal = problém + cíl měřícího programu

Question = měřené objekty a způsob měření

Nástroje pro měření

Spreadsheet, kalendář

Řízení měření

Plán měření

GQM přístup

Způsob získání dat

Řízení postupu

Plán měření

GQM (Goal Question Metric) přístup

Význam pro sledování kvality a řízení postupu

Lines of Code nic neznamená pro řízení kvality, ale třeba se dá odhadovat postup

Je nutné sledovat kvalitu a upravovat vůči ní proces vzhledem k nákladům na zdroje, čas. Navíc pokud mineme chybu a vyjde do produkce, kromě řádově vyšších nákladů můžeme poškodit jméno společnosti
