24
Mezinárodní normalizace kvality softwaru Jiří Vaníček [email protected] Katedra informačního inženýrství, Provozně ekonomická fakulta, Česká zemědělská univerzita v Praze 1990 – 2007: Předseda české technicko normalizační komise pro informační technologie, 1990 - … : Zástupce ČR v podvýboru ISO/IEC, JTC1/SC7 - Systémové a softwarové inženýrství a WG 6 - Hodnocení a měření kvality softwaru

Mezinárodní normalizace kvality softwaru

Embed Size (px)

DESCRIPTION

Mezinárodní normalizace kvality softwaru. Jiří Vaníček v anicek @pef.czu.cz Katedra informačního inženýrství, Provozně ekonomická fakulta, Česká zemědělská univerzita v Praze. 1990 – 2007: Předseda české technicko normalizační komise pro informační technologie, - PowerPoint PPT Presentation

Citation preview

Page 1: Mezinárodní normalizace kvality softwaru

Mezinárodní normalizace kvality softwaru

Jiří Vaníč[email protected]

Katedra informačního inženýrství, Provozně ekonomická fakulta,

Česká zemědělská univerzita v Praze

1990 – 2007: Předseda české technicko normalizační komise pro informační technologie,

1990 - … : Zástupce ČR v podvýboru ISO/IEC, JTC1/SC7 - Systémové a softwarové inženýrství a WG 6 - Hodnocení a měření kvality softwaru

Page 2: Mezinárodní normalizace kvality softwaru

Mezinárodní normalizační orgány

ISO („isos“ = stejný)Obecná působnost

ISO/IEC JTC1 Informační technologie IEEE, …

Podvýbory SC

SC7 Systémové a softwarové inženýrství

WG 6 Hodnocení a měření kvality

Pracovní skupiny - WG

V Evropě:CEN

CEN/CENELEC

CENELEC

IEC (Mezinárodní elektromechanická komise) Zahrnuje normalizaci elektronických zařízení

Page 3: Mezinárodní normalizace kvality softwaru

Proces přípravy a schvalování mezinárodních norem

NVI (Země zastoupené v SC se vyjadřují k zahájení prací na normě)

Hlasování na úrovni WG

Návrh výboru (CD)

Hlasování na úrovni CD

Návrh mezinárodní normy (DIS)

Hlasování národních autorit na úrovni DIS

Mezinárodní norma (IS)

Experti v pracovní skupině připravují text návrhu (WD)

V těchto fázích je možné obsah norem věcně ovlivnit

Norma EU Česká norma

Page 4: Mezinárodní normalizace kvality softwaru

Pojem kvality (= jakost)

Kvalita je podle základní normy ISO 9000 (Systémy managementu kvality, základní principy a slovník) definována jako stupeň splnění požadavků souborem inherentních charakteristik (znaků).

Slovo „inherentní“ znamená „existující v něčem“ (jako jeho trvalá charakteristika), na rozdíl od „přiřazený“. Kvalitu tedy neovlivňuje to, co bylo přidáno k hodnocenu objektu dodatečně, pouze pro daný okamžik.

Kvalita = jakost

Terminologická poznámka: Synonymem slova kvalita je jakost. V češtině se v prvých verzích norem užívalo slova jakost. V posledních verzích norem jsou oba termíny povolené. Kvalita se užívá častěji.

Page 5: Mezinárodní normalizace kvality softwaru

Jak rozumět pojmu požadavek?

Požadavek je definován (ISO 9000) jako potřeba nebo očekávání, které je:

a) stanoveno speciálně

b) nebo se obecně se předpokládá

c) nebo je závazné (vyplývá například z právních předpisů).

(ISO 9000)

„Obecně se předpokládá“ znamená běžnou zvyklost či praxi u firmy, jejich zákazníků a zainteresovaných stran

„Stanovený požadavek“ je takový, který je popsán v nějakém dokumentu, například v kupní smlouvě. Různí zákazníci mohou mít různé požadavky na týž produkt.

Požadavky mohou mít všechny zúčastněné strany. Nejen prodejce a zákazník, ale každý, kdo je „dotčenou osobou“ v souvislosti s procesem vytváření a užití produktu.

Page 6: Mezinárodní normalizace kvality softwaru

Kvalita procesu a kvalita produktu

Kvalitu je třeba hodnotit u procesu i o produktu.

Proces je (ISO 9000) definován jako soubor vzájemně souvisejících a vzájemně působících činností, který přeměňuje vstupy na výstupy.

Produkt je výsledek procesu.

Produkty mohou být těchto čtyř kategorií:

• Služby (například přeprava)

• Software (nejen počítačové programy, ale třeba slovník či „know how“)

• Hardware (například mechanická část nějakého stroje, třeba motoru)

• Zpracované materiály (například olej do motoru)

Konkrétní produkt může být kombinací těchto kategorií

Informatický produkt bývá téměř vždy kombinací softwaru a služeb, případně i hardwaru

Pohled na kvalitu procesu je důležitý zejména pro vývojáře a výrobce a dodavatele.

Pohled na kvalitu produktu zejména pro opatřovatele, zákazníka a uživatele.

Page 7: Mezinárodní normalizace kvality softwaru

Kvalita SW procesu a produktu

Předmětem hodnocení kvality může být:

a) Proces vývoje a výroby produktu

• Zajímá především vývojáře a výrobce

• Požadavky lze stanovit do značné míry

• Obecně pro různé druhy produktů.

Řeší obecné normy ISOPředevším řady 9000, 10000

ISO/IEC 90003

Je-li ve firmě pořádek, budou její produkty kvalitní.Jinak vznikne kvalitní produkt je náhodně.

b) Vlastní produkt, jako výstup procesu

• Zajímá především obstaravatele a uživatele

• Požadavky se výrazně odlišují podle typu produktů

Normy podle oborů. Pro IT normy ISO/IECŘady 9126, 14598, 12119,v budoucnu 25000 (SQuaRE)

Page 8: Mezinárodní normalizace kvality softwaru

Různí uživatelé Různé potřeby Různé požadavky

Příklad: Uvažme tří textové editory:

a) jednoduchý, snadno intuitivně ovladatelný, který umožňuje snadnou přípravu jednoduchých dokumentů typu dopis

b) specializovaný pro vědecké texty , vhodný pro psaní složitých vzorců potřebných pro vědecké články a knihy

c) specializovaný pro sazbu publikací typu reklamní katalogy firem se složitou grafikou.

Editory b) a c) budou pochopitelně mít složitější ovládání.

Různí uživatelé budou hodnotit kvalitu produktů a), b) a c) diametrálně odlišně, protože produkty budou různě odrážet jejich potřeby.

Kvalitu produktu nutno hodnotit vždy z hlediska definované skupiny uživatelů. Proto je vhodné vymezit několik pohledů (charakteristik) kvality a požadavky stanovit odděleně pro tyto charakteristiky.

Page 9: Mezinárodní normalizace kvality softwaru

Proč se normy snaží kvalitu měřit?

Světový trh v informatice je výrazně globální. Pohledy na kvalitu je třeba sjednotit.

Nezbytnost normalizace

(na co nejširší úrovni - nejlépe celosvětové)

Kvalitu je třeba hodnotit objektivně

Potřeba měření pro hodnocení kvality

Měření Popis výseku reálného světa čísly.

Page 10: Mezinárodní normalizace kvality softwaru

„Staré“ (dožívající) normy pro kvalitu softwarového produktu

ISO/IEC 9126

Softwarové inženýrství – Jakost produktu (Software engineering - Product quality):

9126-1 Model jakosti (Quality model)

TR 9126-2 Vnější metriky (External metrics)

TR 9126-3 Vnitřní metriky (Internal metrics)

TR 9126-4 Metriky pro jakost užití (Quality in use metrics)

ISO/IEC 14598 Softwarové inženýrství – Hodnocení softwarového produktu (Software engineering – Product quality evaluation):

14598-1 Obecný přehled (General owerview)

14598-2 Plánování a řízení (Planning and management)

14598-3 Postup vývojářů (Process for developers)

14598-4 Postup opatřovatelů (Process for acquieres)

14598 -5 Postup hodnotitelů (Process for evaluaters)

14598-6 Dokumentace hodnotících postupů (Dokumentation of evaluators modules)

ISO/IEC 12119 Softwarové inženýrství – Softwarové balíky – Požadavky na jakost a zkoušení (Software engineering – Software packages – Quality requirements and testing)

Page 11: Mezinárodní normalizace kvality softwaru

Hrubá struktura norem SQuaRE – ISO/IEC 250xy a současný stav přípravy norem

Oddíl požadavků

na kvalitu

Quality

Requirements

Division

2503n

Oddíl hodnocení

kvality

Quality Evaluation

Diviasion

Division

2504n

Oddíl modelu kvality Quality Model Division

2501n

Oddíl měření kvality Quality Measurement Division

2502n

Oddíl řízení kvality

Quality Management Division

2500n

Page 12: Mezinárodní normalizace kvality softwaru

ISO/ IEC 2504n: Oddíl hodnocení kvality

25030: Požadavky na kvalitu (IS)

ISO/IEC 2503n: Oddíl požadavků na kvalitu

ISO/IEC 2500n: Obecný oddíl kvality produktu

ISO/IEC 2501n: Oddíl modelu kvality

ISO/IEC 2502n: Oddíl měření kvality

25010: Model kvality (CD)

25000: Návod k užití SQuaRE (IS)

25021: Prvky pro měření kvality (TR)

25022: Měření vnitřní kvality

25040: Přehled hodnocení kvality (CD)

25041: Hodnotící postupy

25042: Proces vývojáře

25043: Proces opatřovatele

25044: Proces hodnotitele

25001: Plánování a management (IS)

25023: Měření vnější kvality

25024: Měření kvality užití

25012: Model kvality dat (třetí CD)

25062: Společný průmyslový formát pro zprávu o testování použitelnosti (IS)

25051: Požadavky na kvalitu pro konfekční produkty (IS)ISO/IEC 25050 ~ 25099: Oddíl rozšíření SQuaRE

25045: Modul pro hodnocení možnosti zotavení

Page 13: Mezinárodní normalizace kvality softwaru

Model kvality softwaru

Pohledy na kvalitu

Kvalita užití(quality in use)

Kvalita procesu – (závisí na systému jako celku)

Vnitřní kvalita(prediktory kvality)

Vnější kvalita(uspokojení požadavků)

Page 14: Mezinárodní normalizace kvality softwaru

Model softwaru a model systému

.            

 Model kvality

softwaruModel kvality

datModel kvality

systému

Vnější (firemní, státní, veřejný, do technického zařízení vnořený …) systém

 

Lidskáčinnost

Mecha-nický

systém 

Výpočetní systém

HWOstatní

SW a dataHodnocený

SWHodnocená

data

Komunikační systém

Page 15: Mezinárodní normalizace kvality softwaru

Vnější a vnitřní charakteristiky kvality

Vnější a vnitřní kvalita

Schopnost spolupráceSchopnost spolupráce

Bezporu-chovostBezporu-chovost

Použi-telnostPouži-telnost

ÚčinnostÚčinnostUdržova-telnostUdržova-telnost

BezpečnostBezpečnostFunkčnostFunkčnostPřenosi-telnostPřenosi-telnost

Nahraditelnost,

Koexistence,

Softwarová kompatibilita,

Hardwarová kompatibilita

Nahraditelnost,

Koexistence,

Softwarová kompatibilita,

Hardwarová kompatibilita

Pohotovost,

Odolnost vůči poruchám,

Obnovitelnost,

Robustnost

Pohotovost,

Odolnost vůči poruchám,

Obnovitelnost,

Robustnost

Srozumitelnost účelu,

Naučitelnost,

Snadnost obsluhy,

Atraktivnost,

Možnost nápovědy,

Srozumitelnost účelu,

Naučitelnost,

Snadnost obsluhy,

Atraktivnost,

Možnost nápovědy,

Časové chování,

Nároky na zdroje

Časové chování,

Nároky na zdroje

Modularita,

Znovupouži-telnost,

Možnost analýzy,

Stabilnost Testovatelnost

….

Modularita,

Znovupouži-telnost,

Možnost analýzy,

Stabilnost Testovatelnost

….

Utajení,

Integrita,

Nenarušení,

Dohledatelnost

Utajení,

Integrita,

Nenarušení,

Dohledatelnost

Funkční přiměřenost,

Přesnost

Funkční přiměřenost,

Přesnost

Portabilnost, Možnost

adaptace, Instalovatel-

nost

Portabilnost, Možnost

adaptace, Instalovatel-

nost

Oproti 9126 v SQuARE vyčleněno z funkčnosti jako zvláštní charakteristiky

Výčet podcharakteristik i jejich české názvy je pouze předběžný, patrně bude změněn

U všech charakteristik se uvažuje o zařazení ppdcharakteristiky „Shoda“.

Je tím míněna shoda s místními zvyklostmi.

Page 16: Mezinárodní normalizace kvality softwaru

Charakteristiky kvality – podcharekteristiky kvality – atributy a jejich míry

Page 17: Mezinárodní normalizace kvality softwaru

Tři úrovně hodnocení kvality softwaru

Kvalita softwarového produktu

Charakteristika #1 Charakteristika #2 Charakteristika #m

Atribut #1 – jeho míra Atribut #2 – jeho míra

Podcharakteristika #nPodcharakteristika #1 Podcharakteristika #1

Atribut #k – jeho míra míra

Page 18: Mezinárodní normalizace kvality softwaru

Kvalita, atributy a míry

Prvky pro měření kvality

Měřicí funkce

Míry kvality softwaruKvalita softwarového

produktu

Podcharakteristiky kvality

Charakteristiky kvality

Page 19: Mezinárodní normalizace kvality softwaru

Co je nutné vyjasnit u každé míry?1. Jméno míry,

2. Účel míry - otázkou, na kterou daný atribut či zjištěná míra odpovídá.

3. Metoda měření, - postup, který vede ke stanovení hodnoty míry atributu.

4. Datové prvky a vzorec pro výpočet míry

5. Interpretace hodnot míry, zde se popíše množina hodnot, kterých mohou míry nabývat. Například údaj: „0 X 1, čím blíže k 1, tím lépe“.

6. Typ měřicí stupnice, při měření čísly se obvykle uvádí příslušný typ podle Stevensovy klasifikace.

7. Typ měřených hodnot, u základních měr nejčastěji počet či čas. U odvozených například počet / počet, počet / čas nebo čas / čas.

8. Zdroj dat pro určení míry

9. Etapa životního cyklu, podle EN ISO/IEC 12207 „Informační technologie – Model životního cyklu softwaru“ (Information technology – Software life cycle model)

10. Profese, využívající výsledky měření,

11. Jméno měřeného atributu, doporučuje se uvádět několik slov, která příslušný atribut charakterizují dostatečně dobře a jednoznačně, spolu s případnou zkratkou.

12. Charakteristiky a podcharakteristiky jakosti podstatně ovlivněné danou mírou,

13. Charakteristiky a podcharakteristiky jakosti částečně ovlivněné danou mírou, lze uvést i několik charakteristik a podcharakteristik.

14. Druh míry zda je vnější, vnitřní nebo pro jakost užití.

Page 20: Mezinárodní normalizace kvality softwaru

Kvalita a životní cyklus softwaru

Požadavky na systém, získané od všech

relevantních stran, dotčených budoucí

funkcí vnějšího systému

Technické požadavky na SW

Požadavky na kvalitu užití

Požadavky na vnější kvalitu

Požadavky na vnitřní kvalitu

Kvalita SW produktu

Kvalita užití

implementace

Požadavky na změny

Vnější kvalita

Vnitřní kvalita

(prediktory)

Požadavky

na zvýšení

kvality

Page 21: Mezinárodní normalizace kvality softwaru

Jak z měr získat hodnocení?

Page 22: Mezinárodní normalizace kvality softwaru

Komplexní posouzení kvality

Page 23: Mezinárodní normalizace kvality softwaru

Možné přínosy a možná ohrožení projektu SQuaRE

+Posílení pozice uživatele na trhu IT

?, – Návrh se zatím soustřeďuje na obecné otázky a tvorbu návodů. Ponechává stranou detaily. Především zatím chybí návrh atributů a měr.

Práce se opožďují, výsledky zastarávají za rozvojem oboru.

Soustava normativních dokumentů se rozrůstá a stává se nepřehlednou. Jejich pořízení se vzhledem k cenové politice normalizačních orgánů prodražuje.

Metody a postupy tvorby softwaru jsou velmi diverzifikované. Autor příspěvku nevidí shodu na vnitřních mírách jakosti jako nadějnou.

Page 24: Mezinárodní normalizace kvality softwaru

Děkuji za pozornost

Uvítám spolupráci na tvorbě a posuzování návrhů norem SQuaRE. Nemám však možnost zabezpečit jakékoliv

honorování této obtížné a často nevděčné práce.

Kontakt: [email protected]