View
9
Download
0
Category
Preview:
Citation preview
KVALITA SOFTVÉRU
Martin JEDLIČKAKAIA MtF STUTrnava
Štruktúra prezentácie
1. Rozdielne chápanie kvality softvéru2. Súbor noriem ISO 9000:20003. CMMI4. SPICE (ISO 15504)5. Východiská a zhodnotenie6. Diskusia
Klasický pohľad na kvalitu
miera splnenia vopred definovaných požiadaviek (charakteristík) kvality s cieľom dosiahnuť bezchybný softvérový produktverifikácia = vytvárame produkt správne?
Moderný pohľad na kvalitu
miera splnenia vopred definovaných požiadaviek užívateľa (zákazníka), rovnako aj jeho očakávanívalidácia = vytvárame požadovaný produkt?
Statické chápanie kvality softvéru
statický pohľad = chápanie kvality na základe posudzovania softvérového produktu prostredníctvom súboru charakteristík kvalityviacero modelov kvality (Boehm, Raasch, McCall, ISO/IEC 9126)
Charakteristiky kvality podľa ISO/IEC 9126
Kvalitasoftvérového
produktu
Funkčnosť(functionality)
Bezporuchovosť(reliability)
Použiteľnosť(usability)
Účinnosť(efficiency)
Udržiavateľnosť(maintability)
Prenositeľnosť(portability)
vhodnosťpresnosť
spoluprácabezpečnosť
zhoda
zrelosťchybová odolnosť
obnoviteľnosťzhoda
zrozumiteľnosťzvládnuteľnosťprevádzková spôsobilosť
zhoda
využitie časuvyužitie zdrojov
zhoda
analyzovateľnosťzmeniteľnosť
stabilitatestovateľnosť
zhoda
adaptabilitainštalovateľnosťprispôsobivosťnahraditeľnosť
zhoda
Metriky
interné – používajú sa na meranie vnútorných charakteristík hotových softvérových produktov alebo medziproduktov počas návrhu a implementácie softvérového produktuexterné – vychádzajú z požiadaviek užívateľa na softvérový produkt a odvodzujú sa z chovania systému, ktorého je softvérový produkt súčasťou
Kvalita softvérových procesov
dynamický pohľad = chápanie kvality na základe riadenia procesov vývoja softvéruproces = usporiadané množina krokov, ktorá vedie k požadovanému cieľu [HELEŠIC]zložky procesu:1. činnosti, ktoré sa majú vykonať;2. úlohy a zodpovednosti zainteresovaných;3. metriky využívajúce sa pre plánovanie, sledovanie a zlepšovanie
procesov;4. produkty, ktoré majú byť vytvorené;5. nadväznosti činností v procese;6. techniky a nástroje používané na vykonávanie činností
Riadenie softvérových procesov
jedna z možností - posudzovanie existujúcich procesov s procesmi podľa referenčného modeluzložky posudzovania procesov:
1. referenčný model procesov (CMM, SPICE, ISO 12207)
2. metódy posudzovania procesov (SCE, ISO 15504, ISO 9001, TickIT)
3. nástroje posudzovania procesov (dotazníky, interview, skupinové diskusie, atď.)
Súbor noriem ISO 9000:2000
efektívne implementovanie a prevádzkovanie efektívnych systémov manažérstva kvality [BÍLY] ISO 9000 - opisuje podstatu systémov manažérstva kvality a špecifikuje terminológiu systémov kvalityISO 9001 - špecifikuje používateľské požiadavky na systémy manažérstva kvalityISO 9004 - poskytuje návod na systémy manažérstva kvality, vrátane procesov kontinuálneho zlepšovania
ISO 9000-3
aplikácia ISO 9001:1994 pri vývoji, dodávke, inštalácii a údržbe softvéruštruktúra nie je totožná s ISO 9001:1994zaoberá sa nielen samotným procesom vývoja softvéru, kde sa opiera o princípy softvérového inžinierstva, ale aj komunikáciou medzi dodávateľom softvéru a zákazníkom, obchodnými a zmluvnými otázkamimodel procesov ISO 12207
Zhodnotenie ISO 9000-3
+ procesné chápanie+ nezávislosť od veľkosti organizácie a
používaných techník+ certifikačná procedúra podľa ISO 9001- zastaranosť- jednorozmerné chápanie- implicitné formulovanie (čo sa má vykonať)
CMMI
Capability Maturity Model Integration (Integrovaný model spôsobilosti a zrelosti procesov)SEI (Software Engineering Institute) pri CarnegieMellon Universitykvalita softvérového produktu je determinovaná kvalitou procesov, ktoré sa používajú pri jeho vývoji a neskoršej údržbeintegruje a využíva najlepšie praktiky metodík SW-CMM, SE-CMM a IPD-CMM
Základné pojmy CMMI
Spôsobilosť (Capability) - označuje úroveň akou je organizácia schopná riadiť procesy, kontrolovať náklady a časový plán v rámci jednej procesnej oblasti alebo špecifickej praktiky.Zrelosť (Maturity) - označuje úroveň akou je organizácia riadiť procesy, kontrolovať náklady a časový plán v rámci celého súboru procesných oblastí naprieč celou organizáciou. [KIRBY]
Reprezentácie CMMI
dve reprezentácie:1. stupňovitá reprezentácia2. kontinuálna reprezentácia
príčiny existencie 2 reprezentácií:1. dôsledok integrácie predchádzajúcich
modelov SW-CMM (stupňovitá), SE-CMM (kontinuálna) a IPD-CMM (hybridná)
2. nejednotnosť realizačného tímu
Stupňovitá prezentácia CMMI
RIADENÉ (2)Základný projektový manažment
DEFINOVANÉ (3)Štandardizácia procesov
VYKONÁVANÉ (1)
KVANTITATÍVNE RIADENÉ (4)Kvantitatívny manažment
OPTIMALIZUJÚCE (5)Kontinuálne zlepšovanie procesov
odhad čas, náklady
čas, náklady
čas, náklady
čas, náklady
čas, náklady
odhad
odhad
odhad
odhad
prav
depo
dobn
osť
prav
depo
dobn
osť
prav
depo
dobn
osť
prav
depo
dobn
osť
Úroveň 1
Úroveň 2
Úroveň 3
Úroveň 4
Úroveň 5
prav
depo
dobn
osť
Stupňovitá reprezentácia CMMI
zrelosť softvérovej organizácieokrem 1. úrovne každá úroveň obsahuje viacero procesných oblastí (PAs)každá PA obsahuje praktiky navrhnuté pre dosiahnutie cieľov konkrétnej PAak softvérová organizácia dosiahne ciele všetkých procesných oblastí v rámci jednej úrovne, tak dosiahla stupeň zrelosti (maturity level)
Kontinuálna reprezentácia
Oblasť
proce
su
Oblasť
proce
su Oblasť
proce
su
Proces
Spôsobilosťprocesu
0. ÚroveňNekompletná
1. ÚroveňVykonávaná
2. ÚroveňRiadená
3. ÚroveňDefinovaná
4. ÚroveňKvantitatívne
riadená
5. ÚroveňOptimalizujúca
Zhodnotenie CMM
+ systémový prístup+ štandardizácia softvérových procesov+ možné porovnanie medzi viacerými organizáciami- dve reprezentácie- vzťah medzi kvalitou produktov a spôsobilosťou
procesov (resp. zrelosťou organizácie) nie je garantovaný
- možnosť hodnotenia dotazníkov (Áno, Nie)
SPICE (ISO/IEC 15504)
Software Process Improvement and Capability dEtermination (1991)r.1996 - ISO/IEC TR 15504 - Posudzovanie softvérových procesov
Architektúra modelu
Architektúra modelu
Všeobecnáfunkcia
Úroveňspôsobilosti
Všeobecnápraktika
Procesnáoblasť
Základnápraktika
Proces
Kategórie procesov
Organizačné
Projektové
Zákaznícko-dodávateľské
Podporné
Inžinierske
Kategórie procesov, základné procesy a základné praktiky
kategória procesov zoskupuje príbuzné procesy prostredníctvom príbuzných aktivítzákladných procesov (35) pozostáva z viacero základných praktíkzákladná praktika je inžinierska alebo manažérska softvérová aktivita, ktorá sa týka cieľa príslušného procesu (sú zoskupené podľa kategórií procesov)
Príklad procesov a základných praktík pre Zákaznícko-dodávateľské procesy CUS)
CUS.1 Obstaranie softvérového produktu a/alebo službyCUS.2 Vytvorenie kontraktuCUS.3 Identifikovanie potrieb zákazníka
CUS.3.1 Získanie požiadaviek zákazníka CUS.3.2 Pochopenie očakávaní zákazníkaCUS.3.3 Informovanie zákazníka
CUS.4 Vykonanie spoločných auditov a previerokCUS.5 Balenie, dodávka a inštalovanie softvéruCUS.6 Podpora prevádzky softvéruCUS.7 Poskytovanie zákazníckeho servisuCUS.8 Hodnotenie spokojnosti zákazníka
Spôsobilosť procesu, všeobecné funkcie a praktiky
spôsobilosť procesu je súbor všeobecných funkcií, ktoré spolupôsobia pri vykonávaní procesu na zlepšenie jeho spôsobilostivšeobecná funkcia je súborom všeobecných praktík, ktoré reprezentujú aktivity nevyhnutné pre riadenie procesu a jeho zlepšovanie za účelom dosiahnutia požadovaných výstupovvšeobecná praktika je aplikovateľná na ľubovoľný proces
Príklad spoločných funkcií a všeobecných praktík
1.1 Vykonávanie základných praktík2.1 Plánované vykonávanie
– 2.1.1 Stanovenie zdrojov– 2.1.2 Stanovenie zodpovedností– 2.1.3 Dokumentovanie procesu– 2.1.4 Zabezpečenie nástrojov– 2.1.5 Zaistenie školení– 2.1.6 Plánovanie procesu
2.2 Disciplinované vykonávanie2.3 Verifikované vykonávanie2.4 Sledované vykonávanie
Úrovne spôsobilosti
1. Nevykonávané (medziprodukty a výstupy procesov nie je možné ľahko identifikovať)
2. Vykonávané neformálne (vykonávanie je závislé od individuálnych znalostí a snahy; vykonávanie sa neplánuje a nesleduje; medziprodukty sú ľahko identifikovateľné a testované)
3. Plánované a sledované (uplatňovanie základných praktík je plánované, sledované a verifikované; medziprodukty sa riadia podľa štandardov a požiadaviek)
4. Jasne stanovený (procesy sú verifikované a prispôsobené podľa existujúcich štandardov; podrobné dokumentovanie procesov)
5. Kvantitatívne riadený (podrobné meranie vykonávania; kvantitatívne chápanie spôsobilosti procesu)
6. Kontinuálne zlepšovanie (určujú sa ciele pre zlepšenie efektivity procesov na základe kvantitatívnych charakteristík)
Dvojrozmerný model
Zákaz
nícko
-
dodá
vateľ
sky
Inžini
ersky
Podpo
rnýOrga
nizač
ný Proces
Spôsobilosťprocesu
Procesy 0. úrovne
Projek
tový
Procesy 1. úrovne
Procesy 2. úrovne
Procesy 3. úrovne
Procesy 4. úrovne
Procesy 5. úrovne
Atribúty procesov
predstavujú súbor merateľných charakteristík pri posudzovaní úrovne spôsobilosti procesu profil spôsobilosti procesu
Atribút vykonávania procesuAtribút riadenia vykonávaniaAtribút riadenia medziproduktuAtribút definovania procesuAtribút zabezpečenia zdrojov procesuAtribút merania procesuAtribút riadenia procesuAtribút zmeny procesuAtribút kontinuálneho zlepšovania
Úroveň 0NNNNNNNNN
Úroveň 1LNNNNNNNN
Úroveň 2FLLNNNNNN
Úroveň 3FFFLLNNNN
Úroveň 4FFFFFLLNN
Úroveň 5FFFFFFFLL
Zhodnotenie ISO 15504 (SPICE)
+ vychádza z ISO 12207+ nezávislosť na veľkosti organizácie a
použitých technikách+ proces posudzovania procesov overený
praxou (časť 5)+ procesný profil- absencia certifikačných procedúr
Východiská
nejednoznačnosť vzťahov medzi produktovým a procesným chápaním kvality softvéruštruktúra zabezpečovania kvality softvéru:
1. manažment kvality (procesná orientácia)2. model kvality (charakteristiky kvality)3. požiadavky kvality (stanovanie požiadaviek)4. meranie kvality (model merania, metriky)5. hodnotenie kvality (posúdenie kvality vzhľadom na
požiadavky, certifikácia)
Literatúra
1. BÍLY, M. Súbor návrhov noriem. Bratislava: Slovenský ústav technickej normalizácie, 2000
2. HELEŠIC, J. Semestrální projekt. Brno: FEI VUT. http://www.helesic.cz/download/semproj.zip
3. ISO/IEC 9126:1991, Information technology – Software product evaluation –Quality characteristics and guidelines for their use
4. ISO/IEC 9000-3:1997, Guidelines for the application of ISO 9001:1994 to thedevelopment, supply, installation and maintenance of computer software
5. ISO/IEC PDTR 15504, Information Technology – Software Process Assessment– Part 2: A reference model for process and process capability
6. KIRBY, W. Capability Maturity Model Integration (CMM). http://www.cs.unb.ca/itc/resources/spin.ppt (august 2004)
7. PHILLIPS, M. CMMI v.1.1 Tutorial. Carnegie Mellon University: 2003. http://www.sei.cmu.edu/cmmi/presentations/euro-sepg-tutorial/sld001.htm
Recommended