Está en la página 1de 58

Plan de estudios ISTQB:

Nivel Fundamentos
Temario

1. INTRODUCCIÓN

2. FUNDAMENTOS DE PRUEBAS

3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE

4. TÉCNICAS ESTÁTICAS

5. TÉCNICAS DE DISEÑO DE PRUEBAS

6. GESTIÓN DE PRUEBAS

7. HERRAMIENTAS DE PRUEBAS
Temario

1. INTRODUCCIÓN

2. FUNDAMENTOS DE PRUEBAS

3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL SOFTWARE

4. TÉCNICAS ESTÁTICAS

5. TÉCNICAS DE DISEÑO DE PRUEBAS

6. GESTIÓN DE PRUEBAS

7. HERRAMIENTAS DE PRUEBAS
Temario

3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA


DEL SOFTWARE
3.1 Modelos de Desarrollo Software
3.2 Niveles de Pruebas
3.3 Tipos de Pruebas
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
IMPORTANTE:
 El proceso de pruebas no es proceso
aislado
 Las actividades de pruebas están
asociadas a actividades de desarrollo de
software
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Ciclo de vida del software:
El término ciclo de vida del software describe el
desarrollo de software, desde la fase inicial hasta la fase
final.
Requiere validar el desarrollo de la aplicación
Garantizar que el software cumpla los requisitos
para la aplicación
Verificar los procedimientos
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Ciclo de vida del software:
Fases:
 Definición de objetivos: definir el resultado del proyecto y
su papel en la estrategia global.
 Análisis de los requisitos y su viabilidad: recopilar,
examinar y formular los requisitos del cliente y examinar
cualquier restricción que se pueda aplicar.
 Diseño general: requisitos generales de la arquitectura de la
aplicación.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Ciclo de vida del software:
Fases (II):
 Diseño en detalle: definición precisa de cada subconjunto
de la aplicación.
 Programación (programación e implementación): es la
implementación de un lenguaje de programación para crear
las funciones definidas durante la etapa de diseño.
 Prueba de unidad: prueba individual de cada subconjunto
de la aplicación para garantizar que se implementaron de
acuerdo con las especificaciones.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Ciclo de vida del software:
Fases (III):
 Integración: para garantizar que los diferentes módulos se
integren con la aplicación. Éste es el propósito de la prueba
de integración que está cuidadosamente documentada.
 Prueba beta (o validación), para garantizar que el software
cumple con las especificaciones originales.
 Documentación: sirve para documentar información
necesaria para los usuarios del software y para desarrollos
futuros.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Ciclo de vida del software:
Fases (IV):
 Implementación
 Mantenimiento: para todos los procedimientos correctivos
(mantenimiento correctivo) y las actualizaciones
secundarias del software (mantenimiento continuo).
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo en cascada
Modelo de desarrollo secuencial (Modelo V)
Modelo de desarrollo iterativo-incremental
Pruebas en un modelo de ciclo de vida
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo en cascada
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo en cascada
 Se define como una secuencia de fases en la que al
final de cada una de ellas se reúne la documentación
para garantizar que cumple las especificaciones y los
requisitos antes de pasar a la fase siguiente
 Ejemplos:
 Utilizado en los sistemas gubernamentales de gran
tamaño, en especial en el Departamento de Defensa de
los Estados Unidos (DOD).
 Es utilizado en la NASA.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo en cascada
Ventajas:
 De partida se cuenta con los requerimientos muy completos
y consistentes.
 Disminuye el efecto bola de nieve al reducir el
mantenimiento considerando que se tienen unas
especificaciones completas y correctas.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo en cascada
Desventajas
 El tiempo que se invierte en crear el prototipo incluyendo un
costo adicional de la inversión debido a que supone es la
creación de un desechable.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
 La corriente de especificación (parte izquierda, Project
definition) consiste en:
 Conceptos de operaciones: que debe hacer el sistema a
grandes rasgos.
 Requisitos del sistema y arquitectura del mismo.
 Diseño detallado.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
 La corriente de pruebas (parte derecha, Project test
and integration) consiste en:
 Integración de las distintas partes, prueba y verificación
de las mismas.
 Verificación y validación del sistema en conjunto.
 Mantenimiento del sistema.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
Se basa en cuatro niveles de pruebas:
Pruebas de componente
Pruebas de integración
Pruebas de sistema
Pruebas de aceptación
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
 En la práctica, un modelo secuencial puede tener
más, menos o diferentes niveles de desarrollo y
pruebas en función del proyecto y de producto de
software.
 Los productos de trabajo de software que se elaboran
en la fase de desarrollo a menudo conforman la base
de las pruebas en uno o más niveles de pruebas
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
Objetivos:
 Minimización de los riesgos del proyecto:
Mejora la transparencia del proyecto y control del
proyecto, especificando los enfoques estandarizados,
describe los resultados correspondientes y funciones de
responsabilidad. Permite una detección temprana de las
desviaciones y los riesgos y mejora la gestión de
procesos, reduciendo así los riesgos del proyecto.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
Objetivos (II):
 Mejora y Garantía de Calidad
Como un modelo de proceso estándar, asegura que los
resultados que se proporcionan sean completos y
contengan la calidad deseada. Los resultados
provisionales definidos se puede comprobar en una fase
temprana. La uniformidad en el contenido del producto
mejora la legibilidad, comprensibilidad y verificabilidad.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
Objetivos (III):
 Reducción de los gastos totales durante todo el
proyecto y sistema de Ciclo de Vida
El esfuerzo para el desarrollo, producción, operación y
mantenimiento de un sistema puede ser calculado,
estimado y controlado de manera transparente mediante la
aplicación de un modelo de procesos estandarizados.
Reduciendo la dependencia en los proveedores y el
esfuerzo para las siguientes actividades y proyectos.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo secuencial (Modelo V)
Objetivos (IV):
 Mejora de la comunicación
La descripción estandarizada y uniforme de todos los
elementos pertinentes y términos es la base para la
comprensión mutua entre todos los inversionistas. De este
modo, se reduce la pérdida por fricción entre el usuario,
comprador, proveedor y desarrollador.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo iterativo-incremental
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo iterativo-incremental
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo iterativo-incremental
 Se basa en establecer requisitos, diseñar, establecer y
probar un sistema realizando ciclos de desarrollo más
cortos
 El sistema resultante producido por iteración puede
ser probado en distintos niveles de prueba durante
cada iteración
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo iterativo-incremental
 Un incremento, sumado a otros previamente
desarrollados, constituye un sistema parcial
creciente, que también debe ser probado
 Después de la primera, las pruebas de regresión
adquieren importancia con cada iteración
 Los procesos de verificación y validación pueden
llevarse a cabo para cada incremento
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Modelo de desarrollo iterativo-incremental
 Se suele utilizar en proyectos en los que los
requerimientos no están claros por parte del usuario
 En aplicaciones medianas o grandes, en las que no es
necesario que todo esté operativo desde el principio
 Ejemplo: Cuando una empresa quiere migrar sus
aplicaciones a otra arquitectura, y desea hacerlo de
forma escalonada
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Pruebas en un modelo de ciclo de vida
Características de las pruebas:
Actividad de prueba por cada actividad de desarrollo
Cada nivel de prueba tiene sus objetivos de prueba
Análisis y diseño de pruebas durante la actividad de
desarrollo correspondiente
 Probadores implicados lo antes posible
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.1 Modelos de Desarrollo Software
Pruebas en un modelo de ciclo de vida
Los niveles de prueba pueden combinarse o
reorganizarse en función de la naturaleza o de la
arquitectura del sistema
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Distinguimos entre los siguientes modelos de pruebas:
Pruebas de componente
Pruebas de integración
Pruebas de sistema
Pruebas de aceptación
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de componente
 Las pruebas de componente (también llamadas de unidad o
módulo) tienen como objetivo localizar defectos y
comprobar el funcionamiento de módulos de software,
programas, objetos, clases, etc…
 Pueden realizarse de manera independiente del resto del
sistema, en función del contexto del ciclo de vida de
desarrollo y del sistema.
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de componente
Bases:
Requisitos de componentes
Diseño de detalle
Código

Objetos de prueba:
Componentes
Programas
Conversión de datos/programas de migración
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de componente
 Pueden incluir pruebas de funcionalidad y características no
funcionales específicas o pruebas de robustez
 Se llevan a cabo mediante el acceso al código objeto de las
pruebas y con un soporte de entorno de desarrollo
 Se elaboran los casos de prueba antes de codificarlos
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de integración
 Las pruebas de integración se ocupan de probar las
interfaces entre los componentes, las interacciones con
distintas partes de un mismo sistema (como el sistema
operativo, sistema de archivos, el hardware o las
interacciones con otros sistemas)
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de integración
Bases:
Diseño de software, arquitectura y sistema
Flujos de trabajo
Casos de uso

Objetos de prueba:
Interfaces
Infraestructura
Implementación de bases de datos de subsistemas
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de integración
Puede haber más de un nivel de pruebas de integración,
en función del tamaño de los objetos de las pruebas:
 Pruebas de integración de componentes
 Pruebas de integración de sistemas
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de integración
 Cuanto más amplios sea el alcance de la integración,
más difícil será aislar los fallos de una componente o
sistema específico
 Normalmente la integración será incremental
 En cada fase de integración, los probadores deben
centrarse en la propia integración
 Los probadores deben entender la arquitectura y
modificar la planificación de la integración si procede
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de sistema
 Las pruebas de sistemas se refieren al comportamiento de
todo un sistema/producto
 El entorno de pruebas debe coincidir en la máxima medida
al entorno de producción final
 Deben estudiar requisitos funcionales y no funcionales
 Los probadores estarán capacitados para enfrentarse a
requisitos incompletos o mal documentados
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de sistema
Bases:
Especificaciones de requisitos de sistema y software
Casos de uso y especificaciones funcionales
Informes de análisis y riesgos

Objetos de prueba:
Manuales: de sistema, de usuario y de funcionamiento
Configuración del sistema
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de sistema
Es frecuente en proyectos de mediana y gran
envergadura, que las pruebas de sistema sean
acometidas por equipos de pruebas independientes
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de aceptación
 Las pruebas de aceptación tienen como objetivo principal
generar confianza en el sistema, partes del sistema o
características específicas no funcionales del sistema
 Responsabilidad compartida con clientes y usuarios
 El objetivo principal no es la localización de defectos
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de aceptación
Bases:
Requisitos de usuario y sistema
Casos de uso y procesos de negocio
Informes de análisis de riesgos

Objetos de prueba:
Procesos: de negocio, operativos y de mantenimiento
Procedimientos de usuario
Formularios e informes
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.2 Niveles de Pruebas
Pruebas de aceptación
 No constituyen necesariamente el último nivel de prueba
 Pueden darse en distintos momentos del ciclo de vida
 Pueden adoptar entre otras, las siguientes formas:
 Pruebas de aceptación de usuario
 Pruebas operativas de aceptación
 Pruebas de aceptación contractual y normativa
 Pruebas alfa y beta
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Un tipo de prueba se centra en un objetivo de prueba en
particular, que puede ser:
Una función a realizar por el software
Una característica de calidad no funcional
La estructura o arquitectura del software o sistema
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
 Pruebas de funciones (funcionales)
 Pruebas de características no funcionales del software
(no funcionales)
 Pruebas de estructura/arquitectura del software
(estructurales)
 Pruebas asociadas a cambios (repetición y regresión)
 Pruebas de mantenimiento
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de funciones (funcionales)
Las funciones son todo lo que hace el sistema,
subsistema o componente
Caja negra
Las funciones pueden describirse en:
Especificación de requisitos
Casos de uso
Especificación funcional
Pueden no estar documentados
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de funciones (funcionales)
 Se basan en funciones y prestaciones, y en su
interoperatividad con otros sistemas
 Pueden llevarse a cabo en todos niveles de pruebas
 Tienen en cuenta el comportamiento externo del
software
 Ejemplo: Pruebas de seguridad
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de características no funcionales del software (no
funcionales)
 Hace referencia a las pruebas necesarias para medir
las características de los sistemas y software, que
pueden cuantificarse, tales como tiempos de
respuesta en caso de pruebas de rendimiento
 Se refieren a como funciona el sistema
 Pueden ejecutarse a todos los niveles de prueba
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de características no funcionales del software (no
funcionales)
Incluyen
Pruebas de rendimiento
Pruebas de carga y de estrés
Pruebas de usabilidad
Pruebas de mantenibilidad
Pruebas de portabilidad
Pruebas de fiabilidad
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de estructura/arquitectura del software
(estructurales)
 Se realiza sobre las funciones internas de un módulo
 Caja blanca
 Son las más adecuadas para medir la exhaustividad
de las pruebas
 Pueden realizarse en todos los niveles de pruebas
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas asociadas a cambios (repetición y regresión)
 Una vez detectado y corregido el defecto, el software
debe volver a probarse para confirmar que el defecto
ha sido corregido con éxito
 Después de que desarrollo realice la depuración
 Son la prueba reiterada de un programa ya probado
 Deben ser repetibles
 Pueden realizarse en todos los niveles de prueba
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas asociadas a cambios (repetición y regresión)
 El alcance depende del riesgo
 Incluyen
 Pruebas funcionales
 Pruebas no funcionales
 Pruebas estructurales
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de mantenimiento
Son las pruebas destinadas a probar:
Modificaciones de mejora planificadas
Modificaciones correctivas y de emergencia
Modificaciones de entorno
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de mantenimiento
 La planificación anticipada de versiones es crucial
para el éxito de estas pruebas
 Dos subtipos:
 Versiones planificadas
 Arreglos urgentes
 En caso de migración, incluirán pruebas en el nuevo
entorno
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
3.3 Tipos de Pruebas
Pruebas de mantenimiento
 Incluyen pruebas de regresión ampliadas a partes del
sistema que no han sido modificadas
 Pueden realizarse en todos niveles de prueba
 Pueden realizarse en todos o en cualquier tipo de
prueba
 Análisis de impacto
PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL
SOFTWARE
Ejercicios

 Modelos de desarrollo del software: nombrar y definir


características
 Nombrar y comparar los distintos niveles de pruebas
 Nombrar y comparar los distintos tipos de pruebas

También podría gustarte