otro

Páginas: 5 (1224 palabras) Publicado: 3 de enero de 2015
▫ 50% a 75% [Hailpern & Santhanam, 2002]
▫ 30% a 50% [Hartman, 2002]

▫ Mercado de herramientas: $2,6 billion

• Coste por infraestructura inadecuada:
▫ Transporte y manufactura: $1,840 billion
▫ Servicios financiero: $3,342 billion

Introducción
• Costes de reparación en función del instante en el
ciclo de vida [Baziuk 1995]
▫ Requisitos: x 1
▫ Pruebas de sistema: x 90

▫Pruebas de instalación: x 90-440
▫ Pruebas de aceptación: x 440

▫ Operación y mantenimiento: x 880
• Fuente: The economic impact of inadequate infrastructure for
software testing. NIST Report – May 2002

Introducción
• No es una actividad secundaria:
▫ 30-40% del esfuerzo de desarrollo
▫ En aplicaciones críticas (p.ej.
nucleares),

control de vuelo, reactores

¡de 3 a 5 veces más queel resto de pasos juntos de la ingeniería
del software!
▫ El coste aproximado de los errores del software (bugs) para la
economía americana es el equivalente al 0,6% de su PIB, unos
60.000 millones de dólares

Definición de Pruebas de Software
• Definición 1:
▫ La prueba (testing) es el proceso de ejecutar un
programa con la intención de encontrar fallos [Glenford
J. Myers]
▫ Un buencaso de prueba es el que tiene alta
probabilidad de detectar un nuevo error
▫ Un caso de prueba con éxito es el que detecta un error
nuevo

• Definición 2 :
▫ Una investigación técnica del producto bajo prueba
…para proporcionar a los interesados (stakeholders)
…información relacionada con la calidad [Cem Kaner]

Proceso de Pruebas de Software
Actividades
Ciclo de Prueba
PlanificaciónDiseño de
las Pruebas

Configuración

Evaluación y
Cierre

Ejecución

Seguimiento y Control

Artefactos
Plan de
Pruebas

Casos de
Prueba

Reporte de
Prueba

Informe Final de
Pruebas

Principios de la pruebas de Software

▫ Empezar las pruebas en módulos individuales y
avanzar hasta probar el sistema entero.
▫ No son posibles las pruebas exhaustivas.
▫ Debenrealizarse por un equipo independiente al
equipo de desarrollo.

Principios de la pruebas de Software

▫ Hacer un seguimiento de las pruebas hasta los
requisitos del cliente.

▫ Plantear y diseñar las pruebas antes de generar
ningún código.
▫ El 80% de todos los errores se centran sólo en el 20%
de los módulos.

Pruebas exhaustivas
• Para probar completamente un sistema se
debenejercitar todos los caminos posibles del
programa a probar.
• Myers mostró en 1979 un programa que
contenía un loop y unos pocos if, este programa
tenia 100 trillones de caminos, un tester podía
probarlos todos en un billón de años.

Psicología de las pruebas
• El autor de un programa tiende a cometer los
mismos errores al probarlo.
• Debido a que es “SU” programa
inconscientemente tiende ahacer casos de
prueba que no hagan fallar al mismo.
• Puede llegar a comparar mal el resultado
esperado con el resultado obtenido debido al
deseo de que el programa pase las pruebas.

Niveles de Independencia
• Pruebas diseñadas por las personas que
escribieron el software.
• Pruebas diseñadas por personas distintas pero
del equipo de desarrollo.
• Pruebas diseñadas por personas de otrogrupo
de la organización (área de testing)
• Pruebas diseñadas por personas de otra
organización (outsourcing)

Estrategias de prueba
funcional
• Testing planificado
▫ Diseño de casos de
prueba
▫ Ejecución de pruebas,
incluso por otro tester

Pruebas

Casos de
Prueba

• Testing exploratorio
▫ Diseño y ejecución de
pruebas simultáneos

Producto

Técnicas de prueba
• CajaBlanca:
▫ Cuando se diseña la
prueba a partir del
conocimiento de la
estructura interna del
código
▫ Para ello se utiliza
algún criterio de
cobertura
▫ Problemas: No se
prueba la
especificación y no se
detectan ausencias

Caja blanca
Entrada

Salida

Técnicas de prueba
• Caja negra:
▫ Cuando se diseña la
prueba a partir del
conocimiento de la
especificación,
ignorando...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS