jueves, 5 de febrero de 2015

3er Parcial | 1ra Tarea | Pruebas de Integración y de Sistemas


Introducción:

A continuación veremos de que se tratan las pruebas de integración y de sistemas, que son parte de todas las pruebas necesarias en un proyecto durante la etapa final de desarrollo.

Desarrollo:

  • Pruebas de Integración:

     Las pruebas de integración prueban grupos de unidades relacionadas, verifica su operación conjunta (que funcionen correctamente cuando se integren), de manera que lo que se tiende a ir probando es la arquitectura software.
Durante la integración, las técnicas que más se utilizan son las de caja negra, aunque se pueden llevar a cabo algunas pruebas de caja blanca para asegurar que se cubren los principales flujos de comunicación entre las unidades (Énfasis en la interacción y no en el funcionamiento individual).
En el contexto de la orientación a objetos, las pruebas de integración pretenden asegurar que los mensajes que fluyen desde los objetos de una clase o componente se envían y reciben en el orden adecuado en el objeto receptor, así como que producen en éste los cambios de estado que se esperaban.

     Estos tipos de pruebas identifican:

  1. Problemas de interfaces entre unidades.
  2. Falta de coherencia entre lo que se espera de una unidad y lo que se esta ofreciendo.

  • Pruebas de Sistemas:
     Las pruebas de sistema tienen por objetivo comprobar que el sistema, que ha superado las pruebas de integración, se comporta correctamente con su entorno (otras máquinas, otro hardware, redes, fuentes reales de información, etc.).

Bajo este nivel de pruebas encontramos varios subniveles:

  1. Pruebas de recuperación. Consisten en forzar el fallo del software y comprobar que la recuperación se lleva a cabo de manera correcta, devolviendo al sistema a un estado coherente.
  2. Pruebas de seguridad. Intentan verificar que los mecanismos de protección incorporados al sistema lo protegerán, de hecho, de penetraciones inadecuadas.  
  3. Pruebas de resistencia. Estas pruebas están diseñadas para que el sistema requiera recursos en cantidad, frecuencia o volumen anormales. La idea es intentar que el sistema se venga abajo por la excesiva tensión a la que se lo somete.
  4. Pruebas de rendimiento. En sistemas de tiempo real o sistemas empotrados, es inaceptable que el software proporcione las funciones requeridas fuera de las condiciones de rendimiento exigidas.



Conclusión:

    Esta vez, vimos 2 tipos nuevos de pruebas, las pruebas de integración (que son las relacionadas al correcto funcionamiento de unidades entre si), y las pruebas de sistema (que con las referentes a la capacidad de sobrecarga, velocidad, seguridad, etc. de nuestro sistema), estas 2 siendo muy importantes para garantizar el buen funcionamiento de el sistema frente a diferentes situaciones.

Bibliografía:

Fernández Peña, Juan (2011);Ingenieria de Software I Pruebas de Integración; Recuperado de:
http://www.uv.mx/personal/jfernandez/files/2012/11/PruebaIntegracionEstructurada.pdf

Polo Usaola, Macario(); Pruebas de Sistemas de Información; Recuperado de:
http://www.inf-cr.uclm.es/www/mpolo/asig/0708/phd/apuntesDoctorado.pdf

Fernández Peña, Juan (); Capítulo 6 Pruebas de Sistema; Recuperado de:
http://www.uv.mx/personal/jfernandez/files/2010/07/Pruebas-de-Sistema.pdf

viernes, 16 de enero de 2015

2do Parcial | 2da Tarea | Pruebas de caja blanca y negra

Introducción:
     A continuación se verá para que se utilizan las pruebas de caja blanca y caja negra, asi como la diferencia que hay entre ellas.

Desarrollo:

  • Prueba de caja blanca:  "En programación se denomina cajas blancas a un tipo de pruebas de software que se realiza sobre las funciones internas de un módulo". Son pruebas estructurales, estas pruebas se basan en lo que esta codificado (la correcta lógica) y que se cumpla lo que el diseño de bajo nivel indica, a diferencia de las pruebas de caja negra, esta no necesita conocer los requerimientos.
  • Prueba de caja negra: Estas pruebas se basan en los requerimientos funcionales, para llevarlas a cabo, se insertan un conjunto de datos de entrada y se observan las salidas para comparar los resultados con los requerimientos anteriormente mencionados. Algunos ejemplos de estas pruebas pueden ser las pruebas de rendimiento del sistema, integridad de la base de datos, etc.
         A continuación se puede observar un ejemplo de la diferencia clara que hay entre una prueba de          caja blanca y una prueba de caja negra.




Conclusión:
     Estas pruebas son necesarias en un software para asegurar su calidad, además de que con estas se pueden corregir errores de programación y/o errores externos al sistema que interfieran con su buen funcionamiento.

Bibliografía:
María Luna, Jose (2009); Pruebas de Caja Negra y Blanca; Recuperado de;
http://ingenierogestion.blogspot.mx/2009/06/pruebas-de-caja-negra-y-caja-blanca.html

Jiménez, Omar; Pruebas de caja Blanca y Negra; Recuperado de;
http://es.slideshare.net/rinconsete/pruebas-de-caja-blanca-y-negra

Molano Castellanos, Angela (2008); Pruebas del Software "caja blanca y caja negra"; Recuperado de;
http://angelmolsoftware.blogspot.mx/2008/11/pruebas-del-software-caja-blanca-y-caja.html

2do Parcial | 1ra Tarea | Diagrama de Flujo y de Grafos


Diagrama de Flujo:

                        Diagrama de Grafos: