Subido por Aimé Guzmán

ISO29119-Presentacion-GT26-20151215.SanSebastian

Anuncio
ISO/IEC/IEEE 29119
El 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 Software
http://in2test.lsi.uniovi.es/gt26/
Software Testing Innovation Alliance
San Sebastián, 15 de Diciembre de 2015
Grupo de Trabajo
AEN/CTN71/SC7/GT26 Pruebas de Software
Javier Tuya
Universidad de Oviedo
(coordinador del GT26)
Celestina
Bianco
Ramón Lema
Juan M. Valera
Clara García
Ewout van Driel
Serial Testers
Manuel Fdez.
Lidia Cruz
Mª José Escalona
Isabel Ramos
Xavier
Escudero
José Marañón
Awnaba Software
Total: 19 miembros,
13 organizaciones diferentes
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
2
© AENOR
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
3
ISO/AENOR Estructura de
Comités y Grupos de trabajo

ISO/IEC & Organismos
nacionales

Comités ISO y Grupos de
Trabajo:
 ISO: International Organization
ISO
IEC
JTC1
SC7
WG26
AEN/CTN 71/SC7/GT26 - AENOR
for Standarization
 JTC1: Tecnología de la
Información
 SC7: Ingeniería de Software y
Sistemas
 WG26: Pruebas de software
AENOR
CTN71
SC7
GT26

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
4
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
5
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……
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
6
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…
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
7
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
8
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?

AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
9
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)
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
10
ISO/IEC/IEEE 29119 Software
Testing - Estructura
Parte 1
Conceptos y Definiciones
BS 7925-1
Parte 4
Parte 2
Parte 3
Técnicas de
Prueba
Procesos
Documentación
BS 7925-2
Parte 5
Pruebas
Dirigidas por
Palabras Clave
IEEE 829
33063
20246
Evaluación de
Procesos
Revisión de
Productos de
Trabajo
IEEE 1028
ISO/IEC/IEEE 29119 - Elaboración
Working Draft (WD)
Committee Draft (CD)
Draft International Standard (DIS)
Final Draft International Standard (FDIS)
International Standard
CD1
WD
WD
…
May
10
CD2
CD1
CD3
CD2
Partes 1, 2 & 3
Parte 4
Parte 5
DIS
CD3
FDIS
DIS1
WD
May
11
May
12
FDIS
DIS2
May
13
ISO/IEC/IEEE 29119 – Pruebas de software
CD
May
14
DIS
May
15
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
13
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
14
Parte 2 - Modelo de Procesos
de pruebas
Procesos de prueba de la organización
Procesos de gestión de las pruebas
Planificación
Control y
seguimiento
Finalización
Procesos de pruebas dinámicas
Diseño e
Implement.
AEN/CTN 71/SC7/GT26 - AENOR
Gestión del
entorno
Ejecución
ISO/IEC/IEEE 29119 – Pruebas de software
Reporte de
incidencias
15
P2 Especificación pruebas
de la organización
Especificación de pruebas de la organización
Política de pruebas
Estrategia(s) de
pruebas
Objetivos
Alcance
Organización
Principios gobernantes
Procesos
Responsables
Productos
Técnicas
Herramientas
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
16
P2 Procesos de Gestión
Procesos de Pruebas de la Organización
Política
y estrategia de pruebas
Realimentación para la política
y estrategia de pruebas
Procesos de Gestión de pruebas
Actualizaciones del
Plan
Plan
Planificación
Control y
seguimiento
Plan, Informe del estado
Informe de finalización,
Métricas
Plan, Directrices
de Control
Procesos de
Gestión de Pruebas
Plan, Directrices
de Control
Informe de
Finalización
Resultados
Finalización
Plan, Directrices
de Control
Métricas
Procesos de Pruebas
Dinámicas
Métricas
Procesos de Pruebas
Dinámicas
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
17
P2 Aplicación recursiva
de procesos - Ejemplo
Gestión de las pruebas
de la organización
Política de pruebas
Estrategia de pruebas de la organización
Gestión de las pruebas
del proyecto
Plan de pruebas del proyecto
Gestión de
pruebas
estáticas
P.d.P.
estáticas
Pruebas
estáticas

Gestión de
pruebas
de sistema
P.d.P.
de sistema
Gestión de
pruebas
de usabilidad
P.d.P.
de usabilidad
Pruebas
de sistema
Gestión de
pruebas
de aceptación
...
P.d.P.
de aceptación
Pruebas
de usabilidad
Pruebas
de aceptación
...
Pruebas estáticas (revisiones, análisis estático…): cubierto por otras normas, p.e. IEEE 1012, 1028
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
18
P2 Procesos de Gestión
Alcance
Entender el
Contexto (TP1)
Calendario del plan de pruebas
Organizar el
Plan de
Pruebas (TP2)
Identificar y
Analizar
Riesgos (TP3)
Planificación
Plan de
Pruebas
Consenso del
plan de pruebas
(TP8)
Comunicar
Plan de
Pruebas (TP9)
Registrar el
Plan de
Pruebas (TP7)
Análisis de
Riesgos
Identificar las Enfoque de Mitigación
mitigaciones
de riesgos (TP4)
Diseñar la
Estrategia de
Pruebas (TP5)
Determinar
personal y
calendario (TP6) Estrategia de Prueba
Calendario y
Perfil del Personal
Borrador Plan
de Pruebas
Aprobación Plan
de Pruebas
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
19
P2 Procesos de Gestión
Alcance
Entender el
Contexto (TP1)
Calendario del plan de pruebas
Organizar el
Plan de
Pruebas (TP2)
Identificar y
Analizar
Riesgos (TP3)
Planificación
Plan de
Pruebas
Consenso del
plan de pruebas
(TP8)
Comunicar
Plan de
Pruebas (TP9)
Registrar el
Plan de
Pruebas (TP7)
Análisis de
Riesgos
Identificar
mitigación
de riesgos (TP4)
Determinar
personal y
calendario (TP6)
Enfoque de
Mitigación
Diseñar la
Estrategia de
Pruebas (TP5)
Estrategia de
Prueba
Calendario y
Perfil del Personal
Borrador Plan
de Pruebas
Aprobación Plan
de Pruebas
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
20
P2 Procesos de Gestión
Seguimiento y
Control
Informe del estado de las pruebas
Progreso
Plan
Reporte
(TMC4)
Control
[Pruebas Incompletas]
Preparación Métricas Monitorización
(TMC1)
(TMC2)
Progreso
Control
(TMC3)
Métricas
Directrices
de Control
Procesos
de Pruebas
Dinámicas
[Pruebas
Completas]
…Procesos de Pruebas…
<<Instanciado>>
<<Instanciado>>
Procesos de
Gestión de Pruebas
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
21
P2 Procesos de Gestión
Archivar
Activos
(TC1)
Limpiar
Entorno
(TC2)
Entorno disponible
Lecciones
Aprendidas
(TC3)
Finalización
AEN/CTN 71/SC7/GT26 - AENOR
Lecciones Aprendidas
Informar
Finalización
(TC4)
ISO/IEC/IEEE 29119 – Pruebas de software
Informe Finalización
22
P2 Procesos de Pruebas
Dinámicas
Procesos de Gestión de pruebas
Plan de Pruebas
Métricas
Directrices de Control
Procesos de Pruebas Dinámicas
Diseño e
implementación
de pruebas
Requisitos
del
entorno de
pruebas
[Sin
incidencias]
Ejecución de pruebas
[Incidencia
detectada
O Repetir
prueba]
Preparación y
mantenimiento
del entorno de pruebas
AEN/CTN 71/SC7/GT26 - AENOR
Resultados
de pruebas
Especificación
de pruebas
Informe de entorno
de pruebas
disponible
ISO/IEC/IEEE 29119 – Pruebas de software
Informe
de
incidencia
Informe de
incidencias
en pruebas
23
P2 Procesos de Pruebas
Dinámicas
Identificar juegos de Juegos de características
características (TD1)
Diseño e Implementación
Derivar condiciones Condiciones de prueba (test conditions)
de prueba (TD2)
Derivar elementos de
cobertura de prueba (TD3)
Elementos de cobertura de prueba
(test coverage ítems)
Derivar casos
de prueba (TD4)
Casos de prueba
Ensamblar conjuntos Conjuntos de pruebas
de pruebas (TD5)
Procedimientos y
Base de pruebas
(Test basis)
scripts de
Derivar procedimientos prueba
de prueba (TD6)
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
24
P2 Procesos de Pruebas
Dinámicas
Identificar juegos de Juegos de características
características (TD1)
Diseño e Implementación
Derivar condiciones Condiciones de prueba (test conditions)
de prueba (TD2)
Derivar elementos de
cobertura de prueba (TD3)
Elementos de cobertura de
prueba (test coverage ítems)
Derivar casos Casos de prueba
de prueba (TD4)
Ensamblar conjuntos Conjuntos de pruebas
de pruebas (TD5)
Procedimientos y
Base de pruebas
(Test basis)
scripts de
Derivar procedimientos prueba
de prueba (TD6)
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
25
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
26
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
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
27
P4 Clasificación de las técnicas de
diseño de las pruebas
Particiones de clases de equivalencia
Método de árboles de clasificaciones
Basadas en las
especificaciones
Análisis de valores límite
Pruebas de sintaxis
Pruebas combinatorias
• 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
Tablas de decisiones
Análisis de causas y efectos
Pruebas de transiciones de estados
Pruebas de escenarios
• Pruebas de casos de uso
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
28
P4 Clasificación de las técnicas de
diseño de las pruebas
Basadas en la experiencia: Error guessing
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
29
P4 Medición de la cobertura
alcanzada
𝐶𝑜𝑏𝑒𝑟𝑡𝑢𝑟𝑎 =

Cobertura:
N:

T:

𝑁
∗ 100 %
𝑇
cobertura alcanzada por una técnica de diseño
número de elementos de cobertura incluidos en casos
de prueba ejecutados
número de elementos de cobertura identificados
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
30
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…
potential areas where standards or technical reports could be developed
Test Processes Maturity Levels
Test Reporting
Model-based testing
Tester Skills and Capabilities
29119 for outsourcing/offshoring
Automation
29119 for mobile testing
29119 in different industry sectors
29119 and RBT
29119 Test Metrics
Exploratory Testing
High Volume Automated Testing
29119 relationship with safety-related
Selecting Test Techniques
Data-centric testing
Product Line Engineering applied to testing
Test data sanitization
29119 for agile
Non-functional testing
How to tailor the standards
29119 in the cloud
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
31
Estado actual (Diciembre 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 (Publicado Diciembre 2015)
 33063 Modelo de evaluación de proceso para procesos de
pruebas de software (Publicado Julio 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 (CD Noviembre 2015)
 Otros (MBT, Agile, Mobile)
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
32
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/
Agradecimientos: Ministerio de Economía y Competitividad,
proyecto TIN2013-46928-C3-1-R (Testing of data persistence
and user perspective for new paradigms)
AEN/CTN 71/SC7/GT26 - AENOR
ISO/IEC/IEEE 29119 – Pruebas de software
33
Descargar