© J. Sochor, J. Ráček 1 Softwarové inspekce, recenze, přezkoumání, přezkoušení a prohlídky © J. Sochor, J. Ráček 2 Recenze software Recenze software z pohledu zajištění kvality (SQA - Software Quality Assurance) © J. Sochor, J. Ráček 3 Přínos SQA Etapa Cena nalezení a opravy Požadavky 0.75 Návrh 1.0 Kódování 1.5 Testování 3.0 Systémové testy 10.0 Provoz 60-100.0 Pozn.: Cena normalizovaná vzhledem k ceně v etapě návrhu © J. Sochor, J. Ráček 4 Efektivita přezkoušení • Konverzace • Přezkoušení mezi spolupracovníky • Neformální prezentace • Formální prezentace • Prohlídka • Recenze, inspekce méně formální více formální V literatuře je argumentováno (např. Pressman), že efektivita roste se zvyšující se formálností. © J. Sochor, J. Ráček 5 Různé „review“ techniky Formální proces Kontrolní seznam Měření Fáze přezkoušení Účinné a efektivní zjištění a odstranění všech defektů Inspekce Formální proces Představení autora Rozsáhlá diskuze Zjištění požadavků Rozlišení nejednoznačností Školení Odborné recenze Malá/žádná příprava Neformální proces Žádné měření Žádné FTR (Formal Technical Review) Minimální náročnost Školení vývojářů Krátká doba Prohlídky TYPICKÉ VLASTNOSTITYPICKÉ CÍLETYP METODY © J. Sochor, J. Ráček 6 Inspekce & recenze, prohlídky Implementace testuTestování Pracovní & finální publikacePublikace Návrh systémuNávrh podrobného kóduVývoj Plány vývojePlány Detailní požadavkyVýchozí požadavkyPožadavky PROHLÍDKAINSPEKCE, RECENZE © J. Sochor, J. Ráček 7 Zkušební, inspekční a recenzní tým • Vedoucí týmu (moderátor) • Zapisovatel • Autor • Recenzenti, inspektoři © J. Sochor, J. Ráček 8 Příprava inspektora • Ujistěte se, že rozumíte kontextu. • Projděte všechny materiály výrobku pro pochopení místa a formátu informace. • Přečtěte materiály výrobku a opatřete poznámkami. • Připomínky formulujte jako otázky. • Vyhněte se hodnocení stylu. • Informujte vedoucího recenze, pokud se nemůžete připravit. © J. Sochor, J. Ráček 9 Cíle formálního přezkoušení • Odhalit chyby ve funkci, logice a implementaci software. • Ověřit, že zkoumaná položka splňuje požadavky (odpovídá požadavkům). • Zajistit, že položka byla prezentována s použitím předdefinovaných standardů. • Zajistit jednotný vývoj. • Zvýšit řiditelnost projektů. © J. Sochor, J. Ráček 10 Provedení formálního přezkoušení • Vyhodnoťte produkt před přezkoušením. • Přezkušujte produkt, ne jeho tvůrce. • Udržujte klidný tón, klaďte otázky místo obvinění. • Udržujte agendu přezkoušení. • Uvádějte problémy - neřešte je. • Vyhněte se diskusi o stylu - zaměřte se na technickou správnost. • Přezkušování naplánujte jako úlohy projektu. • Zaznamenejte a ohlaste všechny výsledky přezkoušení. © J. Sochor, J. Ráček 11 Závažnost chyb, defektů Kritické Defekty, které mohou způsobit pád systému, vznik chybných výstupů či chování nebo narušit uživatelská data. Není známa cesta, jak se těmto defektům vyhnout. Vážné Defekty, které způsobují chybné výstupy či chování a je známa cesta, jak se těmto defektům vyhnout. Zasažena je významná část systému. Středně závažné Defekty ovlivňující omezenou část funkcionality, které je možné se vyhnout nebo ji ignorovat. Málo závažné Defekty, které mohou být opomenuty bez narušení funkčnosti. © J. Sochor, J. Ráček 12 Proč používat formulář? Výhody formuláře pro recenzi: • Nepodstatné problémy jsou filtrovány před samotnou recenzí, dojde k úspoře času na schůzce. • Recenzenti specifikují problémy zřetelně během přípravy, dojde k úspoře času na schůzce. • Usnadnění tvorby přípravných statistik. • Efektivita přípravy (% opravdových defektů, % nadbytečností) a správnost kontrolního seznamu jsou měřitelné. • Problémy mohou být diskutovány v pořadí jejich důležitosti. • Formulář ukazuje efektivitu kontrolního seznamu. © J. Sochor, J. Ráček 13 Nevýhody formuláře Nevýhody formuláře pro recenzi: • Potřeba času na přípravu (15 minut?). • Odrazuje od přípravy na poslední chvíli. • Zviditelňuje kvalitu přípravy. © J. Sochor, J. Ráček 14 Indikátory úspěšných inspekcí Indikátory kvalitních inspekcí jsou: • Produkty jsou prověřovány až v době, kdy na to jsou připraveny. • Termíny schůzek jsou přísné, ale zvládnutelné. • Komentář autora je zařazen jen pokud je užitečný. • Kontrolní seznamy a související materiály jsou užitečné. • Schůzka recenze se zaměřuje na detekci problémů. • Autor se nesmí cítit ohrožen. • Úpravy jsou pečlivě prověřeny. • Jsou odhaleny cesty na zlepšení inspekcí a vývojového procesu. • Účastníci považují metody za způsob efektivního zvýšení kvality. • Každý se chce účastnit znovu! © J. Sochor, J. Ráček 15 Úkoly • Sestavte v rámci své pracovní skupiny inspekční tým. • Sestavte pro váš projet plán inspekcí - pokud jste tak již neučinili :-) • Proveďte inspekci vybrané části projektu.