Calidad y pruebas_software
Transcript of Calidad y pruebas_software
¿Puedo conseguir aplicaciones más
sólidas y estables para mi negocio?
¿Puedo tener mayor control de la calidad de mis desarrollos de aplicaciones?
¿Cómo puedo adelantar la detección de defectos del software?
¿Qué riesgos y costes podría suponer una aplicación con defectos una vez integrada en mis sistemas?
¿Puedo acortar el tiempo de desarrollo de mis aplicaciones, aumentando su calidad?
¿Cómo puedo optimizar el esfuerzo de mantenimiento y desarrollo de mis aplicaciones?
¿Puedo prevenir que se siga desarrollando encima de códigos defectuosos?
2
Calidad y Pruebas. Algunos datos del Mercado
Se precisan nuevas formas de trabajar para mejorar la efectividad y rapidez de los resultados
Las pruebas continúan siendo un importante
coste para las organizaciones:
• Las pruebas consumen del 20% al 40+% en media del ciclo de vida de las aplicaciones y, en ocasiones, se percibe que proporciona limitado valor de negocio.
• Del 20% al 35+% del coste de la implantación de paquetes se consume en problemas de calidad de software.
• Las pruebas pueden suponer del 30% al 50%del esfuerzo de mantenimiento.
La investigación demuestra que los errores identificados tarde en el ciclo de vida son significativamente más costosos de corregir*
3
(*)
Calidad y Pruebas. Nuevo modelo de trabajo
Análisis
Construcción
Pruebas
Despliegue Producción
Aplicación 1 Aplicación 2 Aplicación 3 Aplicación 4
Producción
Planificación Pruebas
Diseño y Preparación Pruebas
Ejecución y Reporte de Pruebas
Modelo Tradicional Modelo Transversal
• Detección de defectos al finalizar el Código. • Menor capacidad de detectar errores.• Alcance de acciones de mejora limitado.• Entorno de pruebas, escenarios y datos propio
de los equipos.• Procesos manuales de los ciclos de pruebas
• Detección temprana de defectos.• Equipo especialista en pruebas, mayor
capacidad de generar casos de pruebas.• Metodología de Gestión y Administración de
defectos para todos los proyectos.• Planificación y coordinación con los equipos
responsables de los entornos y datos de pruebas.
• Automatización.
Actividades Pruebas Equipo Desarrollo por proyecto / aplicación Actividades Pruebas Equipo Especializado Transversal
Aplicación 1 Aplicación 2 Aplicación 3 Aplicación 4
Equipo de Desarrollo Equipo de Desarrollo
Análisis
Construcción
Pruebas
Despliegue
4
Calidad y Pruebas. Impacto de las pruebas
Para tener un impacto rápido en la calidad y eficiencia del desarrollo, un equipoindependiente se debe de centrar inicialmente en la ejecución de las pruebas de sistemay en el control temprano de la calidad de los productos.
• El objetivo principal de las pruebas esasegurar que los requerimientos de negocio solicitados por los usuarios tengan el menor número de defectos.
• Se estima que las pruebas de sistema (funcionales, integración de sistemas y regresión) consumen entre el 50% y el 60% del esfuerzo total en pruebas realizadas por el equipo de desarrollo.
• El resto del esfuerzo está centrado en pruebas asociadas a la tecnología y a los desarrolladores (pruebas unitarias, integración de componentes, …)
Producto
Pruebas de Aceptación
Pruebas Funcionales
Pruebas Unitarias
Pruebas de Integración de Componentes
Integración de Sistemas
Regresión Automatización
Requerimientos
Análisis Funcional
Diseño Técnico
Desarrollo Código
USUARIO
EQUIPO DESARROLLO
Control de
Calidad
PLANIFICACIÓN
DISEÑO
EJECUCIÓN
Ciclo desarrollo
Ciclo pruebas
5
Calidad y Pruebas. Cenit Pruebas
• Demostrar el impacto en coste y calidad del desarrollo en un tiempo record.
El Cenit Pruebas es un centro virtual creado a partir de las mejores prácticas de los Centros de Innovación Tecnológica para dar soluciones tanto a proyectos internos como a nuestros clientes.
Equipo Especializado• Metodología común específica de pruebas• Equipo certificado y formado en la metodología• Mejora continua
Rápida puesta en marcha • El servicio solo requiere adaptar los procesos a la
forma de trabajar de cada cliente (desde 2 semanas, dependiendo del alcance final).
• Foco en las pruebas de más valor al negocio• Las herramientas y procesos ya están disponibles
Centro Multicliente• Infraestructura y Software disponibles.• Compartir las mejores prácticas.• Buscar sinergias y posibilitar la gestión de picos y
valles de actividad.
• Responder con agilidad a la demanda
• Aplicar los mejores conocimientos a la práctica de los servicios y evolucionarlos según las necesidades de nuestros clientes.
Nuestros mayores retos al crear una solución deCalidad y Pruebas son:
6
Tipos de Pruebas
PRUEBAS ESPECIALIZADAS
AUTOMATIZACIÓN
SEGURIDAD (Hacking Ético, Vulnerabilidad del Código)
RENDIMIENTO
USABILIDAD
ACCESIBILIDAD
Cenit Pruebas. Catálogo de Servicios
• Servicios orientados a garantizar que los requerimientos de negocio se implementan adecuadamente en las aplicaciones:
Estructuración de las actividades de planificación, diseño y ejecución que permite realizar distintas combinaciones de los servicios según necesidades: la planificación, diseño y ejecución de pruebas pueden ser ejecutadas como servicios independientes o como servicio global (la eficacia del servicio aumenta al trabajar en las tres actividades)
PRUEBAS ESTÁTICAS
CONTROL DE PRODUCTOS QUALITY
ASSURANCE (QA)
PRUEBAS DINÁMICAS
PRUEBAS CICLO DE DESARROLLO
PLANIFICACIÓN
VALIDACIÓN ENTRADAS Y SALIDAS
REVISIONES DE ANÁLISIS CÓDIGO
DISEÑO EJECUCIÓN
INTEGRACIÓN DE SISTEMAS
REGRESIÓN
REVISIONES DOCUMENTALES
CONTROL DE PROCESOS (PA)
FUNCIONALES
Servicios enfocados a la
mejora del rendimiento, seguridad y uso de las aplicaciones
7
• Identificación de las pruebas necesarias para garantizar la Calidad del software desarrollado (estrategia de Pruebas):
Se elabora el Plan de Pruebas que determina: enfoque y niveles de las pruebas a realizar, entorno, infraestructura, cobertura de pruebas, períodos de diseño y ejecución de pruebas, recursos necesarios, etc.
Planificación
• Definición de los casos de prueba según la estrategia de pruebas:
Asignación de requisitos (Matriz de cobertura).Preparación de datos de pruebas.Generación de documentación de diseño en la Herramienta
Diseño de Casos
• Ejecución de los casos de prueba• Registro de incidencias en la Herramienta• Reporte de resultados de la ejecución
Ejecución de Pruebas
Cenit Pruebas. Pruebas del Ciclo Desarrollo. Actividades.
8
A la finalización del Servicio se realiza la actividad de CIERRE, con los informes de conclusiones y calidad del servicio: posibles acciones de mejora, correctiva, recomendaciones, resumen de defectos…
Pruebas Funcionales
Pruebas de Integración de Sistemas
Pruebas de Regresión
Cenit Pruebas. Pruebas del Ciclo Desarrollo. Pruebas Dinámicas.
9
Aseguran que el Sistema funciona de acuerdo a las características requeridas por el Usuario intentando
encontrar el máximo número de defectos.
Comprueban el funcionamiento correcto del Sistema de forma global, con el resto de sistemas relacionados, en condiciones muy similares al entorno de producción.
Comprueban que el Sistema continúa operando de manera correcta y de acuerdo con lo especificado después de introducir un cambio y, sujeto a viabilidad y adecuado entorno, se automatizarán en lo posible.
Control de Producto (QA)
Control de Procesos (PA)
Cenit Pruebas. Pruebas del Ciclo Desarrollo. Pruebas Estáticas.
10
Asegurar la calidad de los entregables y detectar defectos en fases tempranas
Asegurar el cumplimiento de los procesos establecidos en el Servicio y Detectar acciones de mejora
Automatización
Pruebas Seguridad
Pruebas de Rendimiento
Cenit Pruebas. Pruebas Especializadas
11
PRUEBAS ESPECIALIZADAS
AUTOMATIZACIÓN
SEGURIDAD (Hacking Ético, Vulnerabilidad del Código)
RENDIMIENTO
USABILIDAD
ACCESIBILIDAD
Aumentan la eficiencia por reducción de los tiempos de prueba.
Previenen las posibles amenazas de seguridad de las aplicaciones.
Aseguran que los consumos de recursos de lainstalación y aplicaciones son adecuados ensituaciones habituales y excepcionales o límite.
Pruebas de Usabilidad y Accesibilidad
Diseño eficiente del Producto.
Base de la integración entre tres aplicaciones principales:
o RQM (QM: Quality Management)
• Planes de prueba.• Gestión de calidad.• Diseño de Pruebas.• Ejecuciones de Pruebas.
o RTC (CCM: Change and Configuration Management)
• Gestión de Defectos.• Gestión de cambios y configuración.• Repositorio de código fuente y documentación.• Planificación y Seguimiento.
o RRC (RM: Requirements Management)
• Gestión de requisitos.• Conecta el trabajo de los analistas con el de los equipos de desarrollo y
pruebas.
COLLABORATIVE LIFECYCLE MANAGEMENT
Cenit Pruebas. Herramientas.
RTC RQM
RRC
12