what is software quality assurance
Čo je zabezpečenie kvality softvéru?
Zabezpečenie kvality softvéru (SQA) je proces, ktorý zaisťuje, že všetky procesy, metódy, činnosti a pracovné položky softvérového inžinierstva sú monitorované a zodpovedajú definovaným štandardom. Týmito definovanými štandardami môže byť jeden alebo ich kombinácia ako ISO 9000, model CMMI, ISO15504 atď.
SQA zahŕňa všetky procesy vývoja softvéru od definovania požiadaviek po kódovanie až po vydanie. Jej hlavným cieľom je zabezpečiť kvalitu.
Čo sa dozviete:
- Plán zabezpečenia kvality softvéru
- Činnosti SQA
- Normy zabezpečenia kvality softvéru
- Prvky zabezpečenia kvality softvéru
- Techniky SQA
- Záver
- Odporúčané čítanie
Plán zabezpečenia kvality softvéru
Skratka SQAP zahŕňa plán zabezpečenia kvality softvéru postupy, techniky a nástroje, ktoré sa používajú na zaistenie súladu produktu alebo služby s požiadavkami definovanými v SRS (špecifikácia softvérových požiadaviek).
Plán identifikuje zodpovednosti tímu za SQA, uvádza oblasti, ktoré je potrebné skontrolovať a skontrolovať. Taktiež identifikuje pracovné výrobky SQA.
Dokument plánu SQA sa skladá z nasledujúcich častí:
- Účelový oddiel
- Referenčná časť
- Sekcia správy konfigurácie softvéru
- Sekcia o hlásení problémov a nápravných opatreniach
- Sekcia Nástroje, technológie a metodiky
- Sekcia kontroly kódu
- Záznamy: Sekcia zhromažďovania, údržby a uchovávania
- Metodika testovania
Činnosti SQA
Ďalej je uvedený zoznam aktivít SQA:
# 1) Vytvorenie plánu riadenia SQA:
Najdôležitejšia činnosť zahŕňa stanovenie správneho plánu týkajúceho sa toho, ako sa bude SQA uskutočňovať vo vašom projekte.
Spolu s tým, aký prístup SQA budete nasledovať, aké inžinierske činnosti sa budú vykonávať, a to tiež zahŕňa zabezpečenie toho, aby ste mali vo svojom tíme správnu zmes talentov.
# 2) Nastavenie kontrolných bodov:
Tím SQA nastavuje rôzne kontrolné body, podľa ktorých hodnotí kvalitu projektových aktivít v každom kontrolnom bode / fáze projektu. To zaisťuje pravidelnú kontrolu kvality a prácu podľa harmonogramu.
# 3) Použite softvérové techniky:
Aplikácia niektorých techník softvérového inžinierstva pomáha softvérovému dizajnérovi dosiahnuť vysoko kvalitnú špecifikáciu. Na zhromažďovanie informácií môže dizajnér použiť techniky, ako sú rozhovory a FAST (Technika funkčnej analýzy systému).
Neskôr, na základe zhromaždených informácií, môže softvérový dizajnér pripraviť odhad projektu pomocou techník ako WBS (štruktúra rozdelenia práce), SLOC (zdrojový riadok kódov) a FP (funkčný bod) odhad.
ako nájsť xpath v tj
# 4) Vykonávanie formálnych technických kontrol:
Vykoná sa FTR na vyhodnotenie kvality a dizajnu prototypu.
V tomto procese sa koná stretnutie s technickým personálom, na ktorom sa diskutuje o skutočných kvalitatívnych požiadavkách na softvér a kvalite návrhu prototypu. Táto aktivita pomáha pri detekcii chýb v počiatočnej fáze SDLC a znižuje úsilie na prepracovanie v neskorších fázach.
# 5) Stratégia viacerých testov:
ako zavolať pole z inej metódy v jave -
Stratégiou viacnásobného testovania máme na mysli to, že by sme sa nemali spoliehať na žiadny jednotlivý testovací prístup, namiesto toho by sa malo vykonávať viac druhov testovania, aby bolo možné softvérový produkt testovať dobre zo všetkých uhlov, aby sa zabezpečila lepšia kvalita.
# 6) Presadzovanie dodržiavania procesov:
Táto aktivita trvá na potrebe dodržiavania procesov počas procesu vývoja softvéru. Proces vývoja by sa mal tiež držať stanovených postupov.
Táto aktivita je zmesou dvoch čiastkových činností, ktoré sú podrobne vysvetlené nižšie:
i) Hodnotenie produktu:
Táto aktivita potvrdzuje, že softvérový produkt spĺňa požiadavky, ktoré sa zistili v pláne riadenia projektu. Zaisťuje správne dodržiavanie stanovených štandardov pre projekt.
ii) Monitorovanie procesov:
Táto aktivita overuje, či boli počas vývoja softvéru urobené správne kroky. To sa deje porovnaním skutočne prijatých krokov s dokumentovanými krokmi.
# 7) Kontrola zmeny:
V tejto aktivite používame kombináciu manuálnych postupov a automatizovaných nástrojov, ktoré majú mechanizmus na kontrolu zmien.
Validáciou požiadaviek na zmenu, vyhodnotením povahy zmeny a riadením efektu zmeny je zabezpečené udržanie kvality softvéru počas fáz vývoja a údržby.
# 8) Dopad zmeny opatrenia:
Ak tím QA nahlási poruchu, dotknutý tím ju napraví.
Potom by mal tím QA určiť dopad zmeny, ktorú táto oprava chyby prinesie. Musia otestovať nielen to, či zmena opravila chybu, ale aj či je zmena kompatibilná s celým projektom.
Na tento účel používame metriky kvality softvéru, ktoré umožňujú manažérom a vývojárom sledovať aktivity a navrhované zmeny od začiatku do konca SDLC a iniciovať nápravné opatrenia, kedykoľvek je to potrebné.
# 9) Vykonávanie auditov SQA:
Audit SQA kontroluje celý skutočný proces SDLC, po ktorom nasleduje porovnanie so zavedeným procesom.
Tiež kontroluje, čo všetko tím nahlásil v správach o stave, či sa skutočne vykonalo alebo nie. Táto činnosť tiež odhaľuje akékoľvek problémy s nesúladom.
# 10) Vedenie záznamov a správ:
Je nevyhnutné viesť potrebnú dokumentáciu súvisiacu so SQA a zdieľať požadované informácie SQA so zainteresovanými stranami. Výsledky testov, výsledky auditu, správy o preskúmaní, dokumentácia požiadaviek na zmeny atď. By sa mali uchovať pre budúcu potrebu.
# 11) Spravujte dobré vzťahy:
V skutočnosti je veľmi dôležité udržiavať harmóniu medzi QA a vývojovým tímom.
Často počúvame, že testeri a vývojári sa navzájom často cítia lepšie. Tomu by sa malo zabrániť, pretože to môže ovplyvniť celkovú kvalitu projektu.
Normy zabezpečenia kvality softvéru
Všeobecne môže SQA vyžadovať zhodu s jedným alebo viacerými štandardmi.
Niektoré z najpopulárnejších štandardov sú uvedené nižšie:
ISO 9000: Tento štandard je založený na siedmich princípoch riadenia kvality, ktoré pomáhajú organizáciám zabezpečiť, aby ich výrobky alebo služby zodpovedali potrebám zákazníka. “
Na nasledujúcom obrázku je znázornených 7 princípov normy ISO 9000:
Úroveň CMMI: CMMI znamená Integrácia modelu zrelosti schopností . Tento model vznikol v softvérovom inžinierstve. Môže sa použiť na nasmerovanie zlepšenia procesu v rámci projektu, oddelenia alebo celej organizácie.
5 úrovní CMMI a ich charakteristiky sú popísané na nasledujúcom obrázku:
Organizácia je hodnotená a je jej udelené hodnotenie úrovne vyspelosti (1 - 5) na základe typu posúdenia.
Integrácia testovacieho modelu zrelosti (TMMi): Tento model založený na CMMi sa zameriava na úrovne zrelosti v oblasti riadenia a testovania kvality softvéru.
Na nasledujúcom obrázku je znázornených 5 úrovní TMMi:
softvér na stiahnutie videa z youtube pre PC
Keď sa organizácia posúva na vyššiu úroveň vyspelosti, dosahuje vyššiu schopnosť vyrábať vysokokvalitné výrobky s menším počtom chýb a presne zodpovedá obchodným požiadavkám.
Prvky zabezpečenia kvality softvéru
Existuje 10 základných prvkov SQA, ktoré sú uvedené nižšie pre vašu referenciu:
- Normy softvérového inžinierstva
- Technické kontroly a audity
- Testovanie softvéru na kontrolu kvality
- Zhromažďovanie a analýza chýb
- Riadenie zmien
- Vzdelávacie programy
- Správa dodávateľov
- Správa bezpečnosti
- Bezpečnosť
- Riadenie rizík
Techniky SQA
Existuje niekoľko techník pre SQA. Audit je hlavnou technikou, ktorá sa všeobecne prijíma. Máme však aj niekoľko ďalších významných techník.
Medzi rôzne techniky SQA patria:
- Auditovanie: Audit zahŕňa kontrolu pracovných výrobkov a súvisiacich informácií s cieľom zistiť, či bol alebo nebol dodržaný súbor štandardných procesov.
- Prebieha kontrola : Stretnutie, na ktorom softvérový produkt preskúmajú interné aj externé zainteresované strany s cieľom získať ich pripomienky a schválenie.
- Kontrola kódu: Je to najformálnejší druh kontroly, ktorá robí statické testovanie, aby sa našli chyby a zabránilo sa rastu defektov v neskorších fázach. Vykonáva to vyškolený mediátor / rovnocenný pracovník a je založené na pravidlách, kontrolnom zozname, vstupných a výstupných kritériách. Recenzent by nemal byť autorom kódu.
- Kontrola dizajnu: Kontrola návrhu sa vykonáva pomocou kontrolného zoznamu, ktorý kontroluje nasledujúce oblasti softvérového dizajnu:
- Všeobecné požiadavky a dizajn
- Funkčné špecifikácie a špecifikácie rozhrania
- Dohovory
- Vysledovateľnosť požiadavky
- Štruktúry a rozhrania
- Logika
- Výkon
- Spracovanie a obnovenie chyby
- Testovateľnosť, rozšíriteľnosť
- Spojenie a súdržnosť
- Simulácia: Simulácia je nástroj, ktorý modeluje situáciu v reálnom živote s cieľom prakticky preskúmať správanie skúmaného systému.
- Funkčné testovanie: Jedná sa o techniku QA, ktorá overuje, čo systém robí, bez toho, aby zvážila, ako robí. Tento typ testovanie čiernej skrinky sa zameriava hlavne na testovanie špecifikácií alebo funkcií systému.
- Štandardizácia: Normalizácia zohráva rozhodujúcu úlohu pri zabezpečovaní kvality. Znižuje to nejednoznačnosť a dohady, čím sa zaisťuje kvalita.
- Statická analýza: Jedná sa o softvérovú analýzu, ktorá sa vykonáva automatizovaným nástrojom bez skutočného vykonania programu. Táto technika sa veľmi často používa na zabezpečenie kvality lekárskeho, jadrového a leteckého softvéru. Softvérové metriky a reverzné inžinierstvo sú niektoré populárne formy statickej analýzy.
- Návody: Softvérová príručka alebo návod na použitie kódu je druh vzájomného hodnotenia, keď vývojár vedie členov vývojového tímu k tomu, aby prešli produktom a vyvolali dotazy, navrhli alternatívy, komentovali možné chyby, porušenia štandardov alebo akékoľvek iné problémy.
- Testovanie cesty: Je to technika testovania bielej skrinky kde je úplné pokrytie vetvy zabezpečené vykonaním každej nezávislej cesty aspoň raz.
- Stresové testovanie: Tento typ testovania sa vykonáva s cieľom skontrolovať, ako robustný je systém, a to tak, že ho otestujete pri veľkom zaťažení, tj. Za bežných podmienok.
- Six Sigma: Six Sigma je prístup zabezpečovania kvality zameraný na takmer dokonalé výrobky alebo služby. Je široko používaný v mnohých oblastiach vrátane softvéru. Hlavným cieľom Six Sigma je vylepšenie procesu tak, aby vyrobený softvér neobsahoval 99,76% chýb.
Záver
SQA je zastrešujúca činnosť, ktorá sa využíva počas celého životného cyklu softvéru.
Zabezpečenie kvality softvéru je pre váš softvérový produkt alebo službu veľmi dôležité, aby uspeli na trhu a prežili podľa očakávaní zákazníka.
Existujú rôzne činnosti, štandardy a techniky, ktoré musíte dodržiavať, aby ste sa ubezpečili, že dodávaný softvér je vysoko kvalitný a úzko súvisí s obchodnými potrebami.
Dúfam, že by ste dostali jasnú predstavu o koncepcii zabezpečenia kvality softvéru prostredníctvom tohto informačného článku !!
Odporúčané čítanie
- Testovanie softvéru a certifikácia zabezpečenia kvality - 2. časť
- Čo sú atribúty kvality?
- Falošný Boh kvality verzus skutoční ľudia - Kto je zodpovedný za kvalitu softvéru?
- Rozdiel medzi zabezpečením kvality a kontrolou kvality (QA vs. QC)
- Sprievodca dokonalým pokračovaním v testovaní softvéru (s ukážkou pokračovania v softvérovom testeri)
- Ako používať techniku Poka-Yoke (kontrola chýb) na zlepšenie kvality softvéru
- Vzájomné porozumenie v testovaní: Kľúč pre dodávku kvalitného softvéru
- Úloha pomocníka QA pri testovaní softvéru