Spolehlivost softwaru

Podobné dokumenty
Metriky softwarové kvality

Význam měřm. Mgr. Anna Borovcová doc. Ing. Alena Buchalcevová, Ph.D. VŠE Praha

Chyby software. J. Sochor, J. Ráček 1

Statistika a spolehlivost v lékařství Charakteristiky spolehlivosti prvků I

A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti Přednáška 2

P13: Statistické postupy vyhodnocování únavových zkoušek, aplikace normálního, Weibullova rozdělení, apod.

Název testu Předpoklady testu Testová statistika Nulové rozdělení. ( ) (p počet odhadovaných parametrů)

VYBRANÁ ROZDĚLENÍ. SPOJITÉ NÁH. VELIČINY Martina Litschmannová

y = 0, ,19716x.

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Normy ČSN a ČSN ISO z oblasti aplikované statistiky (stav aktualizovaný k )

16. Kategorizace SW chyb, kritéria korektnosti a použitelnosti, spolehlivost SW

Určujeme neznámé hodnoty parametru základního souboru. Pomocí výběrové charakteristiky vypočtené z náhodného výběru.

Diskrétní náhodná veličina

Spolehlivost. INP 2008 FIT VUT v Brně

Normální (Gaussovo) rozdělení

jevu, čas vyjmutí ze sledování byl T j, T j < X j a T j je náhodná veličina.

Kendallova klasifikace

PROCES ZAJIŠTĚNÍ FUNKČNÍ BEZPEČNOSTI STROJE

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

ČÁST 1. Rozhodující koncepce odhadů. Co je Odhad? 25

Regrese. používáme tehdy, jestliže je vysvětlující proměnná kontinuální pokud je kategoriální, jde o ANOVA

Vývoj řízený testy Test Driven Development

PDV /2018 Detekce selhání

Základy biostatistiky II. Veřejné zdravotnictví 3.LF UK - II

2 Zpracování naměřených dat. 2.1 Gaussův zákon chyb. 2.2 Náhodná veličina a její rozdělení

7. Rozdělení pravděpodobnosti ve statistice

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

Markovské metody pro modelování pravděpodobnosti

KGG/STG Statistika pro geografy

Pravděpodobnost a matematická statistika

Obsah. Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11

STATISTICKÉ ODHADY Odhady populačních charakteristik

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

Kapacita jako náhodná veličina a její měření. Ing. Igor Mikolášek, Ing. Martin Bambušek Centrum dopravního výzkumu, v. v. i.

Vybraná rozdělení náhodné veličiny

ÚVOD DO BSC - základy metody vyvážených ukazatelů. Ing. Petra Plevová

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Úvod do problematiky měření

IDENTIFIKACE BIMODALITY V DATECH

Řešení. Označme po řadě F (z) Odtud plyne, že

Příručka k měsíčním zprávám ING fondů

Kontingenční tabulky a testy shody

Pravděpodobnost a statistika, Biostatistika pro kombinované studium. Tutoriál č. 5: Bodové a intervalové odhady, testování hypotéz.

Chyby měření 210DPSM

Normální (Gaussovo) rozdělení

Aplikovaná statistika v R - cvičení 2

MÍRY ZÁVISLOSTI (KORELACE A REGRESE)

Kvalita SW produktů. Jiří Sochor, Jaroslav Ráček 1

10. cvičení z PST. 5. prosince T = (n 1) S2 X. (n 1) s2 x σ 2 q χ 2 (n 1) (1 α 2 ). q χ 2 (n 1) 2. 2 x. (n 1) s. x = 1 6. x i = 457.

Procesní řízení. Hlavní zásady a praxe dodavatele Komix

Intervalové odhady. Interval spolehlivosti pro střední hodnotu v N(µ, σ 2 ) Interpretace intervalu spolehlivosti. Interval spolehlivosti ilustrace

Jana Vránová, 3.lékařská fakulta UK, Praha. Hypotézy o populacích

MATEMATIKA III V PŘÍKLADECH

Korelační a regresní analýza

SPOJITÉ ROZDĚLENÍ PRAVDĚPODOBNOSTI. 7. cvičení

Regresní analýza. Eva Jarošová

1. Statistická analýza dat Jak vznikají informace Rozložení dat

PRAVDĚPODOBNOST A STATISTIKA

SPRÁVNÁ INTERPRETACE INDIKÁTORŮ KVALITY MAMOGRAFICKÉHO SCREENINGU. Májek, O., Svobodník, A., Klimeš, D.

Intervalové odhady. Interval spolehlivosti pro střední hodnotu v N(µ, σ 2 ) Interpretace intervalu spolehlivosti. Interval spolehlivosti ilustrace

Vysoká škola báňská Technická univerzita Ostrava TEORIE ÚDRŽBY. učební text. Jan Famfulík. Jana Míková. Radek Krzyžanek

Systém rizikové analýzy při sta4ckém návrhu podzemního díla. Jan Pruška

INDUKTIVNÍ STATISTIKA

Doba života LED a LED svítidel a její značení. Jakub Černoch

Časové řady, typy trendových funkcí a odhady trendů

Václav Jirchář, ZTGB

Tématické okruhy pro státní závěrečné zkoušky. bakalářské studium. studijní obor "Management jakosti"

TLOUŠŤKOVÁ A VÝŠKOVÁ STRUKTURA A JEJÍ MODELOVÁNÍ

Pearsonůvχ 2 test dobré shody. Ing. Michal Dorda, Ph.D.

Nelineární problémy a MKP

Tématické okruhy pro státní závěrečné zkoušky. bakalářské studium. studijní obor "Management jakosti"

Tématické okruhy pro státní závěrečné zkoušky. bakalářské studium. studijní obor "Management jakosti"

2. Základní typy dat Spojitá a kategoriální data Základní popisné statistiky Frekvenční tabulky Grafický popis dat

You created this PDF from an application that is not licensed to print to novapdf printer (

Testování statistických hypotéz

Lineární regrese. Komentované řešení pomocí MS Excel

LINEÁRNÍ REGRESE Komentované řešení pomocí programu Statistica

TECHNICKÁ UNIVERZITA V LIBERCI

10. Předpovídání - aplikace regresní úlohy

Zátěžové testy aplikací

Pravděpodobnost a matematická statistika Doc. RNDr. Gejza Dohnal, CSc. dohnal@nipax.cz

Globální strategie, podnikové procesy, IT strategie. Jaroslav Žáček

1. Číselné posloupnosti - Definice posloupnosti, základní vlastnosti, operace s posloupnostmi, limita posloupnosti, vlastnosti limit posloupností,

Příručka k měsíčním zprávám ING fondů

Sigma Metric: yes or no?

Tomáš Karel LS 2012/2013

UNIVERZITA OBRANY Fakulta ekonomiky a managementu. Aplikace STAT1. Výsledek řešení projektu PRO HORR2011 a PRO GRAM

Agenda. Docházka Odhadování Neohlášený test Vedení projektů Historie projektů

Gradua-CEGOS, s.r.o. člen skupiny Cegos MANAŽER KVALITY PŘEHLED POŽADOVANÝCH ZNALOSTÍ K HODNOCENÍ ZPŮSOBILOSTI

A7B36SI2 Tematický okruh SI11 Revidoval: Martin Kvetko

5 Vícerozměrná data - kontingenční tabulky, testy nezávislosti, regresní analýza

Management sítí OSI management framework SNMP Komerční diagnostické nástroje Opensource diagnostické nástroje

Časové řady, typy trendových funkcí a odhady trendů

Hodnocení a modelování populačních dat na příkladu epidemiologie vážných chorob: I. Analýza dat, princip predikcí.

Pearsonův korelační koeficient

Bodové a intervalové odhady parametrů v regresním modelu

Pravděpodobnost a matematická statistika Doc. RNDr. Gejza Dohnal, CSc.

Zavedeme-li souřadnicový systém {0, x, y, z}, pak můžeme křivku definovat pomocí vektorové funkce.

Transkript:

softwaru Radek Mařík ČVUT FEL, K13133 September 6, 2011 Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 1 / 42

Obsah 1 Softwarové metriky Definice Metriky kvality produktu Metriky kvality běhu procesu Metriky kvality údržby 2 Spolehlivost Definice Statické modely Dynamické modely Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 2 / 42

Softwarové metriky Metriky kvality softwaru [Kan95] Definice Metriky produktu popisují charakteristiky produktu jako je velikost, komplexity, navrhové vlastnosti, výkonnost, úroveň kvality, apod. Procesní metriky mohou být využity při zlepšování vývoje softwaru a procesu údržby. efektivita odstraňování defektů během vývoje, vzor přírustků defektů během testování, doba odezvy procesu oprav. Metriky projektu popisují charakteristiky projektu jeho provedení. počet vývojařů softwaru, vývoj personálu během životního cyklu softwaru, cena, rozvrh, produktivita. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 4 / 42

Softwarové metriky Metriky kvality softwaru [Kan95] Definice jsou podmnožinou softwarových metrik. zaměřují se na aspekty kvality produktu, procesu a projektu. metriky finálního produktu, metriky průběhu procesu. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 5 / 42

Softwarové metriky Metriky kvality produktu Metriky kvality produktu - orientované na zákazníka [Kan95] Střední doba k selhání(mttf - mean time to failure) často se používá v bezpečnostně kritických systémech jakou jsou systémy řízení letového provozu, letecká elektrotechnika a zbraně. implementačně velmi drahé. Intensita defektů Obecný koncept rychlosti defektů vychází z počtu defektů vzhledem k možnosti vzniku chyb v určitém časovém rámci. Ve jmenovateli vystupuje velikost softwaru: KLOC (thousand lines of code)... tisíce řádek kódu, SSI (shipped source instructions)... předané zdrojové instrukce, CSI (changed source instructions)... změněné zdrojové instrukce, problémy s vlastním počítáním Počítej pouze proveditelné řádky. Počítej proveditelné řádky a definice dat. Počítej proveditelné řádky, definice dat a komentáře. Počítej proveditelné řádky, definice dat, komentáře a příkazy řízení dávek. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 7 / 42

Softwarové metriky Metriky kvality produktu Metriky kvality produktu z pohledu zákazníka [Kan95] Problémy hlášené zákazníkem měří potíže zákazníka používajícího produkt. Metrika problémů se obvykle vyjadřuje pomocí problémů vztažených na uživatele a měsíc (PUM - per user month). PUM = Celkový počet problémů, které ohlásili zákazníci (skutečné defekty a potíže nevztahující se k defektům) za danou časovou jednotku Celkový počet licencovaných měsíců pro daný software za danou časovou jednotku Měl by se rovněž monitorovat celkový počet problémů zákazníka. Spokojenost zákazníka se často měří pomocí průzkumů použitím pětibodové škály: Velmi spokojen Spokojen Neutrální Nespokojen Velmi nespokojen Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 8 / 42

Softwarové metriky Metriky kvality průběhu procesu [Kan95] Metriky kvality běhu procesu Metriky kvality průběhu procesu jsou méně formálně definované. jednoduše znamenají zaznamenávání přírustků defektů během formálního testování. Hustota defektů během formálního testování vyšší rychlosti defektů nalezených během testování indikují vyšší hladinu injektování chyb do softwaru během jeho vývoje. defekty na KLOC Vzor přírustků defektů během formálního testování může indikovat, že testování začalo pozdě, že testovací sada nebyla dostatečná, nebo že testování skončilo předčasně. Profil odstraňování defektů podle fází vyžaduje trasování defektů ve všech fázích vývojového cyklu. Efektivnost odstraňování defektů DRE = Defekty odstraněné během vývojové fáze Defekty setrvávající v produktu 100% Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 10 / 42

Softwarové metriky Metriky kvality údržby I [Kan95] Metriky kvality údržby BMI = Oprava nevyřízených věcí vyjadřuje nároky na pracovní zátěž vázanou na údržbu softwaru. Počet ohlášených problémů, které zůstávají otevřené na konci každého měsíce či týdne. Řídicí index nevyřízených věcí (BMI - backlog management index) Počet problémů uzavřených problémů během daného měsíce 100% Počet přírustků problémů během měsíce Čas odezvy opravy se obvykle počítá jak pro všechny problémy tak i pro problémy rozdělené podle úrovně vážnosti: střední doba života problému od otevření po uzavření Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 12 / 42

Softwarové metriky Metriky kvality údržby II [Kan95] Metriky kvality údržby Procento delikventních oprav: Jestliže doba opravy překročí časové limity vzhledem k vážnosti, je klasifikována jako delikvent. Procento delikventních oprav = Počet oprav, které překročily časový limit vzhledem k vážnosti 100% Celkový počet oprav odvedených ve specifikovaném čase Metrika vadné opravy, kvalita opravy měří procento vadných oprav z celkového počtu za nějaký časový interval. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 13 / 42

softwaru [Kan95] Spolehlivost Definice Spolehlivost je často definována jako pravděpodobnost, že systém vozidlo, stroj, zařízení, atd. bude vykonávat svou zamýšlenou funkci v daných operačních podmínkách po specifikovou dobu. Modely spolehlivosti softwaru se používají k odhadu spolehlivosti nebo počtu zbývajících defektů softwarového produktu, který byl uvolněn mezi zákazníky. Důvody: 1 objektivní vyjádření kvality produktu, 2 plánování zdrojů pro fázi údržby softwaru. Sledovanou proměnnou studovaných kritéríı je počet defektů (nebo rychlost defektů normalizavaná počtem řádku kódu) za daný časový interval (týdny, měsíce, atd.), nebo doba mezi dvěma selháními. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 15 / 42

softwaru [Kan95] Spolehlivost Definice Statický model používá atributy projektu nebo programových modulů k odhadu počtu defektů v softwaru. Parametry modelů jsou odhadovány na základě řady předchozích projektů. Dynamický model používá průběžného vývoje vzorů defektů k odhadu spolehlivosti finálního produktu. Parametry dynamických modelů jsou odhadovány na základě mnoha údajů zaznamenaných o hodnoceném produktu k danému datu. Kategorie: Modeluje se celý vývojový proces. Model vychází s Rayleighova modelu. Modeluje se fáze formálního testování. Model vychází z exponenciálního modelu a jiných modelů růstu spolehlivosti. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 16 / 42

Weibullova distribuce [Kan95] Spolehlivost Statické modely jedna ze tří známých distribucí extremálních hodnot, konce hustory pravděpodnosti se bĺıží asymptoticky k nule, ale nikdy ji nedosáhnou. kumulativní distribuční funkce (CDF): F (t) = 1 e (t/c)m funkce hustoty pravděpodobnosti (PDF): f (t) = m ( t ) m e (t/c) m t c kde m je tvarový parametr, c je parametr měřítka, t je čas. Pokud se aplikuje v softwaru, pak PDF typicky znamená hustotu defektů (rychlosti) v době přírustkového vzoru defektů (platné defekty) a CDF znamená kumulativní vzor přírustku defektů. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 18 / 42

Tvar Weibullovy distribuce Statické modely 1.5 m=10 1 m=0.5 PDF m=4 0.5 m=2 m=1 0 0 2 4 6 t Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 19 / 42

Rayleighův model [Kan95] Spolehlivost Statické modely patří do rodiny Weibullových distribucí. m = 2 kumulativní distribuční funkce (CDF): F (t) = 1 e (t/c)2 pravděpodnost hustoty (PDF): f (t) = 2 t ( t c ) 2 e (t/c) 2 t m je okamžik, ve kterém křivka dosahuje svéha maxima. t m = c 2 Jakmile je odhadnut t m, může být určen tvar celé křivky. Plocha pod křivkou do t m je 39.35% celkové plochy. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 20 / 42

Rayleighův model v praxi [Kan95] Statické modely Při praktických aplikacích se vzorec násobí konstantou K (K je celkový počet defektů nebo celková kumulativní rychlost defektů). c = t m 2 F (t) = K [1 e (1/2t2 m)t 2] f (t) = K [ ( 1 t m ) ] 2 te (1/2t2 m)t 2 Softwarové projekty sledují vzor životního cyklu popsaný křivkou Rayleighovy hustoty. Vzor odstraňování závad také sleduje Rayleighův vzor. Celkový skutečný počet defektů se liší do 5% až 10% od počtu defektů predikovaný modelem. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 21 / 42

Základní předpoklady [Kan95] Spolehlivost Statické modely Rychlost defektů pozorovaných během vývojového procesu je positivně korelovaná s rychlostí defektů v poli nasazení Za předpokladu stejné rychlosti injektáže chyb, čím více defektů je objeveno a odstraněno dříve, tím méně jich zůstane na pozdější fáze. Princip Udělej to správně hned napoprvé : jestliže každý krok vývojového procesu se provede s minimálním vznikem chyb, pak finální produkt bude dobrý. Rovněž znamená, že vzniklé chyby se mají odstraňovat co nejdříve. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 22 / 42

Statické modely Základní předpoklady v grafech: korelace [Kan95] 30 20 Defect Rate 10 0 0 5 10 15 20 Development Phase Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 23 / 42

Statické modely Základní předpoklady v grafech: odstraňování defektů [Kan95] 20 15 Defect Rate 10 5 0 0 20 40 60 Development Phase Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 24 / 42

Statické modely Spolehlivost a validace predikce [Kan95] Spolehlivost vyjadřuje stupeň změny výstupu modelu vzhledem možnostem fluktuací ve vstupních datech. Čím užší je konfidenční interval, tím je odhad spolehlivější. Větší vzorky vedou na užší konfidenční intervaly. Používejte pokud možno více modelů a spoléhejte se na jejich společné hodnocení. Základní podmínkou dosažení platnosti predikce je zajištění přesnosti a spolehlivosti vstupních dat. Platnost se hodnotí porovnáním odhadů z modelů a jejich skutečných hodnot. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 25 / 42

Dynamické modely Model založené na exponenciálním rozložení a růstu [Kan95] spolehlivosti Modely růstu spolehlivosti se obvykle odvozují z dat fáze formálního testování. Odůvodnění výchází z toho, že vzory procesu přírustků defektů této fáze jsou vhodným indikátorem spolehlivosti produktu pociťovanou zákazníky. Během tohoto testování po fázi vývoje, kdy se objevují selhání, identifikují a opravují defekty, se softwarový produkt stává stabilnější a jeho spolehlivost roste s časem. Tyto modely se proto nazývají modely růstu spolehlivosti. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 27 / 42

Exponenciální model [Kan95] Spolehlivost Dynamické modely další speciální případ Weibullovy rodiny, m = 1 kumulativní distribuční funkce (CDF): hustota pravděpodobnosti (PDF): F (t) = 1 e (t/c) = 1 e λt f (t) = 1 c e (t/c) = λe λt kde c je parametr měřítka, t je čas, λ = 1/c λ se nazývá rychlost detekce chyby nebo okamžitá rychlost selhání (ve statistice také rychlost hazardu). V praktických aplikacích se vzorce přenásobují celkovým počtem defektů nebo celkovou kumulativní rychlost defektů K. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 28 / 42

Dynamické modely Exponenciální model - distribuce hustoty 100 80 Defects per KCSI 60 40 20 0 0 20 40 60 Week Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 29 / 42

Modely růstu spolehlivosti [Kan95] Dynamické modely Ne mnoho modelů je ověřeno praktickým nasazením s reálnými daty. Model doby mezi selháním: Očekává se, že doby následných selhání se prodlužují po každém odstranění defektu produktu. Často se předpokládá, že se doba mezi selháním (i 1) a i řídí rozložením, jehož parametry mají vztah k počtu skrytých defektů setrvávajících v produktu po (i 1) selhání. Modely počtu vad: počet vad či selhání (nebo normalizované rychlosti) ve specifikovaném časovém intervalu. Časový interval je pevný apriori. Počet defektů nebo selhání pozorovaných během intervalu se považuje za náhodnou proměnnou. Očekává se, že se počet pozorovaných selhaní za jednotku času bude zmenšovat. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 30 / 42

Dynamické modely Model Jelinski-Moranda (J-M) [Kan95] jeden z prvních modelů softwarové spolehlivosti (1972), model doby mezi selháním, Předpoklady: Software má N nedostatků na počátku testování. Selhání se projeví čistě náhodně. Všechny vady přispívají rovnocenně k příčině selhání během testování. Čas opravy je zanedbatelný. Oprava defektu je dokonalá. Hazardní funkce v čase t i, doba mezi selháním (i 1) a i, je dána: Z(t i ) = φ[n (i 1)] kde φ je konstanta úměrnosti. Hazardní funkce je konstantou mezi dvěma selháními, ale zmenšuje se po krocích φ po každém odstranění defektu. Jak se jednotlivé vady odstraňují, doba k následnému selhání se očekává býti delší. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 31 / 42

Modely Littlewooda (LW) [Kan95] Dynamické modely podobné modelu J-M, Předpokládá se, že různé vady mají různou velikost a nerovnost příspěvků k selháním. Vady většího rozsahu mají tendenci být detekovány a opraveny dříve. Uvažováním velikosti chyby se předpoklady modelu přibližují realitě. Ve podmínkách reálného softwaru, předpoklad rovnocenné rychlosti selhání pro všechny vady běžně vůbec nenastává. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 32 / 42

Dynamické modely Goel-Okumotův (G-O) model nedokonalého opravování [Kan95] J-M vychází z dokonalé opravy zanedbatelný čas, vada skutečně opravena. Procento vadných oprav se pro velké komerční softwarové společnosti pohybuje okolo 1% až 2%, může však přesáhnout i 10%. Předpoklad nedokonalého opravování. Hazardní funkce v čase t i, době mezi selháním (i 1) a i, je dána: Z(t i ) = [N p(i 1)]λ kde N je počet vad na počátku testování, p je pravděpodobnost nedokonalé opravy, λ je rychlost selhání na vadu. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 33 / 42

Dynamické modely Goel-Okumotův model nehomogenního Poissonova procesu (NHPP) [Kan95] modeluje počet selhání pozorovaný v daných intervalech testování předpoklady: Kumulativní počet selhání pozorovaný v čase t, N(t), se modeluje jako nehomogenní Poissonův proces - Poissonův proces s časově závislou rychlosti selhání. Časově závislá rychlost selhání sleduje exponenciální distribuci. Model je dán kde P{N(t) = y} = [m(t)]y y! e m(t), y = 0, 1, 2, m(t) = a(1 e bt ) λ(t) m (t) = abc bt Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 34 / 42

Dynamické modely NHPP model [Kan95] m(t) je očekávaný počet selhání v čase t, λ(t) je hustota pravděpodobnosti, a je očekávaný počet selhání, který by mohl být pozorován, b je rychlost detekce vad vztažená na vadu. Počet vad a, které se mají detekovat, se považuje za náhodnou proměnnou, jejíž pozorovaná hodnota zavisí na testu a dalších faktorech prostředí. Tím se tento model principiálně liší od ostatních, které předpokládají fixní neznámý počet vad. Vyskytuje se řada případů, kdy rychlost selhání nejprve roste a poté klesá (Goelův model zobecněného nehomogenního Poissonova procesu): m(t) = a(1 e btc ) λ(t) m (t) = abc btc t c 1 b a c jsou konstanty, které odrážejí kvalitu testování. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 35 / 42

Dynamické modely Musa-Okumotův (M-O) model logaritmického Poissonova prováděcího času [Kan95] Předpoklad, že se pozorovaný počet selhání v daném čase, τ, řídí nehomogenním Poissonovým procesem. Funkce střední hodnoty se snaží postihnout to, že pozdější opravy mají menší efekt na spolehlivost softwaru než počáteční opravy. Logaritmický Poissonův proces se velmi vhodný k popisu vysoce neuniformních operativních profilů uživatele, kdy některé funkce jsou prováděny mnohem častějí než jiné. Funkce střední hodnoty je dána vztahem u(τ) = 1 θ ln(λ 0θ τ + 1) kde λ 0 je počáteční hustota selhání, θ je rychlost redukce normalizované intensity selhání na jednotku selhání. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 36 / 42

Zpožděný S model [Kan95] Spolehlivost Dynamické modely Testovací proces není jenom o detekování chyb, ale i o lokalizaci defektů. Mezi časem prvé detekce selhání a časem nahlášní může být významné zpoždění, protože je potřeba analyzovat selhání. Model zpožděného rustů spolehlivosti S tvaru je založen na nehomogenním Poissonovým processem s různou funkcí střední hodnoty, aby se popsalo zpoždění nahlášení selhání: m(t) = K[1 (1 + λt)e λt ] kde t je čas, λ je rychlost detekce chyby, K je celkový počet defektů nebo celková kumulativní rychlost defektů. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 37 / 42

Dynamické modely Funkce střední hodnoty S modelu se zpožděním 8 6 m(t) 4 2 0 0 5 10 15 20 t Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 38 / 42

Dynamické modely Inflexní S model [Kan95] další S model růstu spolehlivosti, Model popisuje jevy detekce selhání softwaru, jestliže detekované defekty jsou vzájemně závislé. Čím více defektů detekujeme, tím se více nedetekovaných selhání stává detekovatelných. významné zlepšení ohledně předpokladu nezávislosti vad programu. založeno na nehomogenním Poissonově procesu, model funkce střední hodnoty je kde I (t) = K 1 e λt 1 ie λt t je čas, λ je rychlost detekce chyb, i je faktor inflexe, K je celkový počet defektů nebo celková kumulativní rychlost defektů. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 39 / 42

Dynamické modely Inflexní S model - funkce střední hodnoty 15 10 I(t) 5 0 0 5 10 15 20 t Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 40 / 42

Dynamické modely Modely zpožděného S a inflexního S [Kan95] zahrnují dobu učení testerů, kdy se seznamují se softwarem na začátku doby testování. Doba učení se asociuje se vzory zpoždění nebo inflexí popisovaného funkcemi střední hodnoty. Srovnání: Exponenciální model předpokládá vrchol přírustků defektů na počátku fáze testování a poté klesá. Model zpoždění S předpokládá lehce zpožděný vrchol. Model inflexe S předpokládá pozdější a ostřejší vrchol. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 41 / 42

Literatura I Spolehlivost Dynamické modely Stephen H. Kan. Metrics and Models in Software Quality Engineering. Addison-Wesley, 1995. Radek Mařík (marikr@felk.cvut.cz) Spolehlivost softwaru September 6, 2011 42 / 42