210 likes | 336 Views
Proč jakost software ?. Ochrana investic do SW po IS a jiné rozsáhlé aplikace SW se stal spotřebním zbožím a zákazníci chtějí být chráněni před nekvalitním SW Zvýšit bezpečnost aplikací v oblasti reálného času, kde chyba v SW může mít katastrofální následky. Jakost software – ISO/IEC 9126.
E N D
Proč jakost software ? • Ochrana investic do SW po IS a jiné rozsáhlé aplikace • SW se stal spotřebním zbožím a zákazníci chtějí být chráněni před nekvalitním SW • Zvýšit bezpečnost aplikací v oblasti reálného času, kde chyba v SW může mít katastrofální následky
Jakost software – ISO/IEC 9126 • funkčnost • bezporuchovost • použitelnost • efektivnost (účinnost) • udržovatelnost • přenositelnost
Jak ověřujeme jakost SW? • Dokazováním správnosti programu - provedeme exaktní důkaz, že program je správný prostřednictvím matematické logiky • Testováním programu - prokazujeme chyby v programu prostřednictvím testovacích výpočtů
Testování software Testováním rozumíme opakovaný proces provádění a vyhodnocování testovacích výpočtů, kterým se snažíme odhalit chyby v programu. Testování ukončujeme tehdy, když po dostatečně velkém počtu reprezentačních testovacích výpočtů usuzujeme, že je vysoká pravděpodobnost pro bezchybnou práci testovaného programu.
Testováním lze prokázat přítomnost chyb v programu.Nelze však prokázat, že program chyby NEMÁ!!!
Jakost testování závisí na: • množství a kvalitě testovacích dat • úrovni použitých testovacích prostředků • použitých metodách testování
Jakost testování závisí na: • množství a kvalitě testovacích dat • úrovni použitých testovacích prostředků • použitých metodách testování
Testování • cíl testování • jednotka testování • integrace testování • postup testování • prostředky pro testování • záznam testování • převzetí výsledků testování
Plánování testů • testovací kritéria • testovací prostředí • specifikace testů má být zařízena • zdroje požadavků • rozvrh testovaných aktivit • zpráva o problémech • přepracování/opakování strategie
Požadavky testování • Co testovat • - uspořádání položek k testování • Jak testovat • - nástroje a techniky • - úroveň testujících požadavků • Přijetí kritérií
Plánování testů • testovací kritéria • testovací prostředí • specifikace testů má být zařízena • zdroje požadavků • rozvrh testovaných aktivit • zpráva o problémech • přepracování/opakování strategie
Požadavky testování • Co testovat • - uspořádání položek k testování • Jak testovat • - nástroje a techniky • - úroveň testujících požadavků • Přijetí kritérií
V-model Plán akceptačních testů Požadavky Akceptační testy Funkce (návrh) Funkční testy Plán funkčních testů Systém (návrh) Integrační testy Plán integračních testů Plán testu pro testování programu Def. programu Test programu Program (kód)
Specifikace software • zajišťuje dobrou dohodu a kontakt se zákazníkem • je podkladem pro plánování • umožňuje pořádné testování a předání SW • může posloužit při zdokonalování SW produktu
Jakost je schopnost produktu uspokojit vyslovené i předpokládané požadavky zákazníkaZásada TQM obsažená v normách řady ISO 9000
Vlastnosti dobré specifikace SW • jednoznačná • úplná • modifikovatelná • její splnění je ověřitelné • musí v ní být viditelné vnitřní souvislosti a původ požadavků • je použitelná i ve fázi využívání a údržby produktu
Obsah specifikace • požadavky na funkčnost SW • požadavky na provozní parametry • omezení kladená na vývoj • styková rozhraní • specifické požadavky
SW-Capability Maturity ModelSoftware Engineering InstitutCarnegie Mellon Univesity Pittsburg • 1. Nahodilé procesy-Jednou se zadaří, podruhé se nazadaří. Děj se vůle páně! • 2. Statisticky stabilní opakované procesy - Počet chyb se nám ustálil na hodnotě cca 50 na středně velký produkt • 3. Popsané a definované procesy - Procesy máme definované, odchylky monitorujeme, příčiny stanovujeme • 4. Řízené procesy - Stanovené cíle a kritéria jakosti splňujeme • 5. Optimalizované procesy - Jakost SW dosahujeme s optimalizovaným úsilím
Další normy o jakosti SW • ČSN/ISO/IEC 12 119 Softwarové balíky - požadavky na jakost a zkoušení • ČSN ISO/IEC 12207 Procesy v živostním cyklu software • ISO/IEC 15 846 Configuration management