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í
Algoritmus hledání řešení :Algoritmus hledání řešení :
V-model
Požadavky
Funkce (návrh)
Systém (návrh)
Def. programu
Program (kód)
Test programu
Integrační testy
Funkční testy
Akceptační testyPlán akceptačních testů
Plán funkčních testů
Plán integračních testů
Plán testupro testování
programu
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íka
Zá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 Institut
Carnegie 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
Top Related