Calidad de Software: Verificación, Validación y Estrategias de Pruebas Esenciales
Clasificado en Informática
Escrito el en español con un tamaño de 3,62 KB
Pruebas y Calidad del Software
Verificación y Validación de Software
La verificación se encarga de comprobar si el producto se desarrolla acorde con la especificación y las condiciones impuestas. La validación, por su parte, asegura que el producto satisface las expectativas del cliente.
Dentro de este proceso, existen dos pasos complementarios para el análisis y la comprobación de sistemas:
Inspecciones de Software
Las inspecciones de software consisten en el análisis y la comprobación de los documentos requeridos, diagramas de diseño y código fuente. Estas solo verifican y no pueden comprobar si el software es operacionalmente útil.
Pruebas de Software
Las pruebas de software son la técnica principal de verificación y validación. Implican la ejecución del programa con datos similares a los reales, y los defectos se descubren analizando la salida del programa. La depuración es el proceso que localiza y corrige los errores detectados.
Tipos de Pruebas de Software
Pruebas de Integración
Pruebas de Sistema/Subsistema
Se comprueba que los componentes pueden funcionar juntos. Las comprobaciones deben ser sucesivas, añadiendo componentes y verificándolos.
- Descendente: Primero se desarrolla el esqueleto del sistema y se le añaden los componentes.
- Ascendente: Primero se integran los componentes de la infraestructura y se le van añadiendo las nuevas funcionalidades.
Pruebas de Entrega/Aceptación
Intentan demostrar al cliente que el sistema satisface los requerimientos. Se comprueban dos aspectos principales: que los resultados son los esperados y que las situaciones de error son provocadas por entradas específicas.
Pruebas de Rendimiento/Estrés
Se realizan con el sistema ya integrado para evaluar aspectos como la fiabilidad y el rendimiento. Su función es probar el comportamiento del sistema ante fallos y sobrecargas.
Pruebas Unitarias
Las pruebas unitarias se realizan de forma independiente para cada clase o módulo.
Estrategias Detalladas de Integración
Integración Ascendente
En esta estrategia, se combinan módulos del nivel más bajo en grupos. Se construye un monitor de prueba para gestionar los casos de prueba, se prueba el grupo, se eliminan los monitores sustituyéndolos por módulos reales y se realizan las pruebas de regresión.
Integración Descendente
Esta estrategia se utiliza como control del programa principal. Se construyen los módulos colaboradores y se van sustituyendo por módulos reales. Se realizan pruebas cada vez que se integra un nuevo módulo y se continúa reemplazando los módulos colaboradores hasta llegar a los terminales.
Pruebas en Sistemas Orientados a Objetos (OO)
Niveles de Pruebas OO
Los niveles de pruebas en sistemas orientados a objetos incluyen:
- Métodos y operaciones individuales de la clase.
- Clases individuales.
- Agrupaciones de objetos.
- Sistema completo.
Pruebas de Clases
Consisten en probar todas las operaciones y atributos, y ejecutar los objetos en todos los estados posibles.
Pruebas de Integración de Clases
Su objetivo es asegurar que las clases y sus instancias conforman un software que cumple con el comportamiento definido. Se pueden realizar pruebas basadas en escenarios (casos de uso) y pruebas basadas en subprocesos.