UNIVERSIDAD DON BOSCO Facultad: Ingeniería Escuela: Computación CONTROL DE LECTURA No 3 PRUEBAS DE SOFTWARE INGENIERIA DE SOFTWARE ING. MILTON NARVAEZ INTEGRANTES HERNÁNDEZ DOÑO NORBERTO ANTONIO MARROQUIN MARROQUIN JOSE IVAN HD101249 MM101514 GRUPO TEORICO 01T CIUDADELA DON BOSCO 25 DE OCTUBRE 2013
INTRODUCCIÓN Durante el diseño e implementación de una aplicación software, encontramos un requisito fundamental que se debe tener en cuenta para la creación y ejecución de un software que cumpla con los requerimientos y expectativas esperadas por el cliente, esto se logra a través de diversas pruebas que nos provean de una visión del punto en que se encuentra el sistema como un todo o por medio de sus componentes, ya que el informe de las pruebas nos guiara para determinar los puntos clave que se deben mejorar para que el sistema sea óptimo. A través del capítulo software, podemos diferenciar y entender las diferentes pruebas que existen dentro de la ingeniería de software para la comprobación que la solución de software implementada cumple con los requerimientos para los cuales fue desarrollado, en este sentido existen pruebas que abarcan un cierto número de características que nos permiten evaluar el estado en el cual se encuentra nuestra aplicación actual.
ANALISIS DEL CAPITULO Con base a la lectura realizada del capítulo 20, software, del libro Ingeniería de Software, 6ta. Edición, del autor Ian Somerville. Podemos decir que existen dos tipos de pruebas que se deben de tomar en cuenta para verificar la fiabilidad de un sistema, y cada una de estas pruebas está compuesta por diferentes fases, las cuales serán descritas a continuación. 1. l sistema Son las que incluyen en algunos casos dos o más componentes que desarrollan funciones del sistema o características de este, estas pruebas son las encargadas de estudiar un incremento del software que será brindado a los clientes. Este proceso está basado en el modelo cascada. Las fases por las cuales están compuestas estas pruebas son: iteración. Son las que se llevan a cabo cuando el personal de pruebas obtiene el acceso para conocer cuál es el código fuente del sistema. Además dentro de estas se encuentran los defectos que posee el sistema. entrega. Se realizan cuando se prueba una versión del sistema la cual podría ser entregada a los usuarios. Y es acá donde el equipo de pruebas se encarga de verificar si funciona o no correctamente el sistema. 2. componentes Estas se realizan cuando se estudian individualmente los componentes del sistema. El objetivo de estas es encontrar los defectos que tienen dichos componentes, los responsables de las pruebas de componentes son las personas encargadas de desarrollarlos. Y dentro de estas podemos encontrar las pruebas de interfaces. Y los procedimientos que se deben de supervisar dentro de estas es que la interfaz del software cumpla con el comportamiento especificado por los clientes. Las pruebas de defectos son las que tienen como objetivo principal descubrir los defectos del sistema y verificar si el comportamiento de este es incorrecto. Estas están íntimamente relacionadas con la eliminación de todos los tipos de compartimientos indeseados como por ejemplo: las caídas de sistemas, cálculos incorrectos, etc. Por lo tanto las pruebas de defectos son las que consisten en encontrar y dar a conocer las fallas que se están dando dentro del sistema, estas pruebas son de mucha ayuda debido a que a partir de la información que estas brindan los desarrolladores pueden corregir los defectos que posee actualmente el sistema.
Dentro de las pruebas de integración existen ciertos procesos que nos ayudan a realizar de mejor manera estas pruebas dichos procesos son los siguientes: Procesos de integración descendente. Son los que se realizan algunas veces, ya que como primer paso se crea una base (esqueleto) que servirá para el desarrollo del sistema y luego se le deben de añadir los distintos componentes que lo conformaran. Procesos de integración ascendente. Estos consisten en que se puede llevar a cabo primeramente se pueden integrar los componentes estructurales que brindan algunos servicios comunes, como lo son el acceso a las bases de datos y las redes, y luego se pueden agregar los componentes funcionales del sistema. La metodología que se debe de implementar para realizar las pruebas orientadas a objetos es la que se describe a continuación: Se deben de desarrollar pruebas a diferentes componentes como los son: Funciones individuales o métodos dentro de un objeto. Son el tipo más sencillo de componentes y las pruebas que se implementan pertenecen a un conjunto de llamadas a estas mismas rutinas con el cuidado que cuando se realicen los parámetros de entrada se han distintos. Clases de objetos que poseen varios atributos y métodos. Dentro de las pruebas de objetos se deben de incluir: las pruebas aisladas de todas las operaciones asociadas con el objeto, la asignación y consulta de todos los atributos asociados con el objeto y ejecutar el objeto en todos sus posibles estados. Es decir que se deben de realizar simulaciones en todos los eventos que generan un cambio de estado en el objeto. Componentes compuestos por diferentes objetos o funciones. Dichos componentes deben poseer una interfaz establecida la cual servirá para acceder a la funcionalidad del sistema.
Integración Integración Ascendente Integración descendente Investigación de las funcionalidades del sistema como un todo o a partir de sus componentes que con lleven a determinar el grado de satisfacción de los interesados y defectos del software. Sistema Entrega rendimiento Implican a los clientes Aceptación Los requerimientos son alcanzados a través de un perfil operacional PRUEBAS DE SOFTWARE Se ejecutan Componentes Interfaces funcionabilidad usabilidad Objetivos Diseño de Caso de Pruebas Satisfacción de los requerimientos por parte del cliente y el desarrollador. Encontrar defectos en el software. Pruebas basadas en requerimientos particiones Pruebas estructurales Prueba de caminos Automatización de las pruebas Herramientas Gestor de pruebas Datos de pruebas Informes Simulador
CONCLUSIONES Podemos afirmar que las pruebas de software son de mucha importancia y ayuda, ya que por medio de estas los equipos de desarrollo de sistemas obtienen información clara y confiable sobre el estado actual que posee el sistema al cual se le están realizando dichas pruebas. Con base a la información brindada por las distintas pruebas de software los desarrolladores pueden conocer los defectos o errores que tiene el sistema y luego proceder a corregirlos. Con la lectura que se realizó se logró conocer y entender cuál es el objetivo principal que poseen las pruebas de defecto. También podemos concluir que las pruebas de software están compuestas por distintas fases, que contribuyen a que el estudio del sistema sea más completo y al mismo tiempo seguro. Conocimos Procesos de integración descendente y Procesos de integración ascendente son los procesos que se deben de tomar en cuenta para realizar las pruebas de integración de un sistema. Además se logró comprender cuál es la metodología que como desarrolladores de software tenemos que seguir para implementar de una manera correcta, las pruebas que están orientadas a objetos.