Testování softwaru - koncept kvality

Podobné dokumenty
Úvod do testování a verifikace

Vývoj řízený testy Test Driven Development

Metriky softwarové kvality

Testování softwaru. 10. dubna Bořek Zelinka

Testování a verifikace softwaru

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

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

Zátěžové testy aplikací

Formální Metody a Specifikace (LS 2011) Formální metody pro kyber-fyzikální systémy

Nebojte se přiznat, že potřebujete SQA

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

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

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

Kvalita procesu vývoje SW. Jaroslav Žáček

Lean Six Sigma - DMAIC

Automatizace testování

PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

Řízení reálných projektů, agilní metodiky

Zuzana Šochová MFF Modelování a realizace softwarových projektů

Standardy/praktiky pro řízení služeb informační bezpečnosti. Doc. Ing. Vlasta Svatá, CSc. Vysoká škola ekonomická Praha

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

Outsourcing v podmínkách Statutárního města Ostravy

14 Úvod do plánování projektu Řízení projektu

Audit managementu údržby

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

Jak testovat software v praxi. aneb šetříme svůj vlastní čas

Firemní e-learning - bez learningu?

A7B36SI2 Tematický okruh SI11 Revidoval: Martin Kvetko

curriculum vitae Pozice: Ředitel, jednatel Zodpovědnost za aktivity související s řízením společnosti

CASE. Jaroslav Žáček

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

A7B36SI2 Tematický okruh SI08 Revidoval: Martin Kvetko

ŘÍZENÍ JAKOSTI ENVIRONMENTÁLNÍ MANAGEMENT BEZPEČNOST PRÁCE ING. PETRA ŠOTOLOVÁ

14 Úvod do plánování projektu Řízení projektu

WebWalker

Česká letecká servisní a. s.

BMW FUTURE MOBILITY DEVELOPMENT CENTER (FMDC) Mikroregion Sokolov východ, Katharina Will, Petr Pospisil

Analytické metody v motorsportu

Kvalita v ošetřovatelské péči. Irena Pejznochová Česká asociace sester Česká společnost pro jakost 30.dubna 2010

Návrh softwarových systémů - softwarové metriky

Odbor informatiky a provozu informačních technologií

Softwarový proces. Bohumír Zoubek, Tomáš Krátký

10 Metody a metodologie strukturované analýzy

Kvalita procesu vývoje (SW) Jaroslav Žáček

Návrhář podnikových procesů

ISO 9000, 20000, Informační management VIKMA07 Mgr. Jan Matula, PhD. III. blok

INFORMAČNÍ SYSTÉMY , Ing. Jiří Mráz

WORKSHOP oboru Jaderná energetika

Agile. nejžádanější způsob vývoje software. Tomáš Tureček. Business consultant, Lean&Agile coach Tieto

Rozvoj a údržba systémů

Návrh softwarových systémů - architektura softwarových systémů

Analytická specifikace a její zpracování

SPECIFIKA CERTIFIKACE PODLE ČSN EN ISO 9001:2001 V ORGANIZACÍCH, KTERÉ SE ZABÝVAJÍ VÝVOJEM SOFTWARE

Informatika pro záchranu života

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

2013 IBM Corporation

JAROSLAV NENADÁL / DARJA ~OSKIEVIČOVÁ RUŽENA PETRÍKOVÁ / JIRÍ PLURA JOSEF TOŠENOVSKÝ MODERNI MANAGEMENT JAKOSTI MANAGEMENT PRESS, PRAHA 2008

Juranova spirála. Koncepce řízení jakosti

Úvod 17 ČÁST 1. Kapitola 1: Principy návrhu doménové struktury služby Active Directory 21

CobiT. Control Objectives for Information and related Technology. Teplá u Mariánských Lázní, 6. října 2004

Agilní metodiky vývoje softwaru

ZMĚNA ČESKÉHO OBRANNÉHO STANDARDU. AAP-48, Ed. B, version 1

Bezpečnostní politika společnosti synlab czech s.r.o.

Návrh softwarových systémů - architektura softwarových systémů

KIV/ASWI 2007/2008 Techniky zajištění kvality software. Kvalita software Techniky včasné detekce

Přednáška VŠFS. Koncepty a řízení firemního nákupu

Očekávaný vývoj managementu kvality v automobilovém průmyslu Jindřich Znamenáček

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

Infor Performance management. Jakub Urbášek

Organizace předmětu, podmínky pro získání klasifikovaného zápočtu

CASE nástroje. Jaroslav Žáček

Povolání Vyšší odborné vzdělání; Bakalářský studijní program

Administrační systém ústředen MD-110

[ 1 ] Ing. František Chuchma, CSc. Seminář SVP/SDP, Státní ústav kontrolu léčiv

5 Požadavky a jejich specifikace

Příloha č. 5 ZD - Specifikace rekvalifikačních kurzů

Manažerská psychologie 1

KATALOG SLUŽEB NÁSLEDNÉ PODPORY

12 Zajištění kvality programového vybavení

Řízení vztahů se zákazníky

UNIVERZITA PRO OBCHODNÍ PARTNERY. Úvod do Midmarket, BP Cloud programy Miroslav Černík, Midmarket Manager

Účel, použití, analýza rizik Milan Turinský Únor 2018

Kvalita a správa dat Data Quality

Profilová část maturitní zkoušky 2013/2014

12 Zajištění kvality programového vybavení

Návod k požadavkům ISO 9001:2015 na dokumentované informace

Inovační vouchery s Univerzitou Hradec Králové. doc. Ing. Mgr. Petra Marešová, Ph.D. Ing. Richard Cimler

Custom Code Management. Přechod na S/4HANA

FOXCONN - PŘÍPADOVÁ STUDIE Mgr. Radka Svobodová, MBA Vojtěch Babka

Družicová navigace a kosmické technologie jako předpoklad moderní dopravní telematiky. Karel Dobeš Vládní zmocněnec pro spolupráci s GSA

1 ÚVOD DO BPM. 1.1 Stručná historie BPM 5 KONTROLNÍ OTÁZKA Potřeba ohodnocení obchodu

Uživatelské hodnocení kvality a dostupnosti ICT služeb. Zbyšek Chvojka, Mylène Veillet

Úvod do mobilní robotiky AIL028

Výběrové řízení. Informační systém Autoklubu ČR. Autoklub České republiky. Strana 1 z 8

Paralení programování pro vícejádrové stroje s použitím OpenMP. B4B36PDV Paralelní a distribuované výpočty

Strojírenství. Hospodářský cyklus, digitalizace a automatizace

Profilová část maturitní zkoušky 2017/2018

2012, Brno Ing.Tomáš Mikita, Ph.D. Geodézie a pozemková evidence

MULTIMEDIÁLNÍ A HYPERMEDIÁLNÍ SYSTÉMY

Transkript:

Testování softwaru - koncept kvality Radek Mařík CA CZ, s.r.o. September 14, 2007 Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 1 / 34

Obsah 1 Proč testovat Studie softwarových projektů Charakteristika testera Typické problémy vývoje softwaru 2 Definice testování softwaru 3 Koncept teorie kvality Pojem kvality TQM Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 2 / 34

Proč testovat Studie softwarových projektů Studie softwarových projektů IBM s Consulting Group, June 1994 průzkum 24 významných společností [?] 55% softwaru vyviuto za cenu větší než plánováné, 68% vyvíjeno delší dobu než predikováno, 88% muselo být podstatně přenavrhnuto. The Standish Group, 1994 studie 8 380 projektů, 31% softwarových projektů přerušena, náklady 53% dokončených projektů se pohybují okolo 189% původních odhadů, z těchto 53% pouze 42% obsahuje původní sadu navrhovaných vlastností a funkcí, pouze 9% z těchto projektů bylo ukončeno v dohodnuté době a ceně. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 4 / 34

Proč testovat Statistika softwarových projektů Studie softwarových projektů Obecně 5 ze 6 softwarových projektů je neúspěšných, 1/3 projektů je přerušena, projekty předávány za dvojnásobnou cenu než dohodnuto, projekty se předávají za dvojnásobně dlouhou dobu než se plánuje. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 5 / 34

Proč testovat Vývoj úspěšnosti projektů (CHAOS) Studie softwarových projektů Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 6 / 34

Proč testovat Rozpočty projektů (CHAOS) Studie softwarových projektů 200 180 160 140 120 100 80 60 40 20 0 1994 1996 1998 2000 2002 2004 Series1 189 142 69 45 43 43 Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 7 / 34

Proč testovat Poměr vývojář/tester: [Kit95] Charakteristika testera Obecně minulost: 1 tester, 9 vývojářů, nové trendy: 2 testeři, 3 vývojáři, může být 10:1 až 1:10, Konkrétně Microsoft, 1992: 2:3, Lotus (pro 1-2-3 Windows): 2:1, průměr 4 velkých firem (1992): 1:2 Microsoft, Borland, WordPerfect, Novell Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 9 / 34

Proč testovat Odborný profil dovedností testera Charakteristika testera Znalosti znalost systému či produktu, znalosti a zkušenosti s programováním porozumění, příprava podpory, Postupy analytické postupy, orientace na detaily, schopnost myslet kreativně, dobrá představivost Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 10 / 34

Proč testovat Osobní profil dovedností testera Charakteristika testera Charakter trpělivost, sebe-motivace, vytrvalost. Týmová práce dobré komunikační dovednosti, Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 11 / 34

Ariane 5 Proč testovat Typické problémy vývoje softwaru Situace Řada motorů na tekuté a tuhé palivo nahrazena několika s větším tahem. 4.června, 1996, 40 s po startu ve výšce okolo 3700 m se nosič odklonil od své dráhy, rozlomil a explodoval. Raketa, nesené 4 satelity nepojištěny, 500 miliónů $. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 13 / 34

Selhání nosiče Ariane 5 Proč testovat Typické problémy vývoje softwaru Status testování Chyba Žádost o přetestování stabilizační plošiny převzaté z Ariane 4 v podmínkách Ariane 5 byla vetována CNES z důvodu vysokých nákladů. Sextant Avionique po havárii potvrdila, že by závadu svými testy detekovala. softwarová vyjímka v obou Stabilizačních referenčních systémech (SRI). nechráněný převod z 64bitového reálného čísla na 16bitové celé číslo. SRI má význam pouze před zvednutím nosiče, ačkoliv je operativní jestě dalších 50 s. přetečení nastalo z důvodu rozdílných drah. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 14 / 34

Shrnutí Arian 5 Proč testovat Typické problémy vývoje softwaru Typické chyby při procesu vývoje softwaru nedostatek času - veto na testování malé či chybně rozložené náklady - veto na testování, chybné nebo chybějící požadavky - jak dlouho by měl podsystém fungovat, chyby v kódu - nechráněné převody, opakované využití - změna specifikací, řada chyb vzniká striktním oddělením vývoje softwaru a jeho testování. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 15 / 34

Radiační předávkování Proč testovat Typické problémy vývoje softwaru Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 16 / 34

Therac 25 Proč testovat Typické problémy vývoje softwaru červen 1985 - leden 1987 lineární urychlovač používaný v lékařství k ozařování rakovinných nádorů, povrchové tkáně ozařovány elektrony, pro hlubší tkáně gama záření, 6 incidentů přezáření, z toho 3 smrtelné, 20000 rad místo 86 rad, systém reálného času vytvořený 1 programátorem, neexistující formální specifikace a testovací kritéria, hardwarové zámky nahrazeny programovými, pokud byla vstupní data změněna mezi 1 až 8 s, pak zářič a polohovací stůl pracovaly v různých módech, k nastavování logické proměnné použita inkrementace bytové proměnné. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 17 / 34

Shrnutí Therac 25 Proč testovat Typické problémy vývoje softwaru uživatelské rozhranní kontra bezpečnost, složitý návrh systémové testování není dostatečné, chybějící specifikace, typicky problémy systémů: paralelních (angl. parallel) souběžných (angl. concurrency). Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 18 / 34

Zkušenosti z chyb Proč testovat Typické problémy vývoje softwaru Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 19 / 34

Proslulé chyby I Proč testovat Typické problémy vývoje softwaru Oběžná dráha Apollo 13: program testován za pomalu měnících se podmínek. Při velké dynamice došlo k vydělení nulou na netestované cestě. Mariner let k Venuši: 80 miliónů $, záměna za + vedla k odklonu z dráhy, Minutí Merkuru: proměnná Fortranu DO10I DO 10 I=1.5 DO 10 I=1,5 Selhání rakety Patriot: během Války v zálivu v 1991 kvůli kumulativní chybě v časové synchronizaci (ve skutečnosti: 0.34 s, 100 hodin; navrženo: 14 hodin), F16 simulace: letadlo se překlápělo při překročení rovníku, Návrh jaderné elektrárny: v roce 1979 muselo být 5 jaderných elektráren uzavřeno z důvodu poddimenzování potrubí, velikost vektoru počítána jako součet složek, modul byl napsán studentem na praxi. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 20 / 34

Proslulé chyby II Proč testovat Typické problémy vývoje softwaru Sonda Marsu Vymazán přistávací modul s cílem uvolnit paměť. Modul navigace antény k Zemi vyžadoval navigační funkce obsažené v přistávacím modulu. Selhání regulace síťového systému Kalifornie: 1998 Nezbyl čas na řádné testování komunikačního systému. Vzniklé zpoždění stálo přibližně 90 miliónů $. Zpoždění otevření letiště v Denveru: 1995 Chyby v systému řízení zavazadel způsobily rozdrcení automatizovaných vozíků se zavazadly o stěny. Letiště bylo otevřeno o 16 měsíců později se ztrátou 3.2 miliardy $ a s manuálním zavazadlovým systémem. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 21 / 34

Porucha Pendolina Proč testovat Typické problémy vývoje softwaru 2005-2006 89 závad za první měsíc provozu, závady v obslužném software pomocných měničů (topení, osvětlení), případná ztráta se pohybovaly okolo 43 miliónů euro, Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 22 / 34

Definice testování softwaru Testování softwaru - výchozí definice Hetzel 1973 Testování je proces určení věrohodnosti, že program či systém dělá to, co se o něj předpokládá. Myers 1979 Testování je proces spouštění programu či systému s úmyslem nalézt chyby. Hetzel 1983 Testování je jakákoliv aktivita s cílem vyhodnotit atribut či schopnost plnění požadovaných výsledků programem nebo systémem. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 23 / 34

Definice testování softwaru Testování softwaru - přehled definic Testování je kontrola programů vzhledem ke specifikacím, nalézání chyb v programech, určení míry akceptování uživatelem, ujištění se o tom, že systém je připraven k používání, získání důvěry, že program pracuje, prezentace, že program běží správně, demonstrace toho, že program je bez chyb, porozumění omezení výkonnosti programu, učení se toho, co systém není schopen dělat, hodnocení schopností programu, verifikace dokumentace. Testování je měření kvality softwaru. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 24 / 34

Definice kvality Koncept teorie kvality Pojem kvality Rozsah od inženýrských specifikací na úrovni dílny až po definice na úrovni společnosti: Webster s New World Dictionary Kvalita je fyzická či jiná charakteristika, která definuje základní podstatu věci či jednu z jejích vyznačných vlastností. Crosby 1979 Kvalita je mírou souhlasu s požadavky. ISO 9000 Kvalita je souhrn vlastností a charakteristik produktu či služby, která se týká schopnosti uspokojit určených nebo vyplývajících potřeb. Taguchi 1986 Kvalita je ztráta, kterou produkt způsobí společnosti po jeho dodání, způsobenou funkčními změnami a škodlivými účinky mimo těch, které vyplývají z vlastních funkcí. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 26 / 34

Aspekty kvality Koncept teorie kvality Pojem kvality operační podmínky - výkonnost v krátkodobém horizontu, spolehlivost - dlouhodobý horizont, pohled zákazníka, IKIWISI - Guaspari: I Know It When I See It [Kit95] Ideální kvalita, kterou zákazník může očekávat, je, že každý produkt poskytuje cílenou výkonnost kdykoliv je použit, za všech zamýšlených operačních podmínek, po celou dobu jeho předpokládaného života, se žádnými škodlivými postranními efekty. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 27 / 34

Kvalita softwaru Koncept teorie kvality Pojem kvality Kvalita znamená splňovat požadavky zákazníka : Faktory: Funkčnost (externí kvalita) správnost, spolehlivost, použitelnost, integrita. Inženýrské řešení (vnitřní kvalita) efektivita, testovatelnost, dokumentace, struktura. Adaptabilita (budoucí kvalita) flexibilita, opětné použití, údržba. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 28 / 34

Koncept kvality Koncept teorie kvality Pojem kvality Vztah mezi skutečnou kvalitou produktu pociťovanou zákazníkem a kvalitou měřenou na úrovni produkce: Factory production processes Product and process design Materials and supplies Components Product subsystems Finished product Factory test perfomance (Substitute performance) Factory test load Factory test method Factory test environment Transfer of ownership to customer Degree of correspondence Field usage processes Customer product configuration Customer requirements Field performance (True performance) Field environment Field operating method Field application Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 29 / 34

Koncept teorie kvality TQM Řízení celkové kvality (TQM) [Kan95] 1985 Naval Air Systems japonský způsob zlepšování kvality, znaky: kontinuální zlepšování procesu, zaměření na zákazníka, lidská stránka problému, metriky, modely, měření, analýza. Metodologie: The Malcolm Baldrige National Quality Award (MBNQA) - USA, 1988, ISO 9000, Evropská komise, Hewlett-Packard s Total Quality control (TQC), Motorola s Six Sigma Strategy, IBM Market Driven Quality Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 31 / 34

Koncept teorie kvality TQM Kĺıčové elementy vztahů TQM [Kan95] Total Quality Management Continuos Improvement Customer Focus Process Improvement Human Side of Quality Metric, Models, Measurements, and Analyses Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 32 / 34

Závěr Koncept teorie kvality TQM Základní cíle testování. Testování jako aplikace teorie kvality. Základy teorie kvality. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 33 / 34

Literatura I Koncept teorie kvality TQM Stephen H. Kan. Metrics and Models in Software Quality Engineering. Addison-Wesley, 1995. Edward Kit. Software Testing in the Real World. Addison-Wesley, 1995. Radek Mařík (Radek.Marik@ca.com) Testování softwaru - koncept kvality September 14, 2007 34 / 34