domingo, 16 de septiembre de 2007

Intalio BPMS 5: Que son las Correlaciones.


Un aspecto importante en Intalio BPMS, son las correlaciones. Para poder entender su significado es necesario ver un ejemplo simple.

Supongamos, que un proceso de negocio es iniciado por una aplicación cliente, y este llama a un sistema de compras para colocar un orden de compra, generando un numero de orden. Mas adelante, este numero de orden origina que se levante una factura y la envié al proceso BPEL. Como hace el motor BPEL para saber cual es el proceso que debe recibir la factura para procesarla? La solución son las correlaciones.

Las correlaciones se usan para identificar explícitamente una instancia de un proceso de negocio. Es un mecanismo a nivel de la aplicación que permite relacionar los mensajes y conversaciones con las instancias de los procesos de negocio a los cuales han sido enviados.

Cuando un proceso de negocio es iniciado, una instancia del mismo es creada, y esta tiene un tiempo de vida. Dentro del engine BPEL, pueden existir múltiples instancias de un procesos de negocio activas al mismo tiempo. Todos los mensajes que son enviados a el proceso tienen que ser entregados a la correcta instancia del proceso.

Como las múltiples instancias de procesos son activadas al mismo tiempo, los datos específicos de las aplicaciones son diferentes y los mensajes intercambiados son usados para mantener referencias a loas instancias especificas de negocios. La idea e asociar los datos específicos de las aplicaciones existente en los mensajes para mantener referencias a instancias de procesos es conocido como Correlación BPEL.

Una correlación es usada para asegurar que un mensaje va a una instancia apropiada basada en el contenido del mensaje. Típicamente, un elemento del mensaje coincide con un valor en la instancia del proceso, para asegurar que el mensaje es enrutado de forma correcta.

En conclusión, una correlación es un mecanismo para asociar un numero de mensajes con una instancia de proceso.

Saludos.