Verificación y Validación de Software: Técnicas y Estrategias
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 3,82 KB
Verificación y Validación de Software
La verificación y validación aseguran que el software esté de acuerdo con su especificación y cumpla con las necesidades de los clientes. Incluyen actividades en cada etapa del proceso del software:
- Revisiones de los requerimientos
- Revisiones del diseño
- Inspecciones de código
- Pruebas del producto
Validación
¿Estamos construyendo el producto correcto? Se debe asegurar que el software hace lo que el usuario quiere.
Verificación
¿Estamos construyendo el producto correctamente? Se debe asegurar que el sistema cumple su especificación.
Técnicas de Comprobación y Análisis de Sistemas
Inspecciones de Software
Analizan y comprueban las representaciones del sistema (documentos de requerimientos, diagramas de diseño, código fuente, planes de prueba, documentación del usuario, etc.).
- Se aplican a todas las etapas del diseño.
- Son técnicas estáticas (no requieren que el sistema se ejecute).
- Solo pueden comprobar la correspondencia entre un programa y su especificación.
- Es más barato encontrar errores a través de la inspección que por medio de pruebas extensivas del programa.
- Se pueden utilizar como técnicas de verificación antes de que se implementen los programas.
- Examinan la representación fuente de un sistema: modelo del sistema, especificación, código.
- Más del 60% de los errores en un programa pueden detectarse utilizando inspecciones informales del programa.
- El 90% de los errores en el programa pueden detectarse utilizando enfoques formales.
- Sobrecargan al inicio los costos, pero conducen a ahorros después.
- Cada error se considera de forma aislada, sin considerar cómo afectará el comportamiento del sistema.
La revisión del código estático es más efectiva y menos cara que las pruebas por al menos dos razones:
- Varios defectos se detectan en una sola sesión.
- Reutiliza el conocimiento del dominio y del lenguaje de programación (se centra en errores típicos).
Las inspecciones no reemplazan completamente a las pruebas:
- No pueden validar el comportamiento dinámico del sistema.
- No validan el sistema como un entero.
- Las inspecciones y las pruebas deben utilizarse de forma conjunta en el proceso de verificación y validación.
Inspecciones de Programa
Condiciones antes de iniciar una inspección del programa:
- Exista una especificación precisa del código a inspeccionar.
- Los miembros del equipo de inspección están familiarizados con los estándares organizacionales.
- Existe una versión actualizada y sintácticamente correcta del código disponible.
Posibles comprobaciones que se pueden hacer durante el proceso de inspección:
- Fallas de datos
- Fallas de control
- Fallas de entrada/salida
- Fallas de interfaz
- Fallas de administración de las excepciones
Fallas de Datos
- ¿Se inicializan todas las variables antes de que se utilicen?
- ¿Tienen nombres todas las constantes?
- ¿El límite superior de los arreglos es igual a su tamaño?
Fallas de Control
- ¿Son correctas las instrucciones condicionales?
- ¿Terminan todos los ciclos?
- ¿Están puestas correctamente entre llaves las instrucciones compuestas?
- ¿Se han tomado en cuenta todos los casos posibles para instrucciones de decisiones múltiples?
- ¿Se han incluido las instrucciones
break
necesarios?
Fallas de Entrada/Salida
- ¿Se utilizan todas las variables de entrada?
- ¿Se le asignan valores a todas las variables de salida?