sqm

42
Gestión de la Calidad del Software

Upload: symple9

Post on 04-Jul-2015

421 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Sqm

Gestión de la Calidad del Software

Page 2: Sqm

Conocer los conceptos de la Ingeniera de Software y las diferentes técnicas para realizar pruebas.

Page 3: Sqm

Modelos del ciclo de vida del Software

Cascada

En V

Prototipo

Incremental

Espiral

Page 4: Sqm

Verificación y Validación

Principios

Técnicas

Estrategias

Criterios de terminación

Herramientas de pruebas

Page 5: Sqm
Page 6: Sqm

Una forma conveniente de dividir los proyectos es en fases.

Las actividades del ciclo de vida transforman las necesidades del usuario en un producto de software que satisfaga las necesidades.

Page 7: Sqm

Requerimientos Diseño Construcción Operación y Mantenimiento

Page 8: Sqm

Se traducen las necesidades del cliente en un documento formal, se describen los acuerdos a los que se ha llegado con el cliente.

Page 9: Sqm

Es una necesidad del usuario para resolver un problema o cumplir con un objetivo.

Es una condición que debe tener un sistema para cumplir con un contrato, especificación o estándar.

Page 10: Sqm

La salida de esta fase es el documento de especificación de requerimientos del software (SRS).

Page 11: Sqm

El SRS debe incluir la siguiente información:

Lo que el programa va hacer funcionalmente.

Formatos de entrada y de salida de los datos.

Excepciones, errores y desviaciones.

El entorno del sistema.

Page 12: Sqm

Esta actividad empieza cuando esta disponible el documento de requerimientos.

Es el primer paso para llegar a una solución. El diseño es el modelo para la solución. El documento de requerimientos y de diseño

en conjunto describen el problema y la organización de la solución.

Page 13: Sqm

La información que debe incluirse en el documento de diseño es:

Especificación de la estructura de datos.

Funciones y Algoritmos.

Modularizacion.

Especificación de las Interfaces.

Información especifica del proyecto.

Page 14: Sqm

El proceso del diseño de sistemas de software consta de dos niveles.

Diseño del sistema

Diseño detallado

Page 15: Sqm

Si los requisitos y el diseño se hacen correctamente, la codificación es sencilla, casi mecánica.

Page 16: Sqm

El primer paso en la verificación durante la fase de construcción consiste en determinar si el código es coherente con el diseño.

El código y el diseño deben exhibir la misma estructura modular y tener las mismas interfaces.

Page 17: Sqm

Las inspecciones del código o revisiones son una herramienta muy útil y pueden mejorar considerablemente la fiabilidad y reducir el esfuerzo durante las pruebas.

La ejecución real del programa utilizando datos de prueba debe llevarse a cabo de manera ordenada.

Page 18: Sqm

Las funciones comunes en esta etapa son:

Identificación y corrección de errores

Modificaciones

Mejoras para agregar capacidades de rendimiento

Page 19: Sqm

System

FeasibilityValidation

Req. Analysis &

Project Planning

Validation

System Design

Verification

Detailed Design

Verification

Coding

Verification

Testing and

Integration

Installation Operations and

Maintenance

Feasibility

Report

Requirements Document

And Project Plan

System Design

Document

Detailed

Design Document

Programs

Test Plan,

Test Report

And Manuals

Installation

Report

Page 20: Sqm

Es similar al modelo cascada, exceptuando que este considera las actividades de pruebas en fases previas del ciclo de vida.

Page 21: Sqm

Se consideran las siguientes pruebas para cada fase del desarrollo:

Requerimientos -> Pruebas de Aceptación

Diseño de alto nivel -> Pruebas de sistema/Integración

Diseño detallado -> Pruebas unitarias

Page 22: Sqm

Este modelo se utiliza generalmente para desarrollar una aplicación rápida del software antes o durante la fase de requerimientos.

El cliente utiliza el prototipo y proporciona información al equipo de desarrollo en cuanto a su fuerza y sus debilidades.

Page 23: Sqm

Este modelo permite construir el software en las etapas elementales, en cada etapa se añade funcionalidad.

Cada etapa consiste en el diseño, código, pruebas y entrega.

Page 24: Sqm

Este modelo ofrece una orientación a los riesgos durante el ciclo de vida.

Las actividades se organizan como un espiral que tiene muchos ciclos.

Page 25: Sqm

La verificación es la demostración de la consistencia, la integridad y la exactitud del software en cada etapa del desarrollo del ciclo de vida.

La validación es la determinación de la exactitud del programa con respecto a las necesidades del usuario.

Page 26: Sqm

Un tutorial es un método informal para la evaluación del software.

Es un pequeño grupo de casos de prueba.

Page 27: Sqm

En la inspección se utiliza una lista de verificación para encontrar los errores.

Si las listas de verificación han sido diseñadas adecuadamente los errores se pueden encontrar muy fácilmente.

Page 28: Sqm

Se verifica que el software cumpla con los requerimientos.

Se trata de la operación de un sistema bajo condiciones controladas y la evaluación de los resultados.

Page 29: Sqm

Falta de comunicación Complejidad del software Errores de programación Cambio de los requerimientos Presiones de tiempo Egos Código mal documentado Herramientas de desarrollo de software

Page 30: Sqm

El objetivo de una metodología de pruebas es reducir el proceso de pruebas exhaustivas a un proceso de pruebas finito.

Se debe tomar un subconjunto de datos del dominio.

La parte mas crucial es encontrar un conjunto de datos de prueba suficientes que cubra el dominio pero pequeño para su uso.

Page 31: Sqm

Las pruebas deben realizarse de conformidad con los planes y procedimientos.

Generar datos de prueba en todas las etapas. Desarrollar un medio para el calculo de los

valores esperados para los datos de prueba. Guardar, organizar y anotar las pruebas.

Page 32: Sqm

Los casos de pruebas no solo deben ser escritos para valores de entrada validos.

Concentrar las pruebas en los módulos que presentan mas errores.

Volver a realizar pruebas cuando se hagan modificaciones.

Page 33: Sqm

Pruebas de caja negra Pruebas de caja blanca

Page 34: Sqm

Son pruebas en el nivel mas simple para probar funciones particulares o módulos de código.

Generalmente las realiza el programador.

Page 35: Sqm

Se prueban las partes combinadas para determinar si funcionan correctamente juntas.

Las partes pueden se módulos de código, aplicaciones individuales, etc.

Page 36: Sqm

Se trata de probar continuamente la aplicación conforme se agregan nuevas funcionalidades.

Se realizan en segmentos pequeños.

Page 37: Sqm

Proporciona la garantía final de que el software cumple con todos los requisitos funcionales y de comportamiento.

Page 38: Sqm

Se verifica que todos los elementos del sistema completo (hardware, personas, bases de datos, software) funcionen correctamente y que se logre la función global del sistema.

Page 39: Sqm

Es la prueba final, basada en las especificaciones del usuario final o cliente durante un periodo de tiempo limitado.

A veces se realiza con datos reales.

Page 40: Sqm

Se realizan cuando se hacen cambios en el sistema vigente.

Todas las partes afectadas por las modificaciones deben ser probadas de nuevo.

Page 41: Sqm

Terminar cuando el tiempo programado para las pruebas expira.

Terminan cuando los casos de prueba ya no reportan errores.

Page 42: Sqm

Gestión de la Calidad del Software