Řízení kvality softwaru - Software quality management
Řízení kvality softwaru (SQM) je proces řízení, jehož cílem je rozvíjet a spravovat kvalita softwaru takovým způsobem, aby bylo co nejlépe zajištěno, že produkt splňuje standardy kvality očekávané zákazníkem a zároveň splňuje veškeré nezbytné regulační a vývojové požadavky, pokud existují.[1][2][3] Manažeři kvality softwaru vyžadují, aby byl software před uvedením na trh otestován, a to pomocí cyklického hodnocení kvality založeného na procesu, aby odhalili a opravili chyby před vydáním. Jejich úkolem je nejen zajistit, aby jejich software byl pro spotřebitele v dobré kondici, ale také podporovat kulturu kvality v celém podniku.[1][2][3]
Činnosti v oblasti řízení kvality
Činnosti v oblasti řízení kvality softwaru se obecně dělí na tři základní součásti: zajištění kvality, plánování kvality a kontrola kvality.[1][2] Někteří jako softwarový inženýr a autor Ian Sommerville nepoužívají termín „kontrola kvality“ (protože kontrola kvality je často považována spíše za termín výroby než za termín vývoje softwaru), spíše spojují související pojmy s konceptem zajištění kvality.[3] Tři základní součásti však jinak zůstávají stejné.
Zajištění kvality
Zabezpečení kvality softwaru nastavuje organizovanou a logickou sadu organizačních procesů a na základě rozhodnutí o standardech vývoje softwaru - založených na osvědčených postupech v oboru - které by měly být spárovány s těmito organizačními procesy, mají softwaroví vývojáři větší šanci na produkci kvalitnějšího softwaru. Propojení atributů kvality jako „udržovatelnost“ a „spolehlivost“ s procesy je však ve vývoji softwaru obtížnější díky jeho kreativním designovým prvkům ve srovnání s mechanickými procesy výroby.[1][2][3] „Standardizace procesů může někdy potlačit kreativitu, což vede spíše k horšímu než kvalitnějšímu softwaru.“[3]
Tato fáze může zahrnovat:
- podpora standardů procesu dokumentace, jako je vytváření přesně definovaných technických dokumentů pomocí standardních šablon
- instruktáž, jak provádět standardní procesy, jako jsou kontroly kvality
- provádění postupů zaznamenávání zkušebních dat během procesu
- identifikace standardů, pokud existují, které by měly být použity v procesech vývoje softwaru
Plánování kvality
Plánování kvality funguje na granulárnější, projektové úrovni a definuje atributy kvality, které mají být spojeny s výstupem projektu, a způsob, jakým by tyto atributy měly být hodnoceny. V této fázi lze projektu také přiřadit jakékoli stávající organizační standardy. Atributy jako „robustnost“, „přístupnost“ a „modularita“ mohou být přiřazeny projektu vývoje softwaru.[1][2] I když se může jednat o formalizovanější a ucelenější proces, uživatelé využívající agilnější metodu řízení kvality mohou klást menší důraz na přísné plánovací struktury.[3] Plán kvality se může také zabývat zamýšleným trhem, kritickými daty vydání, cíli kvality, očekávanými riziky a politikou řízení rizik.[2][3]
Kontrola kvality
Tým kontroly kvality testuje a kontroluje software v různých fázích, aby zajistil dodržování procesů a standardů zajišťování kvality na organizační i projektové úrovni.[1][2] (Někteří jako Sommerville spojují tyto odpovědnosti spíše se zajištěním kvality, než aby tomu říkali kontrola kvality.[3]) Tyto kontroly jsou optimálně oddělené od vývojového týmu, aby poskytovaly objektivnější pohled na testovaný produkt.[2][3] Musí však také pomáhat projektoví manažeři na straně vývoje, kteří v rámci této fáze pomáhají propagovat „kulturu, která poskytuje podporu bez viny, když jsou objeveny chyby“.[3] Ve firmách zabývajících se vývojem softwaru, které zavádějí agilnější přístup ke kvalitě, mohou být tyto činnosti méně formální; přechod na agilní metody z formálnější struktury řízení kvality však může způsobit problémy, pokud nejsou postupy řízení vhodně přizpůsobeny.[3]
Mezi činnosti patří:
- vydání testování softwaru, včetně řádné dokumentace procesu testování
- přezkoumání softwaru a související dokumentace z hlediska nesouladu s normami
- následná kontrola softwaru s cílem zajistit, aby byly vyřešeny všechny požadované změny podrobně popsané v předchozím testování
- aplikace softwarového měření a metrik pro hodnocení
Kvalita softwaru a jeho životní cyklus
Měření kvality softwaru se liší od výroby; tolerance nejsou použitelné (alespoň stejným způsobem) a objektivní závěry týkající se toho, zda software splňuje specifikace, jsou obtížné, ne-li nemožné dosáhnout.[3] Kvalitu softwaru a jeho stav lze však stále realizovat různými způsoby v závislosti na organizaci a typu realizovaného projektu.[4] To se dělo prostřednictvím podpory celku životní cyklus vývoje softwaru, význam:
- shromažďování požadavků a definování rozsahu IT projektu se zaměřením na ověření, zda budou testovatelné definované požadavky;
- návrh řešení zaměřený na plánování testovacího procesu, např. jaký typ testů bude proveden a jak budou provedeny v kontextu testovacích prostředí a testovacích dat ?;
- implementace řešení podporovaného testovacími případy a scénáři, jejich provádění a registrace vad, včetně koordinace řešení vad;
- implementace managementu změn podporovaná ověřením toho, jak mohou plánované změny ovlivnit kvalitu vytvořeného řešení a případnou změnu testovacího plánu; a
- uzavření projektu podporované realizací testů zaměřených na komplexní ověření celkové kvality vytvořeného řešení.
Odkazy na metody IT
Řízení kvality softwaru je téma úzce spojené s různými metodami řízení, vývoje a provozu projektů, včetně:
- komponenta „Kvalita v projektovém prostředí“, která popisuje nutnost dvojité kontroly a objektivní kontroly vytvořených produktů. Navrhuje použití 4 prvků: systém řízení kvality, funkce kontroly kvality, plánování kvality a kontroly kvality.
- „Quality Review Technique“, která je zaměřena na ověření, zda vytvořené produkty splňují definovaná kritéria kvality.
- Metoda řízení projektu PMBOK 4. vydání [6] definuje oblast znalostí Řízení kvality projektu a následující procesy:
- 3.4.12 Kvalita plánu,
- 3.5.2. Proveďte zajištění kvality,
- 3.6.7. Proveďte kontrolu kvality
- Metoda vývoje RUP definuje testování disciplíny, které je zapojeno do všech fází počínaje počátkem a konče přechodem.
- Metoda vývoje Lékaři bez hranic definuje roli testeru a stabilizační fázi, která se zaměřuje hlavně na testování řešení.[7]
- Agilní metody nedefinujte přesně roli testera nebo mechanismy související s řízením kvality softwaru. Metody definují pouze takové techniky jako kontinuální integrace a vývoj řízený testem. Přesto se nakonec objevuje publikace o agilní testování.
- Operační metoda CMMI definuje mimo jiné procesní oblast PPQA „Zajištění kvality procesů a produktů“, která je vyžadována již na úrovni CMMI 2.
- Operační metoda COBIT definuje mimo jiné proces P08 Správa kvality.
- Operační metoda ITIL je definována mimo jiné publikací Neustálé zlepšování služeb.
- V-model - model, který definuje životní cyklus vývoje softwaru a testovací proces.
- ISO 9000 - skupina norem souvisí se systémy řízení kvality a je navržena tak, aby pomohla organizacím zajistit, aby splňovaly potřeby zákazníků a dalších zúčastněných stran [1] a zároveň splňovaly zákonné a regulační požadavky týkající se produktu.
Sdružení a organizace
- The Americká společnost pro kvalitu (ASQ) je profesionální organizace, která poskytuje svým členům certifikaci, školení, publikace, konference a další služby související s řízením kvality, neustálým zlepšováním a bezpečností výrobků.
- The Rada pro mezinárodní testování softwaru (ISTQBP je nezisková mezinárodní asociace registrovaná v Belgii. Spravuje proces certifikace pro testery softwaru a může se pochlubit více než 535 000 vydanými certifikáty ve více než 120 zemích.[8]
Viz také
- Agilní testování
- Softwarová záruka
- Zajištění kvality
- Kvalita softwaru
- Kontrola kvality softwaru
- Zabezpečení kvality softwaru
- Analytik kvality softwaru
Reference
Tento článek je založen na materiálu převzatém z Zdarma online slovník výpočetní techniky před 1. listopadem 2008 a začleněno pod "licencování" podmínek GFDL, verze 1.3 nebo novější.
- ^ A b C d E F Zsolt, U. (únor 2014). „Řízení kvality softwaru“ (PDF). Procesy vývoje softwaru a zajištění kvality softwaru. University of Pannonia. 117–121. Citováno 7. prosince 2017.
- ^ A b C d E F G h Maxim, B.R. (2014). „Řízení kvality softwaru“ (PPT). University of Michigan - Dearborn. Citováno 7. prosince 2017.
- ^ A b C d E F G h i j k l Sommerville, I. (2011). „Kapitola 24: Řízení kvality“. Softwarové inženýrství (9. vydání). Addison-Wesley. str. 651–680. ISBN 9780137035151.
- ^ Kelemen, Z. D. (2013). Procesní sjednocení pro vylepšení softwarových procesů s více modely Eindhoven: Technische Universiteit Eindhoven. ISBN 978-90-386-3313-8
- ^ OGC (Office of Government Commerce) (2009). Správa úspěšných projektů pomocí PRINCE2 (ed. 2009). TSO (Kancelářské potřeby). ISBN 978-0-11-331059-3
- ^ Příručka k Body řízení znalostí projektu, čtvrté vydání, PMI, USA, 2008
- ^ Rámec řešení Microsoft - Kapitola 18 Fáze stabilizace, publikováno: 27. dubna 2005 [1]
- ^ „Certifikace softwarových testerů po celém světě“. Rada pro mezinárodní testování softwaru. Citováno 7. prosince 2017.