Înainte de a învăța asigurarea calității, să înțelegem-
Ce este calitatea?
Calitatea este extrem de greu de definit și se afirmă pur și simplu: „Potrivit pentru utilizare sau scop”. Este vorba despre satisfacerea nevoilor și așteptărilor clienților în ceea ce privește funcționalitatea, designul, fiabilitatea, durabilitatea și prețul produsului.
Ce este Assurance?
Asigurarea nu este altceva decât o declarație pozitivă asupra unui produs sau serviciu, care oferă încredere. Este certitudinea unui produs sau a unui serviciu, pe care îl va funcționa bine. Oferă o garanție că produsul va funcționa fără probleme conform așteptărilor sau cerințelor.
Asigurarea calității în testarea software-ului
Asigurarea calității în testarea software-ului este definită ca o procedură pentru a asigura calitatea produselor software sau a serviciilor furnizate clienților de către o organizație. Asigurarea calității se concentrează pe îmbunătățirea procesului de dezvoltare a software-ului și eficientizarea acestuia, conform standardelor de calitate definite pentru produsele software. Asigurarea calității este cunoscută popular sub numele de testare QA.
În acest tutorial, veți învăța-
- Cum se face asigurarea calității: proces complet
- Ce este controlul calității?
- Diferența dintre controlul calității și asigurarea calității?
- Diferențe între SQA și testarea software-ului
- Cele mai bune practici pentru asigurarea calității
- Funcții de asigurare a calității
- Certificări de asigurare a calității
- Nivel CMMI
- Test Maturity Model (TMM)
Cum se face asigurarea calității: proces complet
Metodologia de asigurare a calității are un ciclu definit numit ciclu PDCA sau ciclu Deming. Fazele acestui ciclu sunt:
- Plan
- Do
- Verifica
- act
Acești pași de mai sus sunt repetați pentru a se asigura că procesele urmate în organizație sunt evaluate și îmbunătățite periodic. Să analizăm în detaliu pașii procesului QA de mai sus -
- Plan - Organizația ar trebui să planifice și să stabilească obiectivele legate de proces și să stabilească procesele necesare pentru a furniza un produs final de înaltă calitate.
- Do - Dezvoltarea și testarea proceselor și, de asemenea, "face" modificările proceselor
- Verificare - Monitorizarea proceselor, modificarea proceselor și verificarea dacă îndeplinește obiectivele prestabilite
- Act - Un tester de asigurare a calității ar trebui să implementeze acțiunile necesare pentru a obține îmbunătățiri în procese
O organizație trebuie să utilizeze Asigurarea calității pentru a se asigura că produsul este proiectat și implementat cu proceduri corecte. Acest lucru ajută la reducerea problemelor și erorilor din produsul final.
Ce este controlul calității?
Controlul calității abreviat popular ca QC. Este un proces de inginerie software utilizat pentru a asigura calitatea unui produs sau serviciu. Nu se ocupă de procesele utilizate pentru a crea un produs; mai degrabă examinează calitatea „produselor finale” și rezultatul final.
Scopul principal al controlului calității este de a verifica dacă produsele îndeplinesc specificațiile și cerințele clientului. Dacă este identificată o problemă sau o problemă, aceasta trebuie rezolvată înainte de livrarea către client.
QC evaluează, de asemenea, oamenii în ceea ce privește seturile lor de calificare la nivel de calitate și conferă instruire și certificări. Această evaluare este necesară pentru organizația bazată pe servicii și ajută la furnizarea de servicii „perfecte” clienților.
Diferența dintre controlul calității și asigurarea calității?
Uneori, QC este confundat cu QA. Controlul calității este de a examina produsul sau serviciul și de a verifica rezultatul. Asigurarea calității în ingineria software este de a examina procesele și de a aduce modificări proceselor care au condus la produsul final.
Exemple de activități QC și QA sunt următoarele:
Activități de control al calității | Activități de asigurare a calității |
---|---|
Rezolvare generală | Audit de calitate |
Testarea | Procesul de definire |
Inspecţie | Identificarea și selectarea instrumentului |
Revizuirea punctului de control | Instruirea standardelor și proceselor de calitate |
Activitățile de mai sus se referă la mecanismele de asigurare și control al calității pentru orice produs și nu în esență software . În ceea ce privește software-ul
- QA devine SQA (Software Quality Assurance)
- QC devine Testarea software-ului .
Diferențe între SQA și testarea software-ului
Următorul tabel explică diferențele dintre SQA și testarea software-ului:
SQA |
Testarea software-ului |
---|---|
Asigurarea calității software-ului este despre procesul de inginerie care asigură calitatea | Testarea software-ului este de a testa un produs pentru probleme înainte ca acesta să devină activ |
Implică activități legate de implementarea proceselor, procedurilor și standardelor. Exemplu - Instruirea auditului | Implică activele referitoare la verificarea produsului Exemplu - Revizuirea testării |
Proces concentrat | Centrat pe produs |
Tehnica preventivă | Tehnica corectivă |
Măsură proactivă | Măsură reactivă |
Domeniul de aplicare al SQA s-a aplicat tuturor produselor care vor fi create de organizație | Domeniul de aplicare al testării software se aplică unui anumit produs testat. |
Cele mai bune practici pentru asigurarea calității:
- Creați un mediu de testare robust
- Selectați cu atenție criteriile de lansare
- Aplicați teste automate în zonele cu risc ridicat pentru a economisi bani. Ajută la fixarea întregului proces.
- Alocați timpul în mod corespunzător pentru fiecare proces
- Este important să acordați prioritate remedierilor de erori pe baza utilizării software-ului
- Formați o echipă dedicată de testare a securității și performanței
- Simulează conturi de clienți similare unui mediu de producție
Funcții de asigurare a calității:
Există 5 funcții principale de asigurare a calității:
- Transfer tehnologic: Această funcție implică obținerea unui document de proiectare a produsului, precum și date de încercare și eroare și evaluarea acestuia. Documentele sunt distribuite, verificate și aprobate
- Validare: aici este pregătit planul general de validare pentru întregul sistem. Se stabilește aprobarea criteriilor de testare pentru validarea produsului și a procesului. Planificarea resurselor pentru executarea unui plan de validare se face.
- Documentare: Această funcție controlează distribuția și arhivarea documentelor. Orice modificare a unui document se face prin adoptarea procedurii adecvate de control al modificărilor. Aprobarea tuturor tipurilor de documente.
- Asigurarea calității produselor
- Planuri de îmbunătățire a calității
Certificări de asigurare a calității:
Există mai multe certificări disponibile în industrie pentru a se asigura că organizațiile respectă procesele de calitate ale standardelor. Clienții fac acest lucru drept criterii de calificare în timp ce selectează un furnizor de software.
ISO 9000
Acest standard a fost stabilit pentru prima dată în 1987 și este legat de sistemele de management al calității. Acest lucru ajută organizația să asigure calitate clienților lor și altor părți interesate. O organizație care dorește să fie certificată ISO 9000 este auditată pe baza funcțiilor, produselor, serviciilor și proceselor lor. Obiectivul principal este de a revizui și verifica dacă organizația urmărește procesul așa cum era de așteptat și de a verifica dacă procesele existente necesită îmbunătățiri.
Această certificare ajută -
- Creșteți profitul organizației
- Îmbunătățește comerțul intern și internațional
- Reduce risipa și crește productivitatea angajaților
- Oferiți o satisfacție excelentă a clienților
Nivel CMMI
Capability Maturity Model integrat (CMMI) este o abordare de imbunatatire a procesului dezvoltat special pentru îmbunătățirea procesului de software. Se bazează pe cadrul de maturitate al procesului și este utilizat ca un ajutor general în procesele de afaceri din industria software. Acest model este foarte apreciat și utilizat pe scară largă în organizațiile de dezvoltare software.
CMMI are 5 nivele. O organizație este certificată la nivel CMMI de la 1 la 5 pe baza maturității mecanismelor lor de asigurare a calității.
- Nivelul 1 - inițial: în această etapă, mediul de calitate este instabil. Pur și simplu, nu au fost urmate sau documentate procese
- Nivelul 2 - Repetabil: sunt urmate unele procese care pot fi repetate. Acest nivel asigură urmărirea proceselor la nivelul proiectului.
- Nivelul 3 - Definit: Setul de procese este definit și documentat la nivel organizațional. Aceste procese definite sunt supuse unui anumit grad de îmbunătățire.
- Nivelul 4 - Gestionat: Acest nivel utilizează metricele proceselor și controlează eficient procesele care sunt urmate.
- Nivelul 5 - Optimizare: Acest nivel se concentrează pe îmbunătățirile continue ale proceselor prin învățare și inovare.
Modelul de maturitate al testului (TMM):
Acest model evaluează maturitatea proceselor într-un mediu de testare. Chiar și acest model are 5 niveluri, definite mai jos-
- Nivelul 1 - Inițial : Nu există un standard de calitate urmat pentru procesele de testare și la acest nivel sunt utilizate doar metode ad-hoc
- Nivelul 2 - Definiție: Proces definit. Pregătirea strategiei de testare, a planurilor, a cazurilor de testare se face.
- Nivelul 3 - Integrare: Testarea se efectuează pe tot parcursul ciclului de viață al dezvoltării software (SDLC) - care nu este altceva decât integrarea cu activitățile de dezvoltare, de exemplu, modelul V.
- Nivelul 4 - Management și măsurare: Revizuirea cerințelor și a proiectelor are loc la acest nivel și au fost stabilite criterii pentru fiecare nivel de testare
- Nivelul 5 - Optimizare: Multe tehnici preventive sunt utilizate pentru procesele de testare, iar suportul pentru instrumente (Automatizare) este utilizat pentru a îmbunătăți standardele și procesele de testare.
Concluzie:
Asigurarea calității este de a verifica dacă produsul dezvoltat este potrivit pentru utilizare. Pentru aceasta, organizația ar trebui să aibă de urmat procese și standarde care trebuie îmbunătățite periodic. Se concentrează în principal pe calitatea produsului / serviciului pe care îl oferim clienților în timpul sau după implementarea software-ului.