La etapa de Pruebas Tema 5 Rolando JaldĂn
La etapa de pruebas es una etapa crĂtica en el desarrollo de un producto de software. El control de la calidad del software debe ser tomado con seriedad y como una actividad fundamental antes de sacar a productivo una aplicaciĂłn de software.
En sistemas de información empresarial, lanzar un producto con fallas puede ser catastrófico para la empresa, de ahí que las pruebas deben ser minuciosas, haciendo una simulación de todos los procesos y con información histórica propia de la empresa.
Querer lanzar un producto solo con las pruebas unitarias realizadas por los programadores, de seguro fallarรก y tendrรกn serios problemas.
Las pruebas de integridad y funcionalidad del incremento desarrollado deben hacĂŠrselo en un entorno independiente al del equipo de desarrollo.
Una buena disposiciรณn de plataforma de servidores es la siguiente:
QA por el mismo TEAM • Es el esquema más usado en empresas pequeñas de desarrollo de software. • También en proyectos pequeños. • Se basa en las pruebas que el mismo equipo de desarrollo realiza al incremento, tanto como pruebas unitarias como pruebas de integración de todos los módulos. • Las pruebas son manuales, no se usa software especializado.
Responsable de QA en el equipo
• Una mejora sustancial al control de calidad es la designación de un responsable de QA que es miembro del mismo equipo Team.
• Se aplica a proyectos medianos y en empresas de desarrollo que pueden disponer de personal de prueba en cada equipo de desarrollo, normalmente empresas medianas.
• Cada programador pasa al responsable de pruebas el programa. Ésta persona tiene el rol de probar individualmente cada programa, de hacer las pruebas de integración con los otros módulos, verifica el cumplimiento de los estándares tanto de diseño como de codificación, hacer las pruebas de tensión y sobrecarga.
• Se lleva una bitácora de errores y correcciones. • Un incremento no sale a productivo mientras el responsable de control de calidad no dé el visto bueno.
Equipo QA Independiente • Es definitivamente el mejor esquema de trabajo para la realización de las pruebas a los programas, módulos e incrementos realizados. • Consiste en disponer de un equipo especializado en realizar pruebas de aseguramiento de la calidad. Un equipo independiente al equipo de desarrollo o Team. • El equipo de QA puede atender a varios Teams del mismo proyecto, de ahí que es lo más recomendado en proyectos grandes que están siendo abordados por más de un equipo de desarrollo.
Las actividades principales que cumple el equipo de QA son: • Elaboración del Plan de QA. • Preparación de los datos de prueba para cada programa o módulo. • Verificación del cumplimiento de los estándares de desarrollo adoptados para el proyecto. • Pruebas de caja blanca del código. • Pruebas de caja negra de las funcionalidades. • Pruebas de integración de los módulos con los otros módulos o incrementos. • Pruebas de tensión y sobrecarga del incremento (stress). • Pruebas de aceptación.
• Todas las pruebas son registradas en tarjetas, usando una aplicación de software, esto permite comunicar al equipo de desarrollo y hacer un seguimiento de las correcciones realizadas. • El equipo de Pruebas, el Plan de QA y las actividades que se realizan, son una especialización muy importante en el desarrollo de software y que conviene profundizar si se desea ser un “tester”.