Logo Studenta

U6 - UML- C - Verificación y Validación del SW

¡Este material tiene más páginas!

Vista previa del material en texto

Verificación y Validación del SW
Verificacion y validacion del sw
La prueba del SW es un elemento de un tema más amplio conocido como Verificación y Validación (V&V).
La verificación se refiere al conjunto de actividades que aseguran que el SW implementa correctamente una función específica (Estamos construyendo el producto correctamente?)
La validación se refiere a un conjunto diferente de actividades que aseguran que el SW construido se ajusta a los requisitos del cliente (Estamos construyendo el producto correcto?)
Verificacion y validacion del sw
La V&V incluye las siguientes actividades:
Revisiones técnicas formales
Auditorías de calidad y configuración
Monitorización de rendimientos
Estudios de factibilidad
Revisión de la base de datos
Análisis algorítmicos
Pruebas de desarrollo
Pruebas de validación y de instalación
Simulación
Revisión de la documentación
Verificacion y validacion del sw
Las pruebas son el medio más pragmático por el que se puede evaluar la calidad y descubrir los errores.
La calidad debe incorporarse durante la ingeniería del SW, mediante el uso de la metodología y herramientas adecuadas, revisiones técnicas y una sólida gestión y medición.
Verificacion y validacion del sw
Es inteligente para el proceso de prueba definir y conformar lo que se denomina GIP (Grupo Independiente de Prueba) que elimina las posiciones constructiva del desarrollador y destructiva del potencial usuario del sistema. 
Una prueba independiente elimina el conflicto de intereses que, de otro modo, estaría presente. Pero no significa esto que el desarrollador no participe más en la implementación, sino que debe actuar para corregir los problemas que vayan surgiendo en forma exhaustiva.
Verificacion y validacion del sw
El proceso de ingeniería del SW se puede ver como un espiral donde se realizan las etapas del desarrollo del sistema (análisis, diseño, etc.) donde a medida que damos vueltas en espiral a través de una serie de flujos o líneas que disminuyen el nivel de abstracción en cada vuelta. 
Verificacion y validacion del sw
También se puede ver la estrategia para la prueba del SW en el contexto de la espiral, donde la Prueba de Unidad comienza en el vértice de la espiral y se centra en cada unidad del SW, tal como está implementada en código fuente, avanza hacia fuera del espiral hasta llegar a la Prueba de Integración, donde el foco de atención es el Diseño y la construcción de la arquitectura del SW. 
Verificacion y validacion del sw
Dando otra vuelta encontramos la Prueba de Validación donde se validan los requisitos establecidos como parte del análisis de requisitos del SW, comparándolos con el sistema que ha sido construido. Finalmente llegamos a la Prueba del Sistema en la que se prueban como un todo el SW y otros elementos del sistema. Para probar nos movemos hacia fuera por una espiral que, a cada vuelta, aumenta el alcance de la prueba.
Verificacion y validacion del sw
O sea, secuencialmente hablando, primero la prueba se centra en cada módulo individualmente, asegurando que funcionan adecuadamente como una unidad (Prueba de Unidad). A continuación se deben ensamblar las partes o módulos para formar el paquete de SW completo (Prueba de integración). Aquí se utilizarán técnicas de verificación y construcción del programa. En la integración se utilizarán los diseños de casos de prueba de caja negra y de caja blanca para asegurarse que se cubren los principales caminos de control. 
Verificacion y validacion del sw
Luego se realizan pruebas de Alto Nivel para comprobar los criterios de validación (establecidos durante el análisis de requisitos). La Prueba de Validación nos da la seguridad que se cumplieron todos los requisitos funcionales, de comportamiento y de rendimiento. Aquí se usan sólo técnicas de prueba de caja negra. Finalmente el SW validado se debe combinar con otros elementos del sistema (HW, gente, BD, etc.) para verificar que cada elemento encaja en forma adecuada y que se alcanza la funcionalidad y el rendimiento del sistema total, esto es la Prueba del Sistema.
Verificacion y validacion del sw
Cuando se completa la prueba de un sistema?
Un sistema permanentemente se estaría probando, ya que no podríamos asegurar que el cien por ciento de los casos libres de fallo se hayan dado. En ese sentido, se debe hablar en términos estadísticos y decir (según Musa y Ackerman) “que, en base a un modelo estadístico de corte teórico y validado experimentalmente, hemos realizado las pruebas suficientes para afirmar, con un 95% de certeza, que la probabilidad de funcionamiento libre de fallo de 1000 hs. de CPU, en un entorno definido de forma probabilística, es al menos 0,995”.
Verificacion y validacion del sw
Una versión del modelo de fallos, llamada modelo logarítmico de Poisson de tiempo de ejecución es:
 f(t) = (1/p) ln [(lo pt + 1)]
donde: f(t) número acumulado de fallos que se espera que se produzcan una vez que se ha probado el SW durante una cierta cantidad de tiempo de ejecución t.
	lo la intensidad de fallos inicial del SW (fallos x unidad de tiempo) al principio de la prueba
 	p la reducción exponencial de intensidad de fallo a medida que se encuentran los errores y se van haciendo las correcciones.
Verificacion y validacion del sw
La intensidad de fallos instantánea , l(t) se puede obtener mediante la derivada de f(t):
l(t) = lo / (lo pt + 1) mediante esta se puede predecir la disminución de errores a medida que las pruebas avanzan.
Verificacion y validacion del sw
La intensidad de error real se puede trazar junto a la curva predecida. 
Si los datos reales obtenidos en la prueba y el modelo de Poisson de tiempo de ejecución están razonablemente cerca unos de otros, sobre un número de puntos de datos, el modelo se puede usar para predecir el tiempo de prueba total requerido para alcanzar una intensidad de fallos aceptablemente baja.
Verificacion y validacion del sw
* Datos recogidos durante la prueba
Fallos por hora de prueba lo
Tiempo de ejecución t
Intensidad de fallos prevista, l(t)
*
*
*
*
*
*
*
*
Preguntas
?
?
?
?

Continuar navegando