Co je to chyba / defekt / bug

Co je to chyba
Jedná se o cokoliv, co není v souladu s původním záměrem (zadáním), může se jednat o skoro bezvýznamné chyby např. v počítačových hrách nebo o závažné chyby způsobující ztráty na životech.

Pojmy pro selhání softwaru:
– je jich mnoho, záleží, na jakém projektu se zrovna pracuje
– vada, závada, problém, omyl, událost, anomálie, odchylka, selhání, nekonzistence, vlastnost, chyba
– dále je spousty dalších výrazů, které se využívají výhradně v konverzacích mezi programátory a dále se neuvádějí 🙂
– pojmů je mnoho, aby se dala lépe „odstupňovat“ závažnost problému a více vysvětlit o co se jedná

Chyba v softwaru: Formální definice
– je potřeba vysvětlit další pojem – specifikace produktu => dohoda mezi vývojovým týmem a zadavatelem projektu, popisuje, jak se software bude chovat, nebude chovat, jaké bude mít funkce

1) Software nedělá něco, co by podle specifikace produktu dělat měl.

2) Software dělá něco, co by podle údajů specifikace produktu neměl dělat.

3) Software dělá něco, o čem se produktová specifikace nezmiňuje.

4) Software nedělá něco, o čem se produktová specifikace nezmiňuje, ale měla by se zmiňovat.

5) Software je obtížně srozumitelný, těžko se s ním pracuje, je pomalý, nebo – podle názoru testera softwaru – jej koncový uživatel nebude považovat za správný.

 

Příklad s kalkulačkou
– nesčítá, nebo sčítá špatně – pravidlo 1
– zhavaruje, zablokuje se, zamrzne – pravidlo 2
– kromě sčítání, odčítání, násobení, dělení, umí dokonce odmocňovat, ve specifikaci to není popsáno – pravidlo 3
– vybité baterie, ve specifikaci se počítalo s tím, že baterie budou vždy nabité, v případě, že jsou baterie vybité a kalkulačka zobrazuje špatné výsledky – pravidlo 4
– tlačítka jsou příliš malá, špatně rozložená, displej je špatně čitelný – pravidlo 5

 

Proč chyby vznikají:
– specifikace -> návrh ->programový kód -> jiné
– specifikace – není sepsána, není dostatečně podrobná, neustále se mění, neprobrali ji všichni členové týmu
– návrh – uspěchaný, často se mění, není dostatečně prodiskutován
– programový kód – i lidské chyby se připouštějí

 

Náklady na chyby (dle okamžiku nalezení chyby):
– specifikace -> návrh -> kódování -> testování -> uvedení na trh
– čím dříve se chyba odhalí, tím méně stojí a tím snadnější je tuto chybu napravit

You May Also Like

About the Author: Sandra Atiová