Introducción A La: Verificacion Y Validacion
Introducción A La: Verificacion Y Validacion
Introducción A La: Verificacion Y Validacion
VERIFICACION
Y
VALIDACION
VERIFICACION Y
VALIDACION DE SOFTWARE
La validación y verificación (V y V) de
software se define como un conjunto de
procedimientos, actividades, técnicas y
herramientas que se utilizan, paralelamente al
desarrollo, para asegurar que un producto de
software cumpla con los requerimientos
planteados por los usuarios finales.
El buen software depende de los detalles, en el
proceso de validación y verificación se pulen
los detalles y se atan los cabos sueltos.
VERIFICACION Y
VALIDACION DE SOFTWARE
La visión del desarrollo de software, formada
por un conjunto de fases, no sólo facilita el
desarrollo, sino también el esfuerzo de la V y
V.
Se puede dividir el esfuerzo de V y V indicando
las actividades, procedimientos y técnicas a
emplear en cada fase del ciclo de vida.
Para ello es necesario definir un Plan de
Verificación y Validación de software al inicio
del proyecto que determine estas actividades.
Objetivos de la Verificación y
Validación de Software
Detectar y corregir los defectos tan pronto como
sea posible en el ciclo de vida del software.
Disminuir los riesgos, las desviaciones sobre los
presupuestos y sobre el programa de tiempos.
Mejorar la calidad y fiabilidad del software.
Mejorar la visibilidad de la gestión del proceso
de desarrollo.
Valorar rápidamente los cambios propuestos y
sus consecuencias.
Verificación vs Validación
Verificación:
”El producto se esta construyendo
en forma correcta ?"
El proceso de desarrollo debe
estar conforme con sus sus
estándares o prácticas de
desarrollo.
Verificación vs Validación
Validación
"Se esta construyendo el producto
correcto?"
El software debe hacer lo que el
usuario requiere, debe haber
concordancia con :
– la especificación de requisitos.
– La satisfacción de necesidades
del cliente.
Verificación vs Validación
Conceptos relacionados con la
VyV
Pruebas (test): una actividad en la cual un sistema o uno de sus componentes
se ejecuta en circunstancias previamente especificadas, los resultados se
observan y registran y se realiza una evaluación de algún aspecto.
Casos de Pruebas: un conjunto de entradas, condiciones de ejecución y
resultados esperados desarrollados para un objetivo particular.
Error (errores): Es un error cometido por el desarrollador: Tipeo incorrecto;
malinterpretación de un requerimiento o la funcionalidad de un método; una
acción humana que conduzca a un resultado incorrecto; Por ejemplo divisiones
entre cero es un tipo de manifestación del defecto en el sistema que se ejecuta.
Defecto (bug): un defecto en el software como, por ejemplo, un proceso, una
definición de datos o un paso de procesamiento incorrectos en un programa.
Fallo (failure): La incapacidad de un sistema o de alguno de sus componentes
para realizar las funciones requeridas dentro de los requisitos de rendimiento
especificados.
El proceso V & V
1. El enfoque estructurado o
de caja blanca.
2. El enfoque funcional o de
caja negra.
Algunos tipos de pruebas
Prueba de defectos
Pruebas diseñadas para descubrir defectos
en el sistema.
Un prueba de defectos exitosa es aquella
que revela la presencia de defectos en el
sistema.
Prueba y depuración
La prueba de defectos y la depuración son
distintos procesos.
La prueba de defectos se refiere a la
confirmación de la presencia de errores.
La depuración se refiere a la localización y
reparación de estos errores.
El proceso de depuración
Unit
testing
Module
testing
Sub-system
testing
System
testing
Acceptance
testing
El proceso de pruebas.
El seguimiento (traceability) de los
requerimientos.
Componentes probados.
El calendario de las pruebas.
Los procedimientos para archivar pruebas.
Los requerimientos del hardware y software.
Las restricciones.
El modelo Clásico
A T1
T1
A
T1 T2
A B
T2
T2 B T3
T3
B C
T3 T4
C
T4
D T5
Testing
Level 1 Level 1 . ..
sequence
Level 2
stubs
Level 3
stubs
Prueba top-down
Test
drivers
Testing
Level N Level N Level N Level N Level N
sequence
Test
drivers
Level N–1 Level N–1 Level N–1
Pruebas bottom-up