ISO/IEC/IEEE 29119El nuevo estándar internacional para pruebas de software
Grupo de trabajo
AEN/CTN 71/SC7/GT26 – Ingeniería del Software y Sistemas de Información – Pruebas del Softwarehttp://in2test.lsi.uniovi.es/gt26/
Jornada difusión proyecto TESTEAZaragoza, 20 de Mayo de 2015
Grupo de TrabajoAEN/CTN71/SC7/GT26 Pruebas de Software
ISO/IEC/IEEE 29119 – Pruebas de software 2AEN/CTN 71/SC7/GT26 - AENOR
Javier TuyaUniversidad de Oviedo(coordinador del GT26)
Mª José EscalonaIsabel Ramos
José MarañónAwnaba Software
Celestina Bianco
Xavier Escudero
Ewout van DrielSerial Testers
Ramón LemaJuan M. ValeraClara García
Manuel Fdez.Lidia Cruz
Total: 18 miembros, 12 organizaciones diferentes
ISO/IEC/IEEE 29119 – Pruebas de software 3AEN/CTN 71/SC7/GT26 - AENOR
© AENOR
ISO/AENOR Estructura de Comités y Grupos de trabajo
ISO/IEC & Organismos nacionales
Comités ISO y Grupos de Trabajo: ISO: International Organization
for Standarization JTC1: Tecnología de la
Información SC7: Ingeniería de Software y
Sistemas WG26: Pruebas de software
Organismos nacionales (ES) AENOR: Asociación Española de
Normalización y Certificación GT26: Pruebas del Software http://in2test.lsi.uniovi.es/gt26/
ISO/IEC/IEEE 29119 – Pruebas de software 4AEN/CTN 71/SC7/GT26 - AENOR
ISO IEC
JTC1
SC7
WG26
AENOR
CTN71
SC7
GT26
Contenidos
Estándares para pruebas y problemática Elaboración y estructura de ISO/IEC/IEEE
29119 Software Testing Parte 1 – Conceptos y definiciones Parte 2 – Modelo de procesos de pruebas Parte 3 – Documentación de pruebas Parte 4 – Técnicas de prueba Estado actual, futuro y conclusión
ISO/IEC/IEEE 29119 – Pruebas de software 5AEN/CTN 71/SC7/GT26 - AENOR
Qué son los estándares?
“Set of mandatory requirements established by consensus and maintained by a recognized body to prescribe a disciplined uniform approach or specify a product, that is, mandatory conventions and practices” (ISO/IEC 24765:2009 Systems and software engineering vocabulary)
Standards provide a body of knowledge that provides the basis for a professional discipline
Basis for: Communication – common terminology Professional qualifications Certification/compliance schemes Benchmark of ‘good industry practice’ Contracts Interoperability and consistency……
ISO/IEC/IEEE 29119 – Pruebas de software 6AEN/CTN 71/SC7/GT26 - AENOR
Para qué un estándar para Pruebas de software? Cuerpo de conocimiento como base
para esta disciplina profesional Alto grado de acuerdo internacional Adaptable (Tayloring)
Cliente: Confianza en el proveedor Benchmark para “buena” práctica industrial Vinculación contractual
Proveedor: Comunicación – terminología común Certificación/Acreditación, marketing Cualificación professional, formación Mejora continua, Interoperabilidad, consistencia…
ISO/IEC/IEEE 29119 – Pruebas de software 7AEN/CTN 71/SC7/GT26 - AENOR
Qué estándares para Pruebas de Software podríamos usar? Estándares BSI
BS 7925-1, SW Testing: Part 1-Vocabulary BS 7925-2, SW Testing: Part 2-Software Component Testing
Estándares IEEE testing: IEEE Std 829, Software Test Documentation IEEE Std 1008, Software Unit Testing
Estándares sectoriales Cuerpo de conocimiento y metodologías, p.e.
ISTQB TMap Next®
Otros estándares de tipo general: ISO/IEC 12207, 15289
ISO/IEC/IEEE 29119 – Pruebas de software 8AEN/CTN 71/SC7/GT26 - AENOR
Qué problemas plantean algunos de estos estándares? IEEE & BSI Standards
IEEE 829: documentación (proceso implícito) IEEE 1008: pruebas unitarias BS 7925-1 & 2: pruebas unitarias
Aspectos clave sin cubrir para un estándar de propósito general: Pruebas no unitarias (integración, sistema, aceptación) Modelo de procesos explíctio Aspectos organizativos y gestión del proyecto. Riesgos Visión más completa de técnicas de prueba
Definiciones en conflicto, procesos y procedimientos Qué estándar seguir?
ISO/IEC/IEEE 29119 – Pruebas de software 9AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 Software Testing - Inicio Propuesta de proyecto 29119 de ISO: Feb 2007
Alcance: “This project will produce a software testing standard applicable to all types of software products and software-intensive systems”
Propósito: “to unify and integrate the currently fragmented corpus of normative literature regarding testing that is currently offered by three distinct standards-makers: BSI, IEEE, and ISO/IEC JTC 1/SC 7. The result of the project will be a consistent, unified treatment adopted by all three organizations”
Cuatro partes (Conceptos, procesos, documentación, diseño de pruebas)
ISO/IEC/IEEE 29119 – Pruebas de software 10AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 Software Testing - Estructura
BS 7925-1
BS 7925-2 IEEE 829
Conceptos y Definiciones
Parte 1
Técnicas de Prueba
Parte 4
Documentación
Parte 3Parte 2
Procesos
Pruebas Dirigidas por
Palabras Clave
Parte 5
Evaluación de Procesos
33063Revisión de
Productos de Trabajo
20246IEEE 1028
May 10
May 11
May 12
May 13
…
ISO/IEC/IEEE 29119 - ElaboraciónWorking Draft (WD)Committee Draft (CD)Draft International Standard (DIS)Final Draft International Standard (FDIS)International Standard
WDWD CD1CD1
DIS1DIS1FDISFDIS
WDWD CD1CD1
DISDISFDISFDIS
CD2CD2 CD3CD3
CD2CD2 CD3CD3
ISO/IEC/IEEE 29119 – Pruebas de software
May 14
DIS2DIS2
Partes 1, 2 & 3Partes 1, 2 & 3
Parte 4Parte 4
Parte 5Parte 5
WDWD CDCD
May 15
DISDIS
Parte 1 – Conceptos y Definiciones
Términos y definiciones prueba estática y dinámica, base de prueba, tipo de prueba,
subproceso de prueba … Conceptos sobre pruebas de software:
Las pruebas de software en las organizaciones Los procesos de prueba en los ciclos de vidas (visión
general) Pruebas basadas en riesgos Subprocesos de prueba Estrategias de prueba Automatización de las pruebas Problemas en la gestión
ISO/IEC/IEEE 29119 – Pruebas de software 13AEN/CTN 71/SC7/GT26 - AENOR
Parte 1 – Conceptos y Definiciones
Anexos: ANEXO A. El papel de las pruebas en la verificación y la
validación ANEXO B. Métricas ANEXO C. Pruebas en diferentes modelos de ciclo de vida
(Desarrollo ágil, Desarrollo secuencial, Desarrollo evolutivo) ANEXO D. Ejemplos de subprocesos de prueba detallados
(Aceptación, Desarrollo, Integración, Personalización, Regresión, etc.) ANEXO E. Roles y responsabilidades en el testing
ISO/IEC/IEEE 29119 – Pruebas de software 14AEN/CTN 71/SC7/GT26 - AENOR
Parte 2 - Modelo de Procesos de pruebas
15
Procesos de prueba de la organización
Procesos de gestión de las pruebas
PlanificaciónControl y
seguimientoFinalización
Procesos de pruebas dinámicasDiseño e
Implement.Gestión del
entorno Ejecución
Reporte deincidencias
ISO/IEC/IEEE 29119 – Pruebas de softwareAEN/CTN 71/SC7/GT26 - AENOR
P2 Especificación pruebasde la organización
ISO/IEC/IEEE 29119 – Pruebas de software 16AEN/CTN 71/SC7/GT26 - AENOR
Especificación de pruebas de la organización
Política de pruebasEstrategia(s) de
pruebas
ObjetivosAlcance
OrganizaciónPrincipios gobernantes
ProcesosResponsables
ProductosTécnicas
Herramientas
P2 Procesos de Gestión
ISO/IEC/IEEE 29119 – Pruebas de software 17AEN/CTN 71/SC7/GT26 - AENOR
Procesos de Gestión de Pruebas
Procesos de PruebasDinámicas
Política y estrategia de pruebas
Realimentación para la política y estrategia de pruebas
Plan, Informe del estado Informe de finalización, Métricas
MétricasPlan, Directricesde Control
Métricas
Informe de FinalizaciónResultadosPlan
Actualizaciones del Plan
PlanificaciónControl y
seguimientoFinalización
Procesos de Pruebas de la Organización
Procesos de Pruebas Dinámicas
Procesos de Gestión de pruebas
Plan, Directrices de Control
Plan, Directricesde Control
P2 Aplicación recursiva de procesos - Ejemplo
ISO/IEC/IEEE 29119 – Pruebas de software 18AEN/CTN 71/SC7/GT26 - AENOR
Gestión de las pruebas del proyecto
Pruebasestáticas
Pruebasde sistema
Pruebasde usabilidad
Pruebasde aceptación
Gestión de pruebasestáticas
Gestión de pruebas
de sistema
Gestión de pruebas
de usabilidad
Gestión de pruebas
de aceptación
Gestión de las pruebas de la organización
Política de pruebasEstrategia de pruebas de la organización
Plan de pruebas del proyecto
P.d.P. estáticas
P.d.P. de sistema
P.d.P. de usabilidad
P.d.P. de aceptación
Pruebas estáticas (revisiones, análisis estático…): cubierto por otras normas, p.e. IEEE 1012, 1028
...
...
ISO/IEC/IEEE 29119 – Pruebas de software 19AEN/CTN 71/SC7/GT26 - AENOR
Entender el Contexto (TP1)
Organizar el Plan de
Pruebas (TP2)
Determinar personal y
calendario (TP6)Registrar el Plan de
Pruebas (TP7)
Estrategia de Prueba
Borrador Plan de Pruebas
Consenso del plan de pruebas
(TP8)
Aprobación Plande Pruebas
Plan de Pruebas
Alcance
Comunicar Plan de
Pruebas (TP9)
Calendario y Perfil del Personal
Identificar las mitigaciones
de riesgos (TP4)Diseñar la
Estrategia de Pruebas (TP5)
Análisis de RiesgosIdentificar y
AnalizarRiesgos (TP3) Enfoque de Mitigación
P2 Procesos de Gestión
Calendario del plan de pruebas
Planificación
ISO/IEC/IEEE 29119 – Pruebas de software 20AEN/CTN 71/SC7/GT26 - AENOR
Entender el Contexto (TP1)
Organizar el Plan de
Pruebas (TP2)
Determinar personal y
calendario (TP6)Registrar el Plan de
Pruebas (TP7)
Borrador Plan de Pruebas
Consenso del plan de pruebas
(TP8)
Aprobación Plande Pruebas
Plan de Pruebas
Alcance
Comunicar Plan de
Pruebas (TP9)
Calendario y Perfil del Personal
P2 Procesos de Gestión
Calendario del plan de pruebas
Planificación
Identificar mitigación
de riesgos (TP4) Diseñar la Estrategia de Pruebas (TP5)
Análisis de Riesgos
Identificar y Analizar
Riesgos (TP3)
Enfoque de Mitigación
Estrategia de Prueba
ISO/IEC/IEEE 29119 – Pruebas de software 21AEN/CTN 71/SC7/GT26 - AENOR
…Procesos de Pruebas…
Procesos de Gestión de Pruebas
Procesos de PruebasDinámicas
PlanPreparación
(TMC1)Control(TMC3)
Reporte(TMC4)
Monitorización(TMC2) Progreso
Métricas
Métricas
Directrices de Control
Progreso
Informe del estado de las pruebas
[Pruebas Completas]
[Pruebas Incompletas]
<<Instanciado>>
<<Instanciado>>
Control
P2 Procesos de GestiónSeguimiento y Control
ISO/IEC/IEEE 29119 – Pruebas de software 22AEN/CTN 71/SC7/GT26 - AENOR
P2 Procesos de Gestión
Lecciones Aprendidas
Informe Finalización
ArchivarActivos(TC1)
Limpiar Entorno
(TC2)
Lecciones Aprendidas
(TC3)
InformarFinalización
(TC4)
Finalización
Entorno disponible
P2 Procesos de Pruebas Dinámicas
ISO/IEC/IEEE 29119 – Pruebas de software 23AEN/CTN 71/SC7/GT26 - AENOR
Diseño e implementación
de pruebasEjecución de pruebas
[Sin incidencias]
Especificación de pruebas
Resultados de pruebas
Preparación y mantenimiento
del entorno de pruebas
Informe de incidenciasen pruebas
Requisitos delentorno de pruebas
Informe de entorno de pruebas disponible
[Incidencia detectada O Repetir prueba]
Informe de incidencia
Procesos de Gestión de pruebas
Métricas Directrices de ControlPlan de Pruebas
Procesos de Pruebas Dinámicas
P2 Procesos de Pruebas Dinámicas
ISO/IEC/IEEE 29119 – Pruebas de software 24AEN/CTN 71/SC7/GT26 - AENOR
Identificar juegos decaracterísticas (TD1)
Derivar condicionesde prueba (TD2)
Derivar elementos decobertura de prueba (TD3)
Derivar casosde prueba (TD4)
Ensamblar conjuntosde pruebas (TD5)
Derivar procedimientosde prueba (TD6)
Base de pruebas(Test basis)
Trazabilidad
Juegos de características
Condiciones de prueba (test conditions)
Elementos de cobertura de prueba (test coverage ítems)
Casos de prueba
Conjuntos de pruebas
Procedimientos yscripts deprueba
Diseño e Implementación
P2 Procesos de Pruebas Dinámicas
ISO/IEC/IEEE 29119 – Pruebas de software 25AEN/CTN 71/SC7/GT26 - AENOR
Identificar juegos decaracterísticas (TD1)
Ensamblar conjuntosde pruebas (TD5)
Derivar procedimientosde prueba (TD6)
Base de pruebas(Test basis)
Trazabilidad
Juegos de características
Conjuntos de pruebas
Procedimientos yscripts deprueba
Derivar condicionesde prueba (TD2)
Condiciones de prueba (test conditions)
Derivar casosde prueba (TD4)
Casos de prueba
Derivar elementos decobertura de prueba (TD3)
Elementos de cobertura de prueba (test coverage ítems)
Diseño e Implementación
Parte 3 – Documentación Define plantillas que pueden ser utilizadas para generar
documentación (information items) producto de los procesos de la parte 2 Diferentes formas: registro electrónico, dividido, combinado Conformidad adaptada: según procesos de P2 o según
necesidades de proyecto/organización. Ejemplos (Anexos C a S). Versiones diferentes para
proyectos ágiles y tradicionales, p.e. Políticas y estrategias de la organización Plan de pruebas e informes de estado Especificaciones de pruebas, entorno y datos
Mapeo a otros estándares (Anexo T): IEEE 829:2008, BS 7925-2 1998 ISO/IEC 15289, ISO/IEC 25051:2006
ISO/IEC/IEEE 29119 – Pruebas de software 26AEN/CTN 71/SC7/GT26 - AENOR
Parte 4 –Técnicas para el diseño de las pruebas Conformidad
Total: Subconjunto elegido de técnicas Adaptada: Subconjunto de requisitos. Nuevas Técnicas
Técnicas para el diseño de las pruebas Basadas en las especificaciones Basadas en la estructura Basada en la experiencia
Medidas de cobertura Anexos
Anexo A. Características de calidad Anexo B, C y D. Guías y ejemplos de aplicación de las
diferentes técnicas de diseño Anexo E. Efectividad en el cálculo de la cobertura
ISO/IEC/IEEE 29119 – Pruebas de software 27AEN/CTN 71/SC7/GT26 - AENOR
P4 Clasificación de las técnicas de diseño de las pruebas
ISO/IEC/IEEE 29119 – Pruebas de software 28AEN/CTN 71/SC7/GT26 - AENOR
Particiones de clases de equivalencia
Método de árboles de clasificaciones
Análisis de valores límite
Pruebas de sintaxis
• All Combinations Testing / todas las combinaciones• Pair-wise testing / todas las parejas• Base choice testing / selección de la base más probable• Each choice testing / selección de cada opción
Pruebas combinatorias
Tablas de decisiones
Análisis de causas y efectos
Pruebas de transiciones de estados
• Pruebas de casos de uso
Pruebas de escenarios
Bas
adas
en
las
espe
cific
acio
nes
P4 Clasificación de las técnicas de diseño de las pruebas
ISO/IEC/IEEE 29119 – Pruebas de software 29AEN/CTN 71/SC7/GT26 - AENOR
Basadas en la experiencia: Error guessing
P4 Medición de la cobertura alcanzada
Cobertura: cobertura alcanzada por una técnica de diseño N: número de elementos de cobertura incluidos en
casosde prueba ejecutados
T: número de elementos de cobertura identificados
ISO/IEC/IEEE 29119 – Pruebas de software 30AEN/CTN 71/SC7/GT26 - AENOR
𝐶𝑜𝑏𝑒𝑟𝑡𝑢𝑟𝑎=(𝑁𝑇 ∗100)%
Business Plan Actividades a corto plazo (5 años)
Trabajo técnico (estándares, tech. reports) Integración con otros estándares/frameworks de la industria, y
grupos del JTC1 (liaisons) Mejora del proceso interno, surveys, nuevos miembros…
ISO/IEC/IEEE 29119 – Pruebas de software 31AEN/CTN 71/SC7/GT26 - AENOR
Test Processes Maturity Levels
Model-based testing
29119 for outsourcing/offshoring
29119 for mobile testing
29119 in different industry sectors
29119 and RBT
29119 Test Metrics
Selecting Test Techniques
Product Line Engineering applied to testing
29119 for agile
How to tailor the standards
Test Reporting
Tester Skills and Capabilities
Automation
Exploratory Testing
High Volume Automated Testing
29119 relationship with safety-related
Data-centric testing
Test data sanitization
Non-functional testing
29119 in the cloud
potential areas where standards or technical reports could be developed
Estado actual (Abril 2015)
Estándares internacionales publicados (Agosto 2013) 29119-1, 2, 3: Conceptos, Procesos, Documentación
Próxima aprobación 29119-4 Técnicas de prueba (FDIS finalizado Nov 2014) 33063 Modelo de evaluación de proceso para procesos de
pruebas de software (FDIS Febrero 2015) 33000 renombra serie 15504 (análogo a CMMI) 33063 Usa 29119-2 como modelo de procesos de referencia
En progreso 29119-5 Keyword-driven Testing (DIS2 Marzo 2015) 20246 Work Product Reviews (WD2 Marzo 2015) Otros (MBT, Agile, Mobile)
ISO/IEC/IEEE 29119 – Pruebas de software 32AEN/CTN 71/SC7/GT26 - AENOR
Conclusión El estándar internacional ISO/IEC 29119 proporciona las
directrices para las pruebas cubriendo todos los aspectos del ciclo de vida: Composición consistente de definiciones, procesos,
procedimientos y técnicas para las pruebas de software Soluciona dispersión existente actualmente Cubre huecos no cubiertos por estándares existentes Adoptado por los comités de normalización nacionales, IEEE y
BSI Actualmente representado por 26 naciones, revisado por
profesionales de las pruebas de software en todo el mundo El siguiente paso en la profesionalización de esta industria.
Más información: Grupo de trabajo GT26: http://in2test.lsi.uniovi.es/gt26/
ISO/IEC/IEEE 29119 – Pruebas de software 33AEN/CTN 71/SC7/GT26 - AENOR
Top Related