sqm
TRANSCRIPT
![Page 1: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/1.jpg)
Gestión de la Calidad del Software
![Page 2: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/2.jpg)
Conocer los conceptos de la Ingeniera de Software y las diferentes técnicas para realizar pruebas.
![Page 3: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/3.jpg)
Modelos del ciclo de vida del Software
Cascada
En V
Prototipo
Incremental
Espiral
![Page 4: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/4.jpg)
Verificación y Validación
Principios
Técnicas
Estrategias
Criterios de terminación
Herramientas de pruebas
![Page 5: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/5.jpg)
![Page 6: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/6.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/7.jpg)
Requerimientos Diseño Construcción Operación y Mantenimiento
![Page 8: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/9.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/10.jpg)
La salida de esta fase es el documento de especificación de requerimientos del software (SRS).
![Page 11: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/11.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/14.jpg)
El proceso del diseño de sistemas de software consta de dos niveles.
Diseño del sistema
Diseño detallado
![Page 15: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/15.jpg)
Si los requisitos y el diseño se hacen correctamente, la codificación es sencilla, casi mecánica.
![Page 16: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/18.jpg)
Las funciones comunes en esta etapa son:
Identificación y corrección de errores
Modificaciones
Mejoras para agregar capacidades de rendimiento
![Page 19: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/20.jpg)
Es similar al modelo cascada, exceptuando que este considera las actividades de pruebas en fases previas del ciclo de vida.
![Page 21: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/24.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/25.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/26.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/27.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/28.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/29.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/30.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/31.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/32.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/33.jpg)
Pruebas de caja negra Pruebas de caja blanca
![Page 34: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/34.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/35.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/36.jpg)
Se trata de probar continuamente la aplicación conforme se agregan nuevas funcionalidades.
Se realizan en segmentos pequeños.
![Page 37: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/37.jpg)
Proporciona la garantía final de que el software cumple con todos los requisitos funcionales y de comportamiento.
![Page 38: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/38.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/39.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/40.jpg)
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](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/41.jpg)
Terminar cuando el tiempo programado para las pruebas expira.
Terminan cuando los casos de prueba ya no reportan errores.
![Page 42: Sqm](https://reader033.vdocuments.co/reader033/viewer/2022042816/559749271a28ab3b1f8b4682/html5/thumbnails/42.jpg)
Gestión de la Calidad del Software