Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Normalmente un producto de software tiene sus procesos de pruebas de integración para verificar que los
módulos o componentes que lo conforman funcionan correctamente en conjunto o integrados.
1. PRUEBAS DE INTEGRACION
Las pruebas de integración en los proyectos de desarrollo de software, no solo se presentan en la integración entre
módulos de un mismo producto sino que se están planteando proyectos que ofrecen soluciones conformadas por
varios productos de software, lo cual le da una nueva dimensión al proceso de pruebas de integración. Estas
corresponden a las pruebas de integración entre productos, en el cual podríamos considerar los productos como
componentes más grandes, sin embargo existen características que las hacen particulares considerando que son
productos construidos por empresas diferentes y que obedecen a estándares de construcción diferentes, en as
más diversas plataformas (Figura 1). Para el proceso de pruebas de integración se han establecido los
siguientes aspectos:
1. Identificar las aplicaciones que forman parte de la solución y su participación en el proceso, es decir la función
de la aplicación dentro de la solución. Cada una de las aplicaciones debe estar certificada funcionalmente, es
decir haber concluido los procesos de pruebas funcionales. Es requisito que las aplicaciones hayan finalizado su
proceso de pruebas funcionales o al menos hayan logrado un alto nivel de estabilidad ya que si esto no
se cumple, durante la ejecución de las pruebas de integración es más difícil establecer la procedencia
de las no conformidades identificadas lo que ocasiona desperdicio de tiempo del equipo de trabajo
intentando localizar su procedencia.
2. Identificar la forma de acceso e invocación de cada una de las aplicaciones o componentes de la
solución, para esto se definen estándares que describen la manera de acceder a las aplicaciones y la
ubicación dentro de la pantalla de los puntos de acceso.
3. Validar los estándares de presentación de la solución. Cada una de las aplicaciones deben cumplir
con estos estándares, los cuales son definidos por el cliente y normalmente corresponden a la imagen
que quiere proyectar. Estos estándares son variables de acuerdo con el cliente, si bien son aspectos que se
validan en las pruebas de unidad, como se plantean para un proyecto de integración que varía de cliente en
cliente y para un producto terminado estas pruebas se ejecutan como parte de las pruebas de integración.
4. Identificar la interacción entre las aplicaciones, es decir cuales aplicaciones requieren interacción y que
mecanismo usará para hacerla. Está interacción se define desde dos puntos de vista:
• Sincronización de Datos.
• Integración Funcional.
En lo posible no se debe realizar interacción directa entre cada par de aplicaciones ya que dependiendo
del número de productos que participen, aumenta la complejidad del mantenimiento de la solución. Es
recomendable el uso de uno o más mediadores que permita estandarizar el mecanismo de integración.
5. Identificar el mecanismo de autenticación en las aplicaciones. Debe ser un mecanismo unificado para la
solución. A pesar de que son varias aplicaciones, la autenticación de usuarios debe realizarse una vez.
6. La administración de usuarios debe realizarse desde una de las aplicaciones y debe ser replicado en forma
automática en las demás aplicaciones.
7. Para facilitar el proceso de integración se usa un repositorio central de datos que comparte información entre
diferentes aplicaciones. El repositorio central de datos debe validarse de acuerdo con la estructura de las fuentes
que lo alimentan.
Se valida el registro de los usuarios a la solución, la conexión se realiza una vez y este debe ser
reconocido en cada una de las aplicaciones de la solución, sin que se solicite nuevamente login y
usuario al invocar la ejecución de alguna de ellas. Se debe verificar que los accesos del
usuario en cada aplicación corresponden a los definidos en cada producto de la solución.
Administración de Usuarios
Búsqueda Unificada
Se validan que a partir de un buscador central se tenga acceso a los buscadores de las
demás aplicaciones. Se debe establecer cuales de las aplicaciones tienen buscador y se valida
que exista compatibilidad entre los parámetros de búsqueda y que los resultados sean correctos y
completos.
Se realiza validación de la estructura del repositorio central de datos para garantizar que no
exista conflicto con los tipos de datos y longitudes de los mismos. El repositorio debe tener en
cuenta la estructura de los datos fuentes y destinos para garantizar su correcta operación. Además,
debe considerar que los destinos pueden ser múltiples aplicaciones.
El repositorio central de datos varía de proyecto en proyecto, por lo cual se requiere validar que se
puedan realizar consultas y reportes sobre este.
Sincronización de Datos
Se refiere a la definición de datos comunes entre las aplicaciones, tales como las ubicaciones o
zonas geográficas. Es información que maneja más de una aplicación y que debe permanecer
sincronizada, por lo que se define una fuente, los destinos y un mecanismo de sincronización para
cada destino, que podría ser por equivalencias u homologación. Las pruebas van orientadas a
realizar validación de la sincronización de datos, es decir que la replicación de los datos básicos
comunes entre aplicaciones se cumpla adecuadamente. Los mecanismos empleados son muy variados
y van desde APIs hasta mediadores que permiten configuración flexible de la información.
Integración Funcional
Se validan la sincronización a nivel de procesos, es decir la interacción entre los productos a partir de la
ejecución de procesos y la transferencia de información a otros procesos.
Se deben identificar los procesos de las aplicaciones que interactúan y el mecanismo de
intercambio de información. Este puede realizarse a través de interfaces directas entre
aplicaciones o mediante el uso de herramientas altamente configurables que actúan como
mediadores.
Instalador
Documentación en Línea
PRUEBAS NO FUNCIONALES
Además, cada líder de producto es responsable de validar el cumplimiento del proceso de pruebas
para cada uno de los aspectos de integración. Y para cada aspecto se asigna un líder que responde por
el proceso completo dentro de la solución.
Líder SQA
Aplicación A
Líder SQA
Aplicación B
Como estas matrices se deben aplicar sobre cada producto de la solución, es el líder
de SQA responsable del producto quién se encarga de realizar las pruebas del aspecto
respectivo. Por lo que un aspecto, por ejemplo Look and Feel puede ser validado por
ingenieros de SQA diferentes en cada una de las aplicaciones.
Existen procesos para los cuales no se requieren matrices particulares por cada aplicación, sino
que se genera una única matriz para toda la solución, por lo cual se asigna a un único
responsable para el proceso de pruebas.
- Se construiye una matriz DF que incluiye una selección de los procesos que se validan. En
esta Matriz DF se hace una aclaración que indica que los procesos corresponden a un
subconjunto de las funcionalidades del producto.
- Se selecciona un subconjunto de requerimientos de pruebas para validar los procesos en
el ambiente integrado.Esta selección se enfocará en los requerimientos positivos.Se deja
a criterio del líder de pruebas la selección de requerimientos negativos si lo considera
necesario.
De acuerdo con los requerimientos técnicos de cada uno de los productos que componen la solución, se
define el ambiente de la solución y los mecanismos que se usarán para realizar la integración, esto lo
realiza el arquitecto de la solución.
Dado la diversidad de las plataformas sobre las cuales se implementan los productos, es posible que
el ambiente de integración esté formado por una gran variedad de software y diferentes versiones de los
mismos.
Una vez implementado el ambiente de pruebas, se debe realizar la validación del ambiente de pruebas para
garantizar que corresponde al definido.
Las versiones de producto no pueden ser alteradas sin la autorización de líder de pruebas de la
solución y con la previa aprobación del arquitecto de la solución. En caso de modificaciones en las
versiones del software base se debe analizar el impacto de estas en el proceso de pruebas.
6. METRICAS DE INTEGRACION
Cada proyecto requerirá unas métricas particulares dependiendo de las características de la solución
y lo que se necesite medir. Sin embargo, a nivel general se plantean los siguientes indicadores de
integración: