exact difference between verification
Verificació vs validació: exploreu les diferències amb exemples
És així tornar als conceptes bàsics gent! Una mirada clàssica sobre la diferència entre Verificació i validació .
Hi ha molta confusió i debat al voltant d’aquests termes al món de les proves de programari.
En aquest article, veurem què són la verificació i la validació des del punt de vista de les proves de programari. Al final d'aquest article, obtindrem la deriva de les diferències entre els dos termes.
A continuació es detallen alguns dels motius importants per entendre la diferència:
- És un concepte fonamental de la QA, per tant, és gairebé l’element bàsic per ser conscient de la QA.
- Aquesta és una pregunta habitual Pregunta d'entrevista de proves de programari .
- Certificació el programa té un bon nombre de capítols que giren al voltant d’això.
- Finalment, i pràcticament a mesura que els provadors realitzem aquests dos tipus de proves, també en podríem ser experts.
Què aprendreu:
- Què és la verificació i la validació en proves de programari?
- Què és la verificació?
- Què és la validació?
- Exemples de validació i verificació
- V&V en diferents fases del cicle de vida del desenvolupament
- Diferència entre verificació i validació
- Diverses normes
- Quan s'ha d'utilitzar Validar i verificar?
- Conclusió
Què és la verificació i la validació en proves de programari?
En el context de les proves, ' Verificació i validació ”Són els dos termes més utilitzats. La majoria de les vegades, considerem els dos termes com els mateixos, però en realitat, aquests termes són força diferents.
Hi ha dos aspectes de les tasques V&V (verificació i validació):
- Confirma els requisits (Vista de qualitat del productor)
- Apte per al seu ús (vista dels consumidors sobre la qualitat)
La visió del productor sobre la qualitat , en termes més senzills, significa que els desenvolupadors perceben el producte final.
Els consumidors veuen la qualitat significa la percepció de l’usuari sobre el producte final.
Quan realitzem les tasques de V&V, ens hem de concentrar en aquestes dues visions de qualitat.
Primer comencem per les definicions de verificació i validació i després anirem comprenent aquests termes amb exemples.
Nota: Aquestes definicions són, com s’esmenta al CSTE CBOK de QAI (consulteu aquest enllaç per obtenir més informació sobre CSTE).
Què és la verificació?
La verificació és el procés d’avaluació dels productes de treball intermedis d’un cicle de vida de desenvolupament de programari per comprovar si estem en el bon camí per crear el producte final.
En altres paraules, també podem afirmar que la verificació és un procés per avaluar els productes mediadors del programari per comprovar si els productes compleixen les condicions imposades durant el començament de la fase.
Ara la pregunta aquí és: Quins són els productes intermediaris o mediadors?
Bé, aquests poden incloure els documents que es produeixen durant les fases de desenvolupament com, especificació de requisits, documents de disseny, disseny de taules de bases de dades, diagrames ER, casos de prova, matriu de traçabilitat , Etc.
De vegades tendim a descuidar la importància de revisar aquests documents, però hem d’entendre que revisar-se pot descobrir moltes anomalies ocultes quan, si es troba o es corregeix en la fase posterior del cicle de desenvolupament, pot ser molt costós.
La verificació assegura que el sistema (programari, maquinari, documentació i personal) compleix els estàndards i processos de l’organització, basant-se en la revisió o els mètodes no executables.
On es realitza la verificació?
Específics per a projectes de TI, a continuació es detallen algunes de les àrees (he de destacar que això no és tot) en què es realitza la verificació.
Situació de verificació | Actors | Definició | Sortida |
---|---|---|---|
Revisió de la documentació de la prova (revisió paritària) | Membres de l'equip de control de qualitat | Una revisió per parells és on els membres de l’equip es revisen els treballs dels altres per assegurar-se que no hi hagi errors en la pròpia documentació. | Documentació de proves preparada per compartir amb equips externs. |
Revisió de requisits empresarials / funcionals | Equip de desenvolupament / client per als requisits empresarials. | Aquest és un pas necessari per no només assegurar-se que els requisits s'han reunit i / o correctament, sinó també per assegurar-se si són factibles o no. | Requisits finalitzats que es poden consumir en el següent pas: disseny. |
Revisió del disseny | Equip de desenvolupament | Després de la creació del disseny, l’equip de Dev ho revisa a fons per assegurar-se que es poden complir els requisits funcionals mitjançant el disseny proposat. | El disseny està a punt per implementar-se en un sistema informàtic. |
Resolució de codi | Desenvolupador individual | Un cop escrit el codi es revisa per identificar qualsevol error sintàctic. Això té una naturalesa més informal i el desenvolupador individual el realitza sobre el codi desenvolupat per un mateix. | Codi a punt per a les proves d’unitats. |
Inspecció de codi | Equip de desenvolupament | Es tracta d’una configuració més formal. Els experts i els desenvolupadors de la matèria comproven el codi per assegurar-se que compleix els objectius comercials i funcionals objectius del programari. | Codi a punt per a la prova. |
Revisió del pla de proves (intern a l'equip de control de qualitat) | Equip de control de qualitat | L’equip de control de qualitat revisa internment un pla de prova per assegurar-se que és exacte i complet. | Un document de pla de proves a punt per compartir amb equips externs (gestió de projectes, anàlisi de negoci, desenvolupament, entorn, client, etc.) |
Revisió del pla de proves (extern) | Director de projectes, analista de negocis i desenvolupador. | Una anàlisi formal del document del pla de proves per assegurar-se que la línia de temps i altres consideracions de l'equip de control de qualitat estan en línia amb els altres equips i amb el propi projecte. | Un document del pla de proves aprovat o aprovat, basat en el qual es basarà l'activitat de proves. |
Revisió final de la documentació de la prova | Analista de negocis i equip de desenvolupament. | Una revisió de la documentació de la prova per assegurar-se que els casos de prova cobreixen totes les condicions comercials i els elements funcionals del sistema. | Documentació de prova preparada per executar-se. |
Vegeu el revisió de la documentació de la prova article que publica un procés detallat sobre com els verificadors poden realitzar la revisió.
Què és la validació?
La validació és el procés d'avaluació del producte final per comprovar si el programari compleix les necessitats empresarials. En paraules simples, l'execució de la prova que fem en el nostre dia a dia és en realitat l'activitat de validació que inclou proves de fum , proves funcionals, proves de regressió, proves de sistemes, etc.
La validació és tota forma de prova que implica treballar amb el producte i posar-lo a prova.
A continuació es detallen les tècniques de validació:
La validació garanteix físicament que el sistema funciona segons un pla executant les funcions del sistema mitjançant una sèrie de proves que es poden observar i avaluar.
Prou just, oi? Aquí vénen els meus dos cèntims:
Quan intento tractar aquest concepte de V&V a la meva classe, hi ha molta confusió al voltant. Un exemple senzill i mesquí sembla solucionar tota la confusió. És una mica ximple, però realment funciona.
Exemples de validació i verificació
Exemple de la vida real :Imagineu-vos que aneu a un restaurant / sopar i demaneu potser panellets de nabius. Quan el cambrer / camarera fa arribar la vostra comanda, com es pot dir que el menjar que va sortir és segons la vostra comanda?
Les primeres coses són que ens hi fixem i notem les coses següents:
plantilla d'informe de resum de proves a Excel
- El menjar s’assembla al que solen ser els panellets?
- S’han de veure els nabius?
- Oloren bé?
Potser més, però teniu la idea correcta?
D’altra banda, quan cal estar absolutament segur de si el menjar és el que esperava: l’haureu de menjar.
La verificació es realitza quan encara no heu menjat, però reviseu algunes qüestions. La validació és quan realment mengeu el producte per veure si és correcte.
En aquest context, no puc evitar-me, sinó tornar al CSTE CBOK referència. Hi ha una declaració meravellosa que ens ajuda a portar aquest concepte a casa.
La verificació respon a la pregunta: 'Hem creat el sistema adequat?' mentre les validacions dirigeixen: 'Hem creat bé el sistema?'
V&V en diferents fases del cicle de vida del desenvolupament
La verificació i la validació es realitzen en cadascuna de les fases del cicle de vida del desenvolupament.
Intentem fer-hi una ullada.
# 1) Tasques de V&V - Planificació
- Verificació del contracte.
- Avaluació del document conceptual.
- Realització d’anàlisis de riscos.
# 2) Tasques de V&V - Fase de requisits
- Avaluació de requeriments de programari.
- Avaluació / anàlisi de les interfícies.
- Generació del pla de proves de sistemes.
- Generació del pla de prova d’acceptació.
# 3) Tasques de V&V - Fase de Disseny
- Avaluació del disseny de programari.
- Avaluació / Anàlisi de les interfícies (IU).
- Generació de pla de proves d’integració.
- Generació del pla de prova de components.
- Generació de disseny de proves.
# 4) Tasques de V&V - Fase d’implementació
- Avaluació del codi font.
- Avaluació de documents.
- Generació de casos de prova.
- Generació del procediment de prova.
- Execució de casos de prova de components.
# 5) Tasques de V&V - Fase de prova
- Execució de casos de proves de sistemes.
- Execució del cas de prova d’acceptació.
- Actualització de mètriques de traçabilitat.
- Anàlisi de riscos
# 6) Tasques de V&V - Fase d’instal·lació i sortida
- Auditoria d'instal·lació i configuració.
- La prova final de la compilació del candidat a la instal·lació.
- Generació de l'informe final de la prova.
# 7) Tasques de V&V - Fase d’Operació
- Avaluació de noves restriccions.
- Valoració del canvi proposat.
# 8) Tasques de V&V - Fase de manteniment
- Avaluació de les anomalies.
- Avaluació de la migració.
- Avaluació de les característiques de nou judici.
- Avaluació del canvi proposat.
- Validació dels problemes de producció.
Diferència entre verificació i validació
Verificació | Validació |
---|---|
Avalua els productes intermediaris per comprovar si compleix els requisits específics de la fase concreta. | Avalua el producte final per comprovar si compleix les necessitats empresarials. |
Comprova si el producte està construït segons els requisits especificats i les especificacions de disseny. | Determina si el programari és apte per al seu ús i satisfà les necessitats empresarials. |
Comprovacions 'Estem construint el producte bé'? | Comprovacions 'Estem construint el producte adequat'? |
Això es fa sense executar el programari. | Es fa amb l'execució del programari. |
Implica totes les tècniques de proves estàtiques. | Inclou totes les tècniques de proves dinàmiques. |
Els exemples inclouen ressenyes, inspecció i tutorial. | L'exemple inclou tot tipus de proves, com ara fum, regressió, funcionals, sistemes i UAT. |
Diverses normes
ISO / IEC 12207: 2008
Activitats de verificació | Activitats de validació |
---|---|
La verificació dels requisits implica una revisió dels requisits. | Prepareu els documents de requisits de la prova, casos de prova i altres especificacions de prova per analitzar els resultats de la prova. |
La verificació del disseny implica la revisió de tots els documents de disseny, inclosos els HLD i LDD. | Avalueu que aquests requisits de prova, casos de prova i altres especificacions reflecteixen els requisits i són aptes per al seu ús. |
La verificació del codi inclou la revisió del codi. | Prova de valors límit, tensió i funcionalitats. |
La verificació de documentació és la verificació de manuals d’usuari i altres documents relacionats. | Proveu si hi ha missatges d’error i, en cas d’error, l’aplicació finalitza amb gràcia. Comprova que el programari compleix els requisits del negoci i que és apte per al seu ús. |
CMMI:
La verificació i la validació són dos KPA diferents al nivell de venciment 3
Activitats de verificació | Activitats de validació |
---|---|
Realització d’avaluacions per parells. | Valideu que els productes i els seus components són adequats per al medi ambient. |
Verifiqueu els productes de treball seleccionats. | Quan s’implementa el procés de validació, es controla i controla. |
Estandarditzeu un procés definit establint polítiques a nivell organitzatiu per planificar i fer revisions. | Feu activitats de lliçons apreses i recopileu informació de millora. Institucionalitzar un procés definit. |
IEEE 1012:
Els objectius d’aquestes activitats de prova són:
- Facilita la detecció precoç i la correcció d’errors.
- Fomenta i millora la intervenció de gestió dins dels riscos de processos i productes.
- Proporciona mesures de suport per al procés de cicle de vida del programari, per millorar el compliment dels requisits de calendari i pressupost.
Quan s'ha d'utilitzar Validar i verificar?
Es tracta de procediments independents que s’han d’utilitzar conjuntament per comprovar si el sistema o l’aplicació compleix els requisits i les especificacions i que assoleix el propòsit previst. Tots dos són components importants del sistema de gestió de la qualitat.
Sovint és possible que un producte passi per la verificació, però falli en la fase de validació. Tanmateix, a mesura que complia els requisits i les especificacions documentats, aquestes especificacions eren incapaces de satisfer les necessitats de l'usuari. Per tant, és important realitzar proves per als dos tipus per garantir la qualitat general.
La verificació es pot utilitzar com a procés intern en desenvolupament, ampliació o producció. D'altra banda, la validació s'ha d'utilitzar com a procés extern per aconseguir l'acceptació de la forma física amb els grups d'interès.
La validació o verificació de la UAT és?
La UAT (User Acceptance Testing) s’ha de considerar com a validació. És la validació real del sistema o aplicació, que fan els usuaris reals que validen si el sistema és 'apte per al seu ús'.
Conclusió
Els processos de V&V determinen si els productes d’una determinada activitat s’ajusten als requisits i són aptes per al seu ús.
Finalment, a continuació, es detallen algunes coses:
- En termes molt més senzills (per evitar qualsevol tipus de confusió), només recordem que la verificació significa les activitats de revisió o les tècniques de proves estàtiques i la validació significa les activitats reals d’execució de les proves o les tècniques de proves dinàmiques.
- La verificació pot implicar o no el producte en si. La validació necessita definitivament el producte. De vegades es pot fer la verificació dels documents que representen el sistema final.
- Els verificadors no necessàriament han de realitzar la verificació i la validació. Com veieu més amunt en aquest article, alguns d'aquests són realitzats pels desenvolupadors i altres equips.
Això és tot el que heu de saber sobre la verificació i la validació per ser les pimes (experts en la matèria) del tema.
Lectura recomanada
- Diferència entre la prova d'escriptori, el servidor de clients i la prova web
- Proves funcionals i proves de rendiment: s'hauria de fer simultàniament?
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Proves funcionals contra proves no funcionals
- Proves estàtiques i proves dinàmiques: diferència entre aquestes dues tècniques de prova importants
- Prova de rendiment vs Prova de càrrega vs Prova d’estrès (diferència)
- Guia completa de proves de verificació de compilació (proves BVT)
- 101 diferències entre els fonaments bàsics de les proves de programari