Calidad De Software Diapositivas

141
Calidad de Software Ing. Felipe Aliaga Cavero

description

todo el proceso de evaluar la calidad de software

Transcript of Calidad De Software Diapositivas

Page 1: Calidad De Software Diapositivas

Calidad de Software

Ing. Felipe Aliaga Cavero

Page 2: Calidad De Software Diapositivas

CAPACIDAD IFundamentos de la Calidad

de Software

Page 3: Calidad De Software Diapositivas
Page 4: Calidad De Software Diapositivas
Page 5: Calidad De Software Diapositivas
Page 6: Calidad De Software Diapositivas
Page 7: Calidad De Software Diapositivas
Page 8: Calidad De Software Diapositivas
Page 9: Calidad De Software Diapositivas
Page 10: Calidad De Software Diapositivas
Page 11: Calidad De Software Diapositivas
Page 12: Calidad De Software Diapositivas
Page 13: Calidad De Software Diapositivas
Page 14: Calidad De Software Diapositivas
Page 15: Calidad De Software Diapositivas
Page 16: Calidad De Software Diapositivas
Page 17: Calidad De Software Diapositivas
Page 18: Calidad De Software Diapositivas
Page 19: Calidad De Software Diapositivas
Page 20: Calidad De Software Diapositivas
Page 21: Calidad De Software Diapositivas
Page 22: Calidad De Software Diapositivas
Page 23: Calidad De Software Diapositivas
Page 24: Calidad De Software Diapositivas
Page 25: Calidad De Software Diapositivas
Page 26: Calidad De Software Diapositivas
Page 27: Calidad De Software Diapositivas
Page 28: Calidad De Software Diapositivas
Page 29: Calidad De Software Diapositivas
Page 30: Calidad De Software Diapositivas
Page 31: Calidad De Software Diapositivas
Page 32: Calidad De Software Diapositivas
Page 33: Calidad De Software Diapositivas
Page 34: Calidad De Software Diapositivas
Page 35: Calidad De Software Diapositivas
Page 36: Calidad De Software Diapositivas
Page 37: Calidad De Software Diapositivas
Page 38: Calidad De Software Diapositivas
Page 39: Calidad De Software Diapositivas
Page 40: Calidad De Software Diapositivas
Page 41: Calidad De Software Diapositivas
Page 42: Calidad De Software Diapositivas
Page 43: Calidad De Software Diapositivas
Page 44: Calidad De Software Diapositivas

Calidad en el Proceso de Software

Page 45: Calidad De Software Diapositivas
Page 46: Calidad De Software Diapositivas
Page 47: Calidad De Software Diapositivas
Page 48: Calidad De Software Diapositivas
Page 49: Calidad De Software Diapositivas
Page 50: Calidad De Software Diapositivas

CAPACIDAD IIModelos y Estándares de

Calidad de Software

Page 51: Calidad De Software Diapositivas

•ISO 9000

•CMM (Estados Unidos)

•Tick It (Inglaterra)

•Bootstrap (Europa)

•ISO/SPICE (Australia)

Modelos de Calidad de Software – Calidad del Proceso

Page 52: Calidad De Software Diapositivas

ISO: INTERNATIONAL ORGANIZATION FOR STANDARIZATION

COMITÉS TÉCNICOS (TC)

SUBCOMITÉS (SC)

GRUPOS DE TRABAJO (WG)

Borradorde WG

WD

Borradorde comité

CD

Borrador de norma intern.

DIS

Borrador final norma intern.

FDIS

Norma intern.

IS

Especificación técnica (TS) Informe técnico (TR)

Especificación pública (PAS) Acuerdo técnico de la industria (ITA)

ISO 9000

Page 53: Calidad De Software Diapositivas

• UNE-EN ISO 9000:2000 Sistemas de gestión de la calidad. Fundamentos y vocabulario (ISO 9000:2000)

• UNE-EN ISO 9001:2000 Sistemas de gestión de la calidad. Requisitos (ISO 9001:2000)

 • UNE-EN ISO 9004:2000 Sistemas de gestión de la calidad.

Directrices para la mejora del desempeño (ISO 9004:2000)

• Norma ISO 19011, que proporciona orientación relativa a las auditorías de sistemas de gestión de la calidad y de gestión ambiental.

 

NORMAS ISO 9000

ISO 9000

Page 54: Calidad De Software Diapositivas

NORMAS ISO 9000

ISO 9000

Page 55: Calidad De Software Diapositivas

RAZONES PARA USAR ISO 9000

Demanda del cliente Necesidad de mejorar procesos/sistemas

ISO 9000

Page 56: Calidad De Software Diapositivas

ISO 9000

Page 57: Calidad De Software Diapositivas

• Enfoque al cliente

• Liderazgo

• Participación del personal

• Enfoque basado en procesos • Enfoque de sistema para la gestión

• Mejora continua

• Enfoque basado en hechos para la toma de decisión • Relaciones mutuamente beneficiosas con el proveedor

PRINCIPIOS DE GESTIÓN DE LA CALIDAD

ISO 9000

Page 58: Calidad De Software Diapositivas

OBJETO Y CAMPO DE APLICACIÓN

a) las organizaciones que buscan ventajas por medio de la implementación de un sistema de gestión de la calidad;

b) las organizaciones que buscan la confianza de sus proveedores en que sus requisitos para los productos serán satisfechos;

c) los usuarios de los productos;

d) aquellos interesados en el entendimiento mutuo de la terminología utilizada en la gestión de la calidad (por ejemplo: proveedores, clientes, entes reguladores);

e) todos aquellos que, perteneciendo o no a la organización, evalúan o auditan el sistema de gestión de la calidad para determinar su conformidad con los requisitos de la Norma ISO 9001

f) todos aquellos que, perteneciendo o no a la organización, asesoran o dan formación sobre el sistema de gestión de la calidad adecuado para dicha organización;

g) aquellos quienes desarrollan normas relacionadas.

ISO 9000

Page 59: Calidad De Software Diapositivas

FUNDAMENTOS DE LOS SISTEMAS DE GESTIÓN DE LA CALIDAD

•Base racional para los sistemas de gestión de la calidad

•Requisitos para los sistemas de gestión de la calidad y requisitos para los productos

•Enfoque de sistemas de gestión de la calidad

•Enfoque basado en procesos

•Política de la calidad y objetivos de la calidad

•Papel de la alta dirección dentro del sistema de gestión de la calidad

•Documentación

•Evaluación de los sistemas de gestión de la calidad

•Mejora continua

•Papel de las técnicas estadísticas

•Sistemas de gestión de la calidad y otros sistemas de gestión

•Relación entre los sistemas de gestión de la calidad y los modelos de excelencia

ISO 9000

Page 60: Calidad De Software Diapositivas

Enfoque de sistemas de gestión de la calidad 

• Determinar las necesidades y expectativas de los clientes y de otras partes interesadas;

• Establecer la política y objetivos de la calidad de la organización;

• Determinar los procesos y las responsabilidades necesarias para el logro de los objetivos de la calidad;

• Determinar y proporcionar los recursos necesarios para el logro de los objetivos de la calidad;

• Establecer los métodos para medir la eficacia y eficiencia de cada proceso;

• Aplicar estas medidas para determinar la eficacia y eficiencia de cada proceso;

• Determinar los medios para prevenir no conformidades y eliminar sus causas;

• Establecer y aplicar un proceso para la mejora continua del sistema de gestión de la calidad.

ISO 9000

Page 61: Calidad De Software Diapositivas

Enfoque basado en procesos

ISO 9000

Page 62: Calidad De Software Diapositivas

Enfoque basado en procesos

ISO 9000

Page 63: Calidad De Software Diapositivas

• Establecer y mantener la política de la calidad y los objetivos de la calidad de la organización;

• Promover la política de la calidad y los objetivos de la calidad a través de la organización para aumentar la toma de conciencia, la motivación y la participación;

• Asegurarse del enfoque hacia los requisitos del cliente en toda la organización;

• Asegurarse de que se implementan los procesos apropiados para cumplir con los requisitos de los clientes y de otras partes interesadas y para alcanzar los objetivos de la calidad;

• Asegurarse de que se ha establecido, implementado y mantenido un sistema de gestión de la calidad eficaz y eficiente para alcanzar los objetivos de la calidad;

• Asegurarse de la disponibilidad de los recursos necesarios;

• Revisar periódicamente el sistema de gestión de la calidad;

• Decidir sobre las acciones en relación con la política y con los objetivos de la calidad;

• Decidir sobre las acciones para la mejora del sistema de gestión de la calidad.

Papel de la alta dirección

ISO 9000

Page 64: Calidad De Software Diapositivas

Cada organización debería determinar qué procesos deben documentarse en función de los requisitos de su cliente y de los legales o reglamentarios aplicables, de la naturaleza de sus actividades y de su estrategia corporativa global.

Al determinar qué procesos deberían documentarse la organización podría considerar factores tales como:

-         el efecto sobre la calidad

-         el riesgo de insatisfacción del cliente

-         los requisitos legales y reglamentario

-         el riesgo económico

-         la eficacia y eficiencia

-         la competencia del personal

-         la complejidad de los procesos

 

ISO 9000

Page 65: Calidad De Software Diapositivas

Evaluación de los sistemas de gestión de la calidad

Procesos de evaluación:

• ¿Se ha identificado y definido apropiadamente el

proceso?

• ¿Se han asignado las responsabilidades?

• ¿Se han implementado y mantenido los

procedimientos?

• ¿Es el proceso eficaz para lograr los resultados

requeridos? Auditorías del sistema de gestión de la calidad

Revisión del sistema de gestión de la calidad

ISO 9000

Page 66: Calidad De Software Diapositivas

Mejora continua

a) Análisis y evaluación de la situación existente para identificar

áreas para la mejora;

b) Establecimiento de los objetivos para la mejora;

c) Búsqueda de posibles soluciones para lograr los objetivos;

d) Evaluación de dichas soluciones y su selección;

e) Implementación de la solución seleccionada;

f) Medición, verificación, análisis y evaluación de los resultados

de la implementación para determinar que se han alcanzado

los objetivos

ISO 9000

Page 67: Calidad De Software Diapositivas
Page 68: Calidad De Software Diapositivas
Page 69: Calidad De Software Diapositivas
Page 70: Calidad De Software Diapositivas
Page 71: Calidad De Software Diapositivas
Page 72: Calidad De Software Diapositivas
Page 73: Calidad De Software Diapositivas
Page 74: Calidad De Software Diapositivas
Page 75: Calidad De Software Diapositivas
Page 76: Calidad De Software Diapositivas
Page 77: Calidad De Software Diapositivas
Page 78: Calidad De Software Diapositivas
Page 79: Calidad De Software Diapositivas
Page 80: Calidad De Software Diapositivas
Page 81: Calidad De Software Diapositivas
Page 82: Calidad De Software Diapositivas
Page 83: Calidad De Software Diapositivas
Page 84: Calidad De Software Diapositivas
Page 85: Calidad De Software Diapositivas
Page 86: Calidad De Software Diapositivas
Page 87: Calidad De Software Diapositivas

CAPACIDAD IIIMétricas en la Calidad de

Software

Page 88: Calidad De Software Diapositivas

Modelo Mc-Call

Page 89: Calidad De Software Diapositivas

CAPACIDAD IVActividades de Control de

Calidad de Software

Page 90: Calidad De Software Diapositivas

Calidad del Producto

Page 91: Calidad De Software Diapositivas

Verificación & Validación

Page 92: Calidad De Software Diapositivas
Page 93: Calidad De Software Diapositivas
Page 94: Calidad De Software Diapositivas
Page 95: Calidad De Software Diapositivas
Page 96: Calidad De Software Diapositivas
Page 97: Calidad De Software Diapositivas
Page 98: Calidad De Software Diapositivas
Page 99: Calidad De Software Diapositivas
Page 100: Calidad De Software Diapositivas
Page 101: Calidad De Software Diapositivas
Page 102: Calidad De Software Diapositivas
Page 103: Calidad De Software Diapositivas
Page 104: Calidad De Software Diapositivas
Page 105: Calidad De Software Diapositivas
Page 106: Calidad De Software Diapositivas
Page 107: Calidad De Software Diapositivas
Page 108: Calidad De Software Diapositivas
Page 109: Calidad De Software Diapositivas

Pruebas de Software

Page 110: Calidad De Software Diapositivas

Contenidos

• Introducción• Pruebas de Caja Blanca

– Prueba del Camino Básico– Pruebas de Estructuras de Control

• Pruebas de Caja Negra– Partición Equivalente– Análisis de Valores Límite

• Herramientas para Pruebas

Page 111: Calidad De Software Diapositivas

Introducción

• Pruebas: factor crítico para garantizar la calidad del software

• Una prueba conlleva la intención de descubrir algún error

• Un caso de prueba es bueno cuando su ejecución conlleva una alta probabilidad de encontrar un error

• El éxito de la prueba se mide en función de la capacidad de detectar un error que estaba oculto

Page 112: Calidad De Software Diapositivas

PruebaPrueba

Modelo de Modelo de FiabilidadFiabilidad

DepuraciónDepuración

EvaluaciónEvaluación

ConfiguraciónConfiguracióndel Softwaredel Software

ConfiguraciónConfiguraciónde lade la

PruebaPrueba

ErroresErrores

CorrecionesCorreciones

PredicciónPredicciónFiabilidadFiabilidad

Resultados Resultados esperadosesperados

Resultados de Resultados de la pruebala prueba

Datos de tasa Datos de tasa de errorde error

... Introducción

Page 113: Calidad De Software Diapositivas

... Introducción

• Tipos de Pruebas:– Unitarias– de Integración– de Aceptación– de Regresión– de Carga– Alpha– Beta– ...

Page 114: Calidad De Software Diapositivas

... Introducción

• El diseño de casos de prueba para la verificación del software puede significar un esfuerzo considerable (cerca del 50% del tiempo total de desarrollo)

• Para Pruebas Unitarias existen fundamentalmente dos enfoques: – Pruebas de Caja Blanca (o Pruebas Estructurales) – Pruebas de Caja Negra (o Pruebas Funcionales)

• Combinar ambos enfoques permite lograr mayor fiabilidad

Page 115: Calidad De Software Diapositivas

• Conceptos – Error: acción humana que produce una falta– Falta: algo que está mal en un producto (modelo,

código, documento, etc.)– Fallo: manifestación de una falta– Defecto: error, falta o fallo

• Verificación y Validación– Verificación: ¿estamos construyendo el producto

correctamente? – Validación: ¿estamos construyendo el producto

correcto?

... Introducción

Page 116: Calidad De Software Diapositivas

• La prueba de la caja blanca usa la estructura de control del diseño procedural para derivar los casos de prueba

• Idea: confeccionar casos de prueba que garanticen que se verifican todos los caminos independientes

• Verificaciones para cada camino independiente:– Probar sus dos facetas desde el punto de vista lógico,

es decir, verdadera y falsa– Ejecutar todos los bucles en sus límites operacionales– Ejercitar las estructuras internas de datos

Pruebas de Caja Blanca

Page 117: Calidad De Software Diapositivas

• Propuesta por Tom McCabe (1976)

• La idea es derivar casos de prueba a partir de un conjunto dado de caminos independientes

• Camino independiente es aquel que introduce por lo menos una sentencia de procesamiento (o valor de condición) que no estaba considerada

• Para obtener el conjunto un conjunto de caminos independientes se construirá el Grafo de Flujo asociado y se calculará su Complejidad Ciclomática

... Pruebas de Caja BlancaPrueba del Camino Básico

Page 118: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del Camino Básico - Grafo de Flujo

Secuencia

ifWhile

then else

endif

CASE

opción1

no opción1

END CASE

opción2

no opción2

...

...

no opciónN

opciónN

Page 119: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del Camino Básico - ... Grafo de Flujo

AristasAristas

NodosNodos

RegiónRegión

Page 120: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del Camino Básico - Complejidad Ciclomática

• Complejidad ciclomática de un grafo de flujo V(G) establece el número de caminos independientes

• Puede calcularse de tres formas alternativas:

– El número de regiones del grafo de flujo

– V(G) = A - N + 2, donde A es el número de aristas y N es el número de nodos

– V(G) = P + 1, donde P es el número de nodos predicado

Page 121: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del Camino Básico - ... Complejidad Ciclomática

V(G) = 4

– El grafo de la figura tiene cuatro regiones.

– 11 aristas - 9 nodos + 2 = 4

– 3 nodos predicado + 1 = 4

1111

2, 32, 3

11111111

10101010

9999

88887777

6666 4, 54, 54, 54, 5

Page 122: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del Camino Básico - Conjunto Básico

11

2, 32, 3

1111

1010

99

8877

66 4, 54, 5

Un conjunto de caminos independientesUn conjunto de caminos independientesCamino 1: 1-11Camino 1: 1-11Camino 2: 1-2-3-4-5-10-1-11Camino 2: 1-2-3-4-5-10-1-11Camino 3: 1-2-3-6-8-9-10-1-11Camino 3: 1-2-3-6-8-9-10-1-11Camino 4: 1-2-3-6-7-9-10-1-11Camino 4: 1-2-3-6-7-9-10-1-11

El caminoEl camino1-2-3-4-5-10-1-2-3-6-8-9-10-1-111-2-3-4-5-10-1-2-3-6-8-9-10-1-11

No se considera un camino independiente, No se considera un camino independiente, ya que es simplemente una combinación ya que es simplemente una combinación de caminos ya especificadosde caminos ya especificados

Los cuatro caminos anteriores constituyen Los cuatro caminos anteriores constituyen un un conjunto básicoconjunto básico para el grafo para el grafo

Page 123: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del camino básico - ... Conjunto Básico

• Tratamiento de Condiciones Compuestas

• Ejemplo :

IF a OR b THEN procedimiento x

ELSE

procedimiento y

ENDIF

a

xy

b x

Nodos Predicado

False True

False True

Page 124: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del camino básico - Derivación de casos de prueba

• Pasos para realizar las pruebas:

1. A partir del diseño o del código fuente, dibujar el grafo de flujo asociado

2. Se calcula la complejidad ciclomática del grafo

3. Se determina un conjunto básico de caminos independientes

4. Se preparan los casos de prueba que obliguen a la ejecución de cada camino del conjunto básico

Page 125: Calidad De Software Diapositivas

Pruebas de caja blancaPrueba del camino básico - ... Derivación de casos de prueba

PROCEDURE imprime_media(VAR x, y : real;)PROCEDURE imprime_media(VAR x, y : real;)VAR resultado : real;VAR resultado : real;resultado:=0;resultado:=0;IF (x < 0 OR y < 0)IF (x < 0 OR y < 0)THENTHEN

WRITELN(WRITELN(““x e y deben ser positivos”);x e y deben ser positivos”);ELSEELSE

resultado := (x + y)/2resultado := (x + y)/2WRITELN(WRITELN(““La media es: “, resultado);La media es: “, resultado);

ENDIFENDIFEND imprime_mediaEND imprime_media

11

22

33

44

55

66

Ejemplo:Ejemplo:

Page 126: Calidad De Software Diapositivas

Pruebas de Caja BlancaPrueba del camino básico - ... Derivación de casos de prueba

11

22

3344

44

66

55

V(G) = 2+1 = 3. Por lo tanto, hV(G) = 2+1 = 3. Por lo tanto, hay que ay que

determinar tres caminos independientes. determinar tres caminos independientes.

Por ejemplo:Por ejemplo:

Camino 1: 1-2-3-5-6Camino 1: 1-2-3-5-6Camino 2: 1-2-4-6Camino 2: 1-2-4-6Camino 3: 1-2-3-4-6Camino 3: 1-2-3-4-6

Casos de prueba para cada camino:Casos de prueba para cada camino:

Camino 1: Escoger algún x e y tales que se Camino 1: Escoger algún x e y tales que se cumpla x >= 0 AND y >= 0cumpla x >= 0 AND y >= 0

Camino 2: Escoger algún x tal que se Camino 2: Escoger algún x tal que se cumpla x < 0cumpla x < 0

Camino 3: Escoger algún x e y tales que se Camino 3: Escoger algún x e y tales que se cumpla x >= 0 AND y < 0cumpla x >= 0 AND y < 0

FalseFalse

FalseFalse

TrueTrue

TrueTrue

x < 0x < 0

y < 0y < 0

Page 127: Calidad De Software Diapositivas

Pruebas de Caja BlancaOtras Pruebas de Caja Blanca – Prueba de Condiciones

Prueba de condiciones. Tipos de errores que pueden aparecer en una condición:

– Existe un error en un operador lógico– Existe un error en un paréntesis lógico

– Existe un error en un operador relacional– Existe un error en una expresión aritmética

Page 128: Calidad De Software Diapositivas

BuclesBuclessimplessimples

BuclesBuclesanidadosanidados

BuclesBuclesconcatenadosconcatenados Bucles noBucles no

estructuradosestructurados

Pruebas de Caja BlancaOtras Pruebas de Caja Blanca – Prueba de Bucles

Page 129: Calidad De Software Diapositivas

• Pruebas para Bucles simples (n es el número máximo de iteraciones permitidos por el bucle)

– Pasar por alto totalmente el bucle

– Pasar una sola vez por el bucle

– Pasar dos veces por el bucle

– Hacer m pasos por el bucle con m < n

– Hacer n-1, n y n + 1 pasos por el bucle

Pruebas de Caja BlancaOtras Pruebas de Caja Blanca – ... Prueba de Bucles

Page 130: Calidad De Software Diapositivas

• Pruebas para Bucles Anidados

– Comenzar en el bucle más interior estableciendo los demás bucles en sus valores mínimos

– Realizar las pruebas de bucle simple para el más interior manteniendo los demás en sus valores mínimos

– Avanzar hacia fuera confeccionando pruebas para el siguiente bucle manteniendo todos los externos en los valores mínimos y los demás bucles anidados en sus valores típicos

– Continuar el proceso hasta haber comprobado todos los bucles

Pruebas de Caja BlancaOtras Pruebas de Caja Blanca – ... Prueba de Bucles

Page 131: Calidad De Software Diapositivas

• Pruebas para Bucles concatenados

– Siempre que los bucles concatenados sean independientes se puede aplicar lo relativo a bucles simples/anidados. En caso de ser dependientes se evaluarán como bucles anidados

• Pruebas para Bucles no estructurados

– Siempre que se usen los mecanismos que aporta la programación estructurada, este tipo de bucles no estarán presentes

Pruebas de Caja BlancaOtras Pruebas de Caja Blanca – ... Prueba de Bucles

Page 132: Calidad De Software Diapositivas

• Las pruebas de caja negra se centran en los requisitos funcionales del software

• La prueba de la caja negra intenta encontrar errores de los siguientes tipos:

– Funciones incorrectas o inexistentes– Errores relativos a las interfaces– Errores en estructuras de datos o en accesos a

bases de datos externas– Errores debidos al rendimiento– Errores de inicialización o terminación

Pruebas de Caja Negra

Page 133: Calidad De Software Diapositivas

Pruebas de Caja NegraPartición Equivalente

• La partición equivalente es un método que divide el campo de entrada de un programa en clases de datos

• Una condición de entrada es un valor numérico específico, un rango de valores, un miembro de un conjunto de valores o lógica

• Una clase de equivalencia representa un conjunto de estados válidos y no válidos para una condición de entrada

• La prueba de partición equivalente se basa en evaluar las clases de equivalencia para una condición de entrada

Page 134: Calidad De Software Diapositivas

Pruebas de Caja NegraPartición Equivalente

Paso 1: Identificar Clases de Equivalencia

– Se examina cada condición de entrada y se divide en dos o más grupos.

– Se identifican dos tipos de clases: Clases de equivalencia válidas

Clases de equivalencia no válidasCondición de entrada

Clases de Equivalencia Válidas

Clases de Equivalencia No ´Válidas

Page 135: Calidad De Software Diapositivas

• Si la condición de entrada es un:

– Rango, se define una clase de equivalencia válida y dos no válidas

– Valor específico, se define una clase de equivalencia válida y dos no válidas

– Miembro de conjunto, se define una clase de equivalencia válida y otra no válida

– Lógica, se define una clase válida y otra no válida

Pruebas de Caja Negra

... Partición Equivalente Paso 1: Identificar Clases de Equivalencia

Page 136: Calidad De Software Diapositivas

– Asignar un número único a cada clase de equivalencia

– Escribir casos de prueba que cubran tantas clases válidas no incorporadas como sea posible hasta que se cubran todas las clases de equivalencia válidas

– Escribir casos de prueba que cubran una sola clase no válida no incorporada hasta que se cubran todas las clases de equivalencia no válidas.

Pruebas de Caja Negra… Partición Equivalente

Paso 1: Identificar Clases de Equivalencia

Page 137: Calidad De Software Diapositivas

Pruebas de Caja NegraAnálisis de Valores Límite

• La técnica de Análisis de Valores Límites selecciona casos de prueba que ejerciten los valores límite

• Complementa la prueba de partición equivalente. En lugar de realizar la prueba con cualquier elemento de la partición equivalente, se escogen los valores en los bordes de la clase

• Se derivan tanto casos de prueba a partir de las condiciones de entrada como con las de salida

Page 138: Calidad De Software Diapositivas

• Un usuario puede conectarse al banco por Internet y realizar una serie de operaciones bancarias. Una vez accedido al banco con las consiguientes medidas de seguridad (clave de acceso y demás), se requiere la siguiente entrada:– Código del banco. En blanco o número de tres dígitos. En este último

caso, el primero de los tiene que ser mayor que 1– Código de sucursal. Un número de cuatro dígitos. El primero de ellos

mayor de 0– Número de cuenta. Número de cinco dígitos– Clave personal. Valor alfanumérico de cinco posiciones. Este valor se

introducirá según la orden que se desee realizar– Orden. Puede estar en blanco o ser una de las dos cadenas siguientes:

“Talonario”“Movimientos”En el primer caso el usuario recibirá un talonario de cheques, mientras que en el segundo recibirá los movimientos del mes en curso. Si este código está en blanco, el usuario recibirá los dos documentos

Pruebas de Caja NegraEjemploPruebas de Caja NegraEjemplo

Page 139: Calidad De Software Diapositivas

Condición de Entrada

Tipo Clase Equivalencia Válida

Clase Equivalencia No Válida

Código banco Lógica (puede estar o no) Si está es Rango

1: En blanco2: 100<= Código banco <= 999

3: Un valor no numérico4: Código banco < 1005: Código banco > 999

Código sucursal

Rango 6: 1000 <= Código sucursal <= 9999

7: Código sucursal < 10008: Código sucursal >=

9999

Nº Cuenta Valor 9: Cualquier número de cinco dígitos

10: Número de más de cinco dígitos

11: Número de menos de cinco dígitos

Clave Valor 12: Cualquier cadena de caracteres alfanuméricos de 5 posiciones

13: Cadena de menos de cinco posiciones

14: Cadena de más de cinco posiciones

Orden Conjunto, con comportamiento distinto

15: “”16: “Talonario”17: “Movimientos”

18: Cadena distinta de blanco y de las válidas

Page 140: Calidad De Software Diapositivas

a) Derivar casos de prueba para el ejemplo

b) Complementar con casos de prueba según análisis de valores límite

Pruebas de Caja Negra… Ejemplo

Pruebas de Caja Negra… Ejemplo

NúmeroClases de

EquivalenciaPropósito del Caso

Datos de Prueba

Condición de Entrada1

Condición de Entrada2

…Condición

de Entradan

Page 141: Calidad De Software Diapositivas

Herramientas para Pruebas• Tipos de Herramientas para Pruebas

– Record/Playback– Analizadores de Código – Analizadores de Cobertura (coverage analyzers)– Analizadores de Memoria– Herramientas de Carga/Desempeño– Herramientas para probar sitios Web– Otras – para administración de pruebas, documentación de

errores y control de configuración

• Links http://www.aptest.com/resources.html http://www.softwareqatest.com/