Validación de requerimientos de software

Anuncio
Instituto Tecnológico de Costa Rica
Escuela de ingeniería en Computación
IC-5821-Requerimientos de Software
Roberto Hernández Robles
201243031
Validación de requerimientos de software
Definiciones
Validación: Es establecer la meta o el valor de un producto de software para su futura misión
operativa.
Verificación: Es establecer que tanto corresponden los requerimientos del software con el producto de
software.
Usualmente se pueden diferenciar ambos términos en el ambiente de trabajo mediante las siguientes
preguntas:
Verificación: "¿Estoy construyendo correctamente el producto?"
Validación: "¿Estoy construyendo el producto correcto?"
En el resto del documento se hará referencia a Validación y Verificación como V&V.
Contexto de los procesos de V&V en el ciclo de vida del software
Por definición, la verificación implica la comparación entre la línea de base y los requerimientos de los
refinamientos sucesivos que descienden de él (el diseño de productos, diseño detallado, código, bases
de datos, y documentación) a fin de mantener estos refinamientos en consonancia con los
requerimientos del usuario.
Por lo tanto, las actividades de verificación comienzan en la fase diseño de producto y concluyen con la
aceptación del mismo. Estas actividades no conducen a cambios en los requerimientos iniciales; sólo a
los cambios en la refinamientos que descienden de él.
Por otro lado, la validación identifica los problemas que deben resolverse por un cambio de la
especificación de requerimientos. Por lo tanto, hay actividades de validación que se producen a lo largo
del ciclo de vida del software, incluyendo la fase de desarrollo.
Por ejemplo, una simulación del diseño del producto puede mostrar no sólo que el diseño no puede
cumplir con los requerimientos de rendimiento iniciales (verificación), sino también que los
requerimientos de rendimiento son demasiado estrictos para los diseños de productos rentables, y por lo
tanto necesitan ser cambiadas (validación).
Criterios de V&V
Los cuatro criterios básicos de V&V para los requerimientos y especificaciones de diseño son
completitud, consistencia, viabilidad, y la capacidad de prueba. A continuación de definen cada uno de
ellos.
Completitud:
Una especificación es completa en la medida en que todas sus partes están presentes y cada parte está
completamente desarrollada.
Consistencia:
Una especificación es consistente en la medida en que sus disposiciones no entren en conflicto entre sí
o con las demás especificaciones y objetivos.
Viabilidad:
Una especificación es viable en la medida en que los beneficios del ciclo de vida del sistema
especificado superarán los costes del ciclo de vida. Por lo tanto, la viabilidad implica algo más que la
verificación de que un sistema puede ser desarrollado satisfaciendo los requisitos funcionales y de
rendimiento.
También implica validar que el sistema especificado será suficientemente mantenible, confiable y bien
diseñado para el uso de los humanos de manera que sea factible para mantener el balance del ciclo de
vida del sistema positivo.
Capacidad de prueba:
Una especificación es testeable en la medida en que uno puede identificar una técnica económicamente
viable para determinar si el software desarrollado satisface la especificación. Con el fin de ser
testeable, las especificaciones deben ser específicas, sin ambigüedades, y cuantitativas siempre que sea
posible.
Técnicas para V&V
Existen varias técnicas para llevar a cabo el proceso de validación y verificación de requerimientos de
software por parte del desarrollador; en esta sección solamente se mencionaran algunas de las que se
suelen utilizar en el proceso del desarrollo de software, queda a criterio del lector la investigación más
profunda de las mismas por sus medios o bien en el artículo principal en el cuál está basado este.
Algunas de las técnicas que se utilizan para la realización de los procesos de V&V son:
•
•
•
•
Técnica de manuales simples
Técnica automatizada simple
Técnica de manuales detallados
Técnica automatizada detallada
Descargar