Unidad 5: Implementación
5.1 Implementación.
5.2 Entradas para pruebas.
5.3 Plan de pruebas (estrategia de prueba, ambientes, test team, atacar y asegurar
regresión).
5.4 Ejecución de tipos generales de pruebas.
5.5 Caja negra y caja blanca.
5.6 Otros tipos de test.
5.7 GUI, Funcionalidad, Performance, entre otros.
5.7.1 Documentación (técnica y de usuario).
5.7.2 Seguridad.
5.7.3 Diseño de las pruebas.
1.1
Implementación.
Desarrollar un plan de implementación
del proyecto Después del diseño detallado del proyecto, el paso siguiente es
elaborar un plan de implementación del mismo. Idealmente, el plan de
implementación debe incorporar todos los aspectos de la implementación del
proyecto, incluyendo las estrategias descritas para lograr sus resultados. El
proceso de elaboración de un plan de implementación de un proyecto es
esencialmente el mismo que el de un proyecto de desarrollo.
1.2 Entradas para pruebas.
Clase de
equivalencia
Un conjunto de datos de entrada que definen estados válidos
y no válidos del sistema.
•
Clase
válida: genera un valor esperado –Clase no válida: genera un valor inesperado
Se obtienen a partir de las condiciones de entrada descritas en las
especificaciones.
•
Cada
caso debe contemplar el máximo número de clases de equivalencia válidas.
•
Generar
suficientes casos para cubrir todas las clases.
•
Generar
un caso de prueba por cada clase de equivalencia no válida que haya sido
identificada
5.3 Plan de pruebas (estrategia de prueba, ambientes, test team,
atacar y asegurar
regresión).
´
Estrategias
de prueba del software
´
Proporcionan
un plano o guía para el desarrollador del software, para la organización de
control de calidad y para el cliente.
´
Es
una guía que describe los pasos a llevar a cabo como parte de la prueba, cuándo
se deben planificar y realizar esos pasos, y cuánto esfuerzo, tiempo y recursos
se van a requerir. Por lo tanto, cualquier estrategia de prueba debe incorporar
la planificación de la prueba, el diseño de los casos de prueba, la ejecución
de las pruebas y la agrupación y evaluación de los datos resultantes.
Pruebas
Para llevar a cabo un caso de prueba es
necesario definir las precondiciones y post condiciones, identificar unos
valores de entrada, y conocer el comportamiento que debería tener el sistema
ante dichos valores.
Durante el proceso de pruebas es importante
cubrir los siguientes objetivos:
´
Establecer
la participación de los roles implicados.
´
Definir
el alcance, momento y características de las diferentes pruebas a realizar.
´
Definir
los contenidos de los manuales de usuario y de administración.
´
Establecer
los requisitos necesarios para la aceptación del producto antes de su promoción
a la siguiente fase del ciclo de vida de desarrollo.
´
Definir
el ciclo de vida de gestión de un caso de prueba.
´
Presentar
técnicas y estrategias aplicables en la elaboración y ejecución de las ´ pruebas del software.
Un enfoque estratégico para la prueba
del software Generalmente se proporciona una plantilla para la prueba con las
siguientes características generales:
´
La
prueba comienza en el nivel de módulo y trabaja "hacia fuera", hacia
la integración de todo el sistema basado en computadora. Se usa el enfoque
“bottom-up”.
´
En
diferentes momentos se utilizarán diferentes técnicas de prueba
´
La
prueba la lleva a cabo el que desarrolla el software y (para grandes proyectos)
un grupo de prueba independiente.
´
La
prueba y la depuración son actividades diferentes, pero la depuración se puede
incluir en cualquier estrategia de prueba.
Etapas de un plan de pruebas a.
especificar los objetivos de las pruebas. b. determinar con precisión los
criterios a seguir en su realización. c. Integrar al personal y los elementos
necesarios para el desarrollo de las pruebas. d. Aplicación de la prueba o
pruebas según los criterios seleccionados. e. evaluación de los resultados y
consideraciones para llevar a cabo una nueva serie de pruebas.
ASPECTOS A TENER EN CUENTA EN LA
APLICACIÓN DE UNA PRUEBA
´
Operatividad. Cuanto mejor funcione el software, más
eficientemente se puede probar. Ningún error debe bloquear la ejecución de las
pruebas.
´
Observabilidad. Lo que ves es lo que pruebas. Un
resultado incorrecto se identifica fácilmente.
´
Controlabilidad. Cuánto mejor podamos controlar el
software más se puede automatizar y optimizar. Las pruebas pueden
especificarse, automatizarse y reproducirse convenientemente.
Capacidad de descomposición. Controlando
el ámbito de las pruebas podemos aislar más rápidamente los problemas y llevar
a cabo mejores pruebas de regresión. Los módulos de software se pueden probar
independientemente.
´
Simplicidad.
Cuanto menos haya que probar más rápidamente podemos probarlo.
´
Estabilidad.
Cuánto menos cambios haya, menos interrupciones a las pruebas.
´
Facilidad
de comprensión. Cuanta más información tengamos, mejores serán las pruebas.
´
Sistema
de pruebas
´
Los
cuatro componentes principales de un sistema de pruebas son:
´
Equipo
de pruebas: los ingenieros de pruebas, técnicos de pruebas y el responsable de
las pruebas, los cuales tienen habilidades, experiencia y trabajan para
diseñar, implementar, y usar componentes de pruebas.
´
-
Recursos de prueba: casos de prueba, datos de prueba, herramientas de pruebas,
´
y
otro material de desarrollo.
´
Sistema
de prueba
´
Procesos
de prueba: condiciones informales, formales, no documentadas y documentadas en las
que se realiza el trabajo de pruebas.
´
Entorno
de pruebas: hardware, software, infraestructura de redes, oficina y
laboratorio, y otros elementos que formen el lugar de trabajo.
5.5 Caja negra y caja blanca.
CAJA
BLANCA: Tipos de
pruebas de software que se realiza sobre las funciones internas de un módulo.
«si queremos saber cómo funciona internamente un elemento de un sistema se
utiliza el termino caja blanca.»
CAJA
NEGRA: Así como las
pruebas de caja negra ejercitan los requisitos funcionales desde el exterior
del módulo, las de caja blanca están dirigidas a las funciones internas. «si
queremos es estudiar la interacción de dicho modulo con los demás módulos del
sistema se utiliza el termino caja negra»
De una caja negra nos interesará su
forma de interactuar con el medio que le rodea (en ocasiones, otros elementos
que también podrían ser cajas negras) entendiendo qué es lo que hace, pero sin dar
importancia a cómo lo hace.
Por tanto, de una caja negra deben estar
muy bien definidas sus entradas y salidas, es decir, su interfaz; en cambio, no
se precisa definir ni conocer los detalles internos de su funcionamiento.
Las pruebas de caja blanca se llevan a
cabo en primer lugar, sobre un módulo concreto, para luego realizar las de caja
negra sobre varios subsistemas (integración).
TECNICAS
USADAS: Entre las
técnicas usadas se encuentran
´
La
cobertura de caminos (pruebas que hagan que se recorran todos los posibles
caminos de ejecución),
´
Pruebas
sobre las expresiones lógicoaritméticas, pruebas de camino de datos
(definición-uso de variables),
´
Comprobación
de bucles (se verifican los bucles para 0,1 y n iteraciones, y luego para las
iteraciones máximas, máximas menos uno y más uno.
Pruebas de caja negra
CARACTERISTICAS:
´
(Pressman)
se centran en los requisitos funcionales
´
Pruebas
sobre la interfaz del software.
´
Enfocada
en las entradas y salidas y no en el código fuente.
5.6 Otros tipos de test.
Pruebas
(test): «una actividad
en la cual un sistema o uno de sus componentes se ejecuta en circunstancias
previamente especificadas, los resultados se observan y registran y se realiza
una evaluación de algún aspecto»
Caso
de prueba (test case):
«un conjunto de entradas, condiciones de ejecución y resultados esperados
desarrollados para un objetivo particular»
Defecto
(defect, fault, «bug»):
«un defecto en el software como, por ejemplo, un proceso, una definición de
datos o un paso de procesamiento incorrectos en un programa»
5.7 GUI, Funcionalidad, Performance, entre otros.
Interfaz de Usuario
La interfaz de usuario es el medio con
que el usuario puede comunicarse con una máquina, un equipo o una computadora,
y comprende todos los puntos de contacto entre el usuario y el equipo.
Es un programa informático que actúa de
interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para
representar la información y acciones disponibles en la interfaz. Su principal
uso, consiste en proporcionar un entorno visual sencillo para permitir la comunicación
con el sistema operativo de una máquina o computador. GUI’s y Zooming user
Interface
GUI's y Zooming user interface Los tipos
de GUIs que se encuentran en juegos de computadora, y los GUIs avanzados
basados en realidad virtual, se usan con frecuencia en tareas de investigación.
La interfaz de enfoque del usuario o ZUI (Zooming User Interface), que es un
adelanto lógico de las GUI, mezclando 3D con 2D. Podría expresarse como "2
dimensiones y media en objetos vectoriales de una dimensión".
Interfaz de usuario de Pantalla táctil
Los "GUIs de uso específico."
Un ejemplo de un GUI de uso específico es la ahora familiar touchscreen o
pantalla táctil (pantalla que al ser tocada efectúa los comandos del ratón en
el software).
Interfaz natural de Usuario
Las
NUI naturales son aquellas en las que se interactúa con un sistema, aplicación,
etc., sin utilizar dispositivos de entrada como ratón, teclado, lápiz óptico,
etc. En lugar de éstos se utilizan las manos o las yemas de los dedos.
Pasos para el diseño de una interfaz
´
Principios
de UCD
´
Análisis
del modelo ISO 13407
´
Evaluación
contextual
´
Crear
a una persona
´
Manual
de la página
´
Crear
Prototipo de Baja fidelidad
Evaluación de usabilidad con el usuario:
´
Diseño
contextual
´
Inspección
de estándares
´
Evaluación
con un prototipo de baja fidelidad
´
Cuestionarios
de usabilidad del prototipo
´
Formato
de tareas y de observación del usuario
´
Análisis
de tareas usando KLM
Evaluación de usabilidad sin usuarios:

Comentarios
Publicar un comentario