PDF de programación - Verificación y Validación - Ingeniería Software - 4º de Físicas

Imágen de pdf Verificación y Validación - Ingeniería Software - 4º de Físicas

Verificación y Validación - Ingeniería Software - 4º de Físicasgráfica de visualizaciones

Publicado el 14 de Enero del 2017
1.133 visualizaciones desde el 14 de Enero del 2017
432,7 KB
33 paginas
Creado hace 14a (20/05/2009)
Verificación y Validación

Ingeniería Software
Ingeniería software

4º de Físicas
4º Físicas

Verificación y Validación

José M. Drake y Patricia López
Computadores y Tiempo Real

Ingeniería de Programación 2009

1

Ingeniería de Programación (4º Físicas) J.M. Drake

1

Verificación y Validación

Situación dentro del proceso de desarrollo

Verificación de software:

Pruebas:
•Prueba de unidades
•Pruebas de integración.
•Pruebas orientadas a fallos
•Bancos de pruebas

Inspección:
•Inspección y prueba
•Inspección del software.
•Análisis estático automatizado

Mantenimiento

Integración
y validación

Identificar practicas

corporativas

Identificar practicas

corporativas

Análisis de requisitos

Verificación

Análisis

Codificación

Diseño

Ingeniería de Programación 2009

Verificación y Validación

J.M. Drake

2

El objetivo de este tema es introducir la verificación y validación del software con énfasis
en las técnicas de verificación estática y en la prueba dinámica de código. Objetivo de este
tema son:
•Comprender la diferencia entre verificación y validación del software.
•Valorar la inspección del software y el análisis estático como métodos de descubrir fallos y
mejorar la calidad del software.
• Conocer las técnicas de pruebas para descubrir fallos en el código.
•Analizar las técnicas específicas para las pruebas de componentes y pruebas de sistemas
orientados a objetos.
•Importancia de las herramientas CASE para la verificación de software y apoyar el
desarrollo de las pruebas.

Ingeniería de Programación (4º Físicas) J.M. Drake

2

Verificación y Validación

Verificación y Validación

Verificación y Validación (V&V): Conjunto de procesos de comprobación y
análisis que aseguran que el software que se desarrolla está acorde a su
especificación y cumple las necesidades de los clientes.

Existen actividades de V&V en cada etapa del proceso de desarrollo del software

Verificación:

¿Estamos construyendo el producto correctamente?
Se comprueba que el software cumple los requisitos funcionales y no funcionales
de su especificación.

Validación:

¿Estamos construyendo el producto correcto?
Comprueba que el software cumple las expectativas que el cliente espera

Importante: Nunca se va a poder demostrar que el software está
completamente libre de defectos

Ingeniería de Programación 2009

Verificación y Validación

J.M. Drake

3

La verificación y validación es el nombre que se da a los procesos de comprobación y análisis
que aseguran que el software que se desarrolla está acorde a su especificación y cumple las
necesidades de los clientes. La V&V es un proceso de ciclo de vida completo. Inicia con las revisiones
de los requerimientos y continúa con las revisiones del diseño y las inspecciones del código hasta la
prueba del producto. Existen actividades de V&V en cada etapa del proceso de desarrollo del software.
La verificación y la validación no son la misma cosa , aunque es muy fácil confundirlas,
Boehm (1979) expresó la diferencia entre ellas de forma sucinta:
•Verificación: ¿Estamos construyendo el producto correctamente?

El papel de la verificación comprende comprobar que el software está de
acuerdo con su especificación. Se comprueba que el sistema cumple los
requerimientos funcionales y no funcionales que se le han especificado.

•Validación: ¿Estamos construyendo el producto concreto?

La validación es un proceso mas general. Se debe asegurar que el software
cumple las expectativas del cliente. Va mas allá de comprobar si el
sistema está acorde con su especificación, para probar que el software
hace lo que el usuario espera a diferencia de lo que se ha especificado.

Es importante llevar a cabo la validación de los requerimientos del sistema de forma inicial.
Es fácil cometer errores y omisiones durante la fase de análisis de requerimientos del
sistema y, en tales casos, el software final no cumplirá la expectativas de los clientes. Sin
embargo, en la realidad, la validación de los requerimientos no puede descubrir todos los
problemas que presenta la aplicación. Algunos defectos en los requerimientos solo pueden
descubrirse cuando la implementación del sistema es completa.

Ingeniería de Programación (4º Físicas) J.M. Drake

3

Verificación y Validación

Técnicas de Verificación y Validación

Inspecciones del Software:
Se analizan las diferentes representaciones del sistema (diagramas de
requerimientos, diagramas de diseño y código fuente) en búsqueda de
defectos.

Son técnicas de validación estáticas => No requieren que el código se

ejecute

Debe realizarse durante todo el ciclo de desarrollo.

Pruebas del Software:
Se contrasta dinámicamente la respuesta de prototipos ejecutables del

sistema con el comportamiento operacional esperado.

Técnicas de validación dinámicas => El sistema se ejecuta
Requiere disponer de prototipo ejecutables, por lo que sólo pueden

utilizarse en ciertas fases del proceso

Ingeniería de Programación 2009

Verificación y Validación

J.M. Drake

4

Dentro del proceso de Verificación y validación se utilizan dos técnicas de comprobación y

análisis de sistemas:

1. Las inspecciones del software analizan y comprueban las representaciones del sistema
como el documento de requerimientos, los diagramas de diseño y y el código fuente del
programa. Se aplica a todas las etapas del proceso de desarrollo. Las inspecciones se
complementan con algún tipo de análisis automático del texto fuente o de los
documentos asociados. Las inspecciones del software y los análisis automatizados son
técnicas de verificación y validación estáticas puesto que no requieren que el sistema se
ejecute.

2. Las pruebas del software consiste en contrastar las respuestas de una implementación
del software a series de datos de prueba y examinar las respuestas del software y su
comportamiento operacional, para comprobar que se desempeñe conforme a lo
requerido. Llevar a cabo las pruebas es una técnica dinámica de la verificación y
validación ya que requiere disponer de un prototipo ejecutable del sistema.

Ingeniería de Programación (4º Físicas) J.M. Drake

4

Verificación y Validación

Verificación y validación estática y dinámica

Inspecciones
de software

Especificación
de requerimientos

Diseño de la
arquitectura

Especificación

formal

Diseño
detallado

Codificación

Prototipo

Prueba de programas

Ingeniería de Programación 2009

Verificación y Validación

J.M. Drake

5

En el esquema se muestra el lugar que ocupan las inspecciones y las pruebas dentro del
proceso de desarrollo de software. Las flechas indican las fases del proceso en las que se
utilizan las técnicas. Las inspecciones de software se pueden utilizar en todas las etapas del
proceso, mientras que las técnicas de prueba sólo se pueden cuando está disponible un
prototipo o código ejecutable.
Las técnicas de inspección incluyen inspección de programas, análisis automatizado de
código fuente y verificación formal. Sin embargo las técnicas estáticas sólo pueden
comprobar la correspondencia entre un programa y su especificación (verificación) y no
puede probar que el software es de utilidad operacional, y mucho menos que las
características no funcionales del software son las correctas. Por lo tanto, para validar un
sistema de software, siempre se requieren llevar a cabo ciertas pruebas.
Aunque en la actualidad las inspecciones se utilizan ampliamente, las pruebas de los
programas es aún la técnica de verificación y validación predominante.

Ingeniería de Programación (4º Físicas) J.M. Drake

5

Verificación y Validación

Proceso de depuración

Proceso de depuración: Proceso que localiza y corrige los errores
descubiertos durante la verificación y validación.
Es un proceso complicado pues no siempre los errores se detectan cerca del

punto en que se generaron.

Se utilizan herramientas de depuración, que facilitan el proceso

Después de reparar el error, hay que volver a probar el sistema (pruebas de
regresión).
La solución del primer fallo puede dar lugar a nuevos fallos.

Resultados de

prueba

Especificación

Casos de pruebas

Localizar error

Diseñar reparación

errores

Reparar errores

Probar de nuevo el

programa

Ingeniería de Programación 2009

Verificación y Validación

J.M. Drake

6

Al proceso de eliminación de los errores que se descubren durante las fases de prueba se denomina

depuración. Es un proceso independiente que no tiene porqué estar integrado:

• La verificación y validación establece la existencia de defectos en el programa.
• La depuración es el proceso que localiza el origen y corrige estos defectos.

No existe un proceso sencillo para la depuración de programas. Los mejores depuradores buscan
patrones en los resultados de las pruebas donde el defecto se detecta, y para localizar el defecto
utilizan el conocimiento que tienen sobre el tipo de defecto, el patrón de salida, así como del
lenguaje y proceso de programación. El conocimiento del proceso es importante. Los depuradores
conocen los errores de los programadores comunes (como olvidad incrementar un contador, errores
de direccionamiento de punteros en lenguaje C, etc.) y los comparan contra los patrones observados.

Localizar los fallos es un proceso complejo porque los fallos no necesariamente se localizan cerca del
punto en que se detectan. Para localizar un fallo de un programa el programador responsable de la
depuración tiene que diseñar programas de prueba adicionales que repitan el fallo original y que
ayudan a descubrir el origen del fallo. En e
  • Links de descarga
http://lwp-l.com/pdf958

Comentarios de: Verificación y Validación - Ingeniería Software - 4º de Físicas (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad