exact difference between verification
Verificare vs validare: explorați diferențele cu exemple
Este Înapoi la elementele de bază oameni buni! O privire clasică asupra diferenței dintre Verificare si validare .
Există o mulțime de confuzie și dezbateri în jurul acestor termeni în lumea testării software-ului.
În acest articol, vom vedea ce sunt verificarea și validarea din punctul de vedere al testării software-ului. Până la sfârșitul acestui articol, vom obține derivarea diferențelor dintre cei doi termeni.
Iată câteva dintre motivele importante pentru a înțelege diferența:
- Este un concept fundamental de QA, de aceea este aproape elementul de bază pentru a fi conștient de QA.
- Aceasta este o întrebare frecventă Întrebare de interviu pentru testarea software-ului .
- Certificare programa are un număr mare de capitole care se învârt în jurul acesteia.
- În cele din urmă și, practic, pe măsură ce noi testerii efectuăm ambele tipuri de testare, am putea la fel de bine să fim experți în acest sens.
Ce veți învăța:
- Ce este verificarea și validarea în testarea software-ului?
- Ce este verificarea?
- Ce este validarea?
- Exemple de validare și verificare
- V&V în diferite etape ale ciclului de viață al dezvoltării
- Diferența dintre verificare și validare
- Diferite standarde
- Când se folosește Validare și verificare?
- Concluzie
Ce este verificarea și validarea în testarea software-ului?
În contextul testării, „ Verificare si validare ”Sunt cei doi termeni folosiți pe scară largă. De cele mai multe ori, considerăm ambii termeni la fel, dar, de fapt, acești termeni sunt destul de diferiți.
Există două aspecte ale sarcinilor V&V (verificare și validare):
- Confirmă cerințele (vizualizarea producătorului asupra calității)
- Potrivit pentru utilizare (vizualizarea consumatorilor asupra calității)
Opinia producătorului asupra calității , în termeni mai simpli, înseamnă percepția dezvoltatorilor asupra produsului final.
Consumatorii văd calitatea înseamnă percepția utilizatorului asupra produsului final.
Atunci când îndeplinim sarcinile V&V, trebuie să ne concentrăm pe ambele păreri despre calitate.
Să începem mai întâi cu definițiile de verificare și validare și apoi vom continua să înțelegem acești termeni cu exemple.
Notă: Aceste definiții sunt, așa cum se menționează în CSTE CBOK al QAI (consultați acest link pentru a afla mai multe despre CSTE).
Ce este verificarea?
Verificarea este procesul de evaluare a produselor de lucru intermediare ale unui ciclu de viață al dezvoltării software-ului pentru a verifica dacă suntem pe drumul cel bun de a crea produsul final.
Cu alte cuvinte, putem afirma, de asemenea, că verificarea este un proces de evaluare a produselor mediator ale software-ului pentru a verifica dacă produsele îndeplinesc condițiile impuse la începutul fazei.
Acum întrebarea aici este: Care sunt produsele intermediare sau mediator?
Ei bine, acestea pot include documentele care sunt produse în timpul fazelor de dezvoltare, cum ar fi, specificațiile cerințelor, documentele de proiectare, proiectarea tabelului bazei de date, diagramele ER, cazurile de testare, matrice de trasabilitate , etc.
Uneori tindem să neglijăm importanța revizuirii acestor documente, dar ar trebui să înțelegem că revizuirea însăși poate afla multe anomalii ascunse atunci când este găsită sau remediată în faza ulterioară a ciclului de dezvoltare, poate fi foarte costisitoare.
Verificarea se asigură că sistemul (software, hardware, documentație și personal) respectă standardele și procesele unei organizații, bazându-se pe metodele de revizuire sau neexecutabile.
Unde se efectuează verificarea?
Specific proiectelor IT, sunt prezentate câteva dintre domeniile (trebuie să subliniez că nu toate acestea) în care se efectuează verificarea.
Situația de verificare | Actori | Definiție | Ieșire |
---|---|---|---|
Revizuirea documentației de testare (evaluare inter pares) | Membrii echipei QA | O evaluare inter pares este locul în care membrii echipei își revizuiesc munca reciprocă pentru a se asigura că nu există greșeli în documentația în sine. | Documentație de testare gata pentru a fi partajată cu echipele externe. |
Revizuirea cerințelor de afaceri / funcționale | Echipa de dezvoltare / client pentru cerințele afacerii. | Acesta este un pas necesar pentru a ne asigura nu numai că cerințele au fost colectate și / sau corect, ci și pentru a ne asigura dacă sunt fezabile sau nu. | Cerințe finalizate care sunt gata să fie consumate de următorul pas - proiectare. |
Revizuirea planului | Echipa de dezvoltatori | După crearea proiectului, echipa Dev o revizuiește temeinic pentru a se asigura că cerințele funcționale pot fi îndeplinite prin proiectarea propusă. | Proiectarea este gata pentru a fi implementată într-un sistem IT. |
Ghid de cod | Dezvoltator individual | Odată scris, codul este revizuit pentru a identifica orice erori sintactice. Acest lucru este mai casual și este realizat de către dezvoltatorul individual pe baza codului dezvoltat de către sine. | Cod gata pentru testarea unității. |
Inspecția codului | Echipa de dezvoltatori | Acesta este un set mai formal. Experții și dezvoltatorii subiectului verifică codul pentru a se asigura că este în conformitate cu obiectivele de afaceri și funcționale vizate de software. | Cod gata pentru testare. |
Revizuirea planului de testare (internă echipei QA) | Echipa QA | Un plan de testare este revizuit intern de echipa QA pentru a se asigura că este corect și complet. | Un document de plan de testare gata pentru a fi partajat cu echipele externe (Management de proiect, Analiza afacerii, dezvoltare, Mediu, client etc.) |
Revizuirea planului de testare (extern) | Manager de proiect, analist de afaceri și dezvoltator. | O analiză formală a documentului planului de testare pentru a vă asigura că cronologia și alte considerații ale echipei de asigurare a calității sunt în concordanță cu celelalte echipe și cu întregul proiect în sine. | Un document de plan de test semnat sau aprobat pe baza căruia se va baza activitatea de testare. |
Revizuirea finală a documentației de testare | Analist de afaceri și echipă de dezvoltare. | O revizuire a documentației de testare pentru a vă asigura că cazurile de testare acoperă toate condițiile de afaceri și elementele funcționale ale sistemului. | Documentația de testare gata de executare. |
A se vedea revizuirea documentației de testare articol care postează un proces detaliat despre modul în care testerii pot efectua revizuirea.
Ce este validarea?
Validarea este procesul de evaluare a produsului final pentru a verifica dacă software-ul satisface nevoile afacerii. În cuvinte simple, execuția testului pe care o facem în viața noastră de zi cu zi este de fapt activitatea de validare care include testarea fumului , testarea funcțională, testarea de regresie, testarea sistemelor etc.
Validarea reprezintă toate formele de testare care implică lucrul cu produsul și testarea acestuia.
Mai jos sunt prezentate tehnicile de validare:
Validarea asigură fizic că sistemul funcționează conform unui plan prin executarea funcțiilor sistemului printr-o serie de teste care pot fi observate și evaluate.
Destul de corect, nu? Aici vin cei doi cenți ai mei:
Când încerc să abordez acest concept V&V în clasa mea, există o mulțime de confuzie în jurul său. Un exemplu simplu și meschin pare să rezolve toată confuzia. Este oarecum prostesc, dar chiar funcționează.
Exemple de validare și verificare
Exemplu din viața reală :Imaginați-vă că mergeți la un restaurant / masă și comandați poate clătite de afine. Când chelnerul / chelnerița îți scoate comanda, cum poți spune că mâncarea care a ieșit este conform comenzii tale?
Primele lucruri sunt că ne uităm la el și observăm următoarele lucruri:
optimizator de sistem gratuit pentru Windows 7
- Mâncarea arată cum ar fi de obicei clătitele?
- Afinele se văd?
- Miroase bine?
Poate mai mult, dar ai înțeles corect?
Pe de altă parte, atunci când trebuie să fii absolut sigur dacă mâncarea este așa cum te-ai așteptat: va trebui să o mănânci.
Verificarea este doar atunci când încă nu mâncați, dar verificați câteva lucruri, examinând subiectele. Validarea este atunci când mănânci efectiv produsul pentru a vedea dacă este corect.
În acest context, nu mă pot abține, dar mă întorc la CSTE CBOK referinţă. Există o afirmație minunată care ne ajută să aducem acest concept acasă.
Verificarea răspunde la întrebarea „Am construit sistemul potrivit?” în timp ce validările se adresează, „Am construit sistemul corect?”
V&V în diferite etape ale ciclului de viață al dezvoltării
Verificarea și validarea sunt efectuate în fiecare dintre fazele ciclului de viață al dezvoltării.
Să încercăm să le aruncăm o privire.
# 1) Sarcini V & V - Planificare
- Verificarea contractului.
- Evaluarea documentului Concept.
- Efectuarea analizei riscurilor.
# 2) Sarcini V & V - Faza cerințelor
- Evaluarea cerințelor software.
- Evaluarea / analiza interfețelor.
- Generarea planului de testare a sistemelor.
- Generarea planului de testare a acceptării.
# 3) Sarcini V&V - Fază de proiectare
- Evaluarea proiectării software-ului.
- Evaluarea / analiza interfețelor (UI).
- Generarea planului de testare a integrării.
- Generarea planului de testare a componentelor.
- Generarea proiectării testelor.
# 4) Sarcini V&V - Faza de implementare
- Evaluarea codului sursă.
- Evaluarea documentelor.
- Generarea de cazuri de testare.
- Generarea procedurii de testare.
- Executarea cazurilor de testare a componentelor.
# 5) Sarcini V&V - Faza de testare
- Executarea cazului de testare a sistemelor.
- Executarea cazului testului de acceptare.
- Actualizarea valorilor de trasabilitate.
- Analiza de risc
# 6) Sarcini V&V - Faza de instalare și verificare
- Auditul instalării și configurării.
- Testul final al construcției candidate la instalare.
- Generarea raportului final de testare.
# 7) Sarcini V&V - Faza de operare
- Evaluarea noii constrângeri.
- Evaluarea modificării propuse.
# 8) Sarcini V&V - Faza de întreținere
- Evaluarea anomaliilor.
- Evaluarea migrației.
- Evaluarea caracteristicilor procesului.
- Evaluarea modificării propuse.
- Validarea problemelor de producție.
Diferența dintre verificare și validare
Verificare | Validare |
---|---|
Evaluează produsele intermediare pentru a verifica dacă îndeplinește cerințele specifice ale fazei respective. | Evaluează produsul final pentru a verifica dacă acesta satisface nevoile afacerii. |
Verifică dacă produsul este construit conform cerințelor specificate și specificațiilor de proiectare. | Determină dacă software-ul este potrivit pentru utilizare și satisface nevoile afacerii. |
Verifică „Construim produsul corect”? | Verifică „Construim produsul potrivit”? |
Acest lucru se face fără a executa software-ul. | Se face cu executarea software-ului. |
Implică toate tehnicile de testare statică. | Include toate tehnicile de testare dinamică. |
Exemplele includ recenzii, inspecții și progrese. | Exemplul include toate tipurile de testare, cum ar fi fum, regresie, funcțional, sisteme și UAT. |
Diferite standarde
ISO / IEC 12207: 2008
Activități de verificare | Activități de validare |
---|---|
Verificarea cerințelor implică o revizuire a cerințelor. | Pregătiți documentele privind cerințele testului, cazurile de testare și alte specificații ale testelor pentru a analiza rezultatele testului. |
Verificarea proiectului implică revizuirea tuturor documentelor de proiectare, inclusiv HLD și LDD. | Evaluați că aceste cerințe de testare, cazuri de testare și alte specificații reflectă cerințele și sunt adecvate pentru utilizare. |
Verificarea codului include revizuirea codului. | Testați pentru valorile limită, tensiunea și funcționalitățile. |
Documentation Verification este verificarea manualelor de utilizare și a altor documente conexe. | Verificați dacă există mesaje de eroare și, în caz de eroare, aplicația este închisă cu grație. Testează dacă software-ul îndeplinește cerințele comerciale și este adecvat pentru utilizare. |
CMMI:
Verificarea și validarea sunt două KPA-uri diferite la nivelul de maturitate 3
Activități de verificare | Activități de validare |
---|---|
Efectuarea de recenzii inter pares. | Validați că produsele și componentele sale sunt potrivite pentru mediu. |
Verificați produsele de lucru selectate. | Când procesul de validare este implementat, acesta este monitorizat și controlat. |
Standardizați un proces definit prin stabilirea politicilor la nivel organizațional pentru planificare și efectuarea de revizuiri. | Faceți activități învățate și culegeți informații despre îmbunătățiri Instituționalizați un proces definit. |
IEEE 1012:
Obiectivele acestor activități de testare sunt:
- Facilitează detectarea timpurie și corectarea erorilor.
- Încurajează și îmbunătățește intervenția managementului în cadrul procesului și al riscurilor produsului.
- Oferă măsuri de sprijin pentru procesul ciclului de viață al software-ului, pentru a îmbunătăți conformitatea cu cerințele de program și buget.
Când se folosește Validare și verificare?
Acestea sunt proceduri independente care ar trebui utilizate împreună pentru a verifica dacă sistemul sau aplicația este în conformitate cu cerințele și specificațiile și dacă își atinge scopul dorit. Ambele sunt componente importante ale sistemului de management al calității.
Este adesea posibil ca un produs să treacă prin verificare, dar nu reușește în faza de validare. Cu toate acestea, întrucât îndeplinea cerințele și specificațiile documentate, aceste specificații erau ele însele incapabile să răspundă nevoilor utilizatorului. Astfel, este important să efectuați teste pentru ambele tipuri pentru a asigura calitatea generală.
Verificarea poate fi utilizată ca proces intern în dezvoltare, extindere sau producție. Pe de altă parte, validarea ar trebui utilizată ca un proces extern pentru a obține acceptarea aptitudinii cu părțile interesate.
Este validarea sau verificarea UAT?
UAT (User Acceptance Testing) ar trebui considerat ca validare. Este validarea reală a sistemului sau aplicației, care este realizată de utilizatorii reali care validează dacă sistemul este „potrivit pentru utilizare”.
Concluzie
Procesele V&V determină dacă produsele unei anumite activități sunt conforme cu cerințele și sunt potrivite pentru utilizarea acesteia.
În cele din urmă, următoarele sunt câteva lucruri de reținut:
- În termeni foarte simpli (pentru a evita orice fel de confuzie), ne amintim doar că verificarea înseamnă activitățile de revizuire sau tehnicile de testare statică, iar validarea înseamnă activitățile reale de execuție a testului sau tehnicile de testare dinamică.
- Verificarea poate implica sau nu produsul în sine. Validarea are cu siguranță nevoie de produs. Verificarea poate fi uneori efectuată asupra documentelor care reprezintă sistemul final.
- Verificarea și validarea nu trebuie neapărat să fie efectuate de testeri. După cum vedeți mai sus în acest articol, unele dintre acestea sunt realizate de dezvoltatori și alte echipe.
Aceasta este tot ce trebuie să știți despre verificare și validare pentru a fi IMM-uri (experți în materie) pe această temă.
Lectură recomandată
- Diferența dintre Desktop, Client Server Testing și Web Testing
- Testarea funcțională vs. Testarea performanței: ar trebui să se facă simultan?
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Testarea funcțională Vs testarea nefuncțională
- Testare statică și testare dinamică - Diferența dintre aceste două tehnici importante de testare
- Testarea performanței vs testarea sarcinii vs testarea stresului (diferență)
- Test de verificare a construcției (testare BVT) Ghid complet
- 101 Diferențe între elementele de bază ale testării software-ului