Fundamentos y Estrategias para el Aseguramiento de la Calidad del Software
Enviado por Chuletator online y clasificado en Diseño e Ingeniería
Escrito el en
con un tamaño de 2,9 KB
Perspectivas fundamentales de la calidad del software
Existen dos enfoques esenciales para asegurar la calidad:
- Validación: Comprueba que el software cumple con los requisitos y deseos del cliente.
- Verificación: Comprueba que el software funciona técnicamente como se diseñó, sin fallos lógicos o de ejecución.
Fases del proceso de pruebas: Pruebas incrementales
Se empieza por lo pequeño y se sube de nivel:
1. Prueba de Unidad
Se centra en los componentes más pequeños: módulos, funciones o clases (en POO). Se prueban los métodos de forma aislada para asegurar que su lógica interna es correcta.
2. Prueba de Integración
Comprueba que los módulos o clases ya probados cooperan correctamente entre sí. El objetivo es detectar problemas en las interfaces y la comunicación entre piezas.
3. Prueba del Sistema
Se prueba el software en un entorno completo y realista (hardware, redes, bases de datos). Sus tipos incluyen:
- Recuperación: Forzar fallos para ver si el sistema se recupera.
- Seguridad: Intentar accesos no autorizados.
- Resistencia (Stress): Someter al sistema a cargas extremas (muchos usuarios a la vez).
4. Prueba de Validación o Aceptación
Su fin es confirmar que el software cumple las expectativas del cliente final:
- Prueba Alfa: Realizada por el cliente en el entorno del desarrollador (supervisada).
- Prueba Beta: Realizada por usuarios finales en sus propios entornos (sin supervisión directa).
5. Prueba de Regresión
Realizada tras cualquier cambio o corrección. El objetivo es asegurar que lo que ya funcionaba no se ha roto al introducir el nuevo código.
Técnicas de estrategia de pruebas
- Caja blanca: Utilizada en pruebas de unidad.
- Caja negra: Utilizada en pruebas de integración, sistema y validación.
- Híbrida (blanca/negra): Utilizada en pruebas de regresión.
Herramientas de depuración (Debugging)
La depuración es el proceso de localizar y corregir un defecto tras detectarse un fallo:
- Errores de compilación: Fáciles de identificar (sintaxis), detectados por el IDE.
- Errores lógicos (Bugs): Difíciles de detectar, el programa compila pero da resultados erróneos.
Funciones del depurador:
- Ejecución paso a paso: Control detallado del flujo.
- Puntos de ruptura (Breakpoints): Detener la ejecución en una línea concreta.
- Inspección de variables: Ver qué valor tienen los datos en tiempo real.