Procesamiento de Eventos Complejos: ¿Servicio o Proceso?

Por Paul Vincent el 15-jun-2017 12:23:55

Procesamiento de Eventos Complejos: ¿Servicio o Proceso? 

Para quienes conocen de las tecnologías de TIBCO sabrán que el mundo del Software se encuentra dividido en tres pilas de software interoperables: Business Process Management (iProcess y sus componentes asociados), Arquitectura Orientada a Servicios (que comprende la gestión de servicios ActiveMatrix, la orquestación BusinessWorks, Adapters, y Enterprise Service Bus y/o Middleware como EMS y RV) y la Optimización Empresarial (que incluye casi todo lo demás). De esta forma, la Optimización Empresarial[1] incluye:

  • Servicios de visualizaciones: como interfaces de usuario sofisticadas que le permiten a los negocios interactuar mejor con sus sistemas, y así optimizar la experiencia del usuario.
  • Servicios de Business Intelligence: como Spotfire, para el análisis y entendimiento de relaciones de datos, con el fin de poder tomar mejores decisiones (y, por supuesto, identificar decisiones que puedan ser automatizadas en servicios de decisiones, entre otros) y así optimizar la conciencia a través de patrones de datos.
  • Servicios (o agentes) de procesamiento de eventos complejos: específicamente BusinessEvents, que proveen identificaciones de patrones de eventos (distribuidos), modelaje de estados, normas de negocios y decisiones que son respaldadas por una cache (distribuida) de alto desempeño, optimizando la respuesta a los eventos de negocios.
  • Servicios de Gestión de Datos Maestros (MDM, por Master Data Management): a través del Administrador de Información Colaborativa (CIM, por Collaborative Information Manager), para controlar los datos críticos usados en otros servicios y procesos, optimizando la gestión de datos maestros.

Una pregunta frecuente (y teórica) es: ¿Acaso un Procesamiento de Eventos Complejos (CEP, por Complex Event Process), como el que provee las herramientas como BusinessEvent, es un proceso comparable a iProcess y a un BPM o es un servicio que representa realmente una forma de EDA parecida a la de la pila de ActiveMatrix? Veamos las evidencias en pro y en contra:

En el caso de ser SOA:

 

  1. BusinessEvents puede desplegarse bajo BusinessWorks de ActiveMatrix, ya sea como un CEP EDA convencional que se alimenta de eventos de forma asincrónica bajo el control de un BW, o como un servicio de decisiones (un motor de normas común) para reglas de negocios declarativas y complejas (en sincronía).
  2. BusinessEvents provee un servicio de procesamiento de eventos en aplicaciones compuestas; los eventos son procesados y devueltos como eventos “de información de alto nivel” para que sean usados por otros servicios, ya sea de forma sincrónica o asincrónica (incluso ambas).
  3. Las reglas de negocios manejadas por eventos pueden proveer la lógica de negocios para muchos servicios.
  4. El procesamiento de eventos es intrínsecamente un servicio para una variedad de aplicaciones y procesos en un sistema TI. Esto tal vez sea igual que el punto dos, con la excepción de que el dueño puede ser un proceso de negocios, en lugar de un servicio TI.

En el caso de ser BPM:

 

  1. Un procesamiento de eventos complejos es solo otro tipo de procesamiento de eventos diferente (sin flujo de trabajo, y además continuo) que es simplemente una extensión (de forma conceptual) de este simple proceso de eventos manejados por BPMN en los procesos de negocio
  2. Los procesos de negocios involucran el procesamiento de eventos. A pesar de que un BPM esta tradicionalmente asociado con un flujo de trabajo que “maneja” algunos eventos, no hay razón por las que un proceso de negocios no pueda hacer un procesamiento continuo y complejo de eventos (a pesar de que esto puede estar diseñado de una forma diferente, como a través de modelos de estado y reglas). Este punto tal vez sea igual a la primera.
  3. Los procesos CEP pudieran ser “gestionados” de la misma forma que otros procesos: lanzamientos controlados, simulación de desempeño, roles o actores múltiples involucrados en el manejo de un evento (o de eventos), despliegue a BPEL,…
  4. El procesamiento de eventos es intrínsecamente un proceso llevado a cabo en beneficio de un negocio, ya sea generando eventos para otros procesos, o consumiendo eventos generados por otros procesos (o ambos).

¿Cuál es la conclusión? Quizás la clasificación de Procesamiento de Eventos Complejos depende de la aplicación CEP en particular: pudiera ser un proceso de negocios, un servicio TI, o ambos. Es más probable que sea lo segundo, aunque si ves los procesos de negocios como esos que son llevados (o son capaces de ser llevados) por trabajadores humanos, entonces es claro que los CEP no se apliquen muy a menudo.

De igual forma, si por el contrario ves que los servicios SOA son asincrónicos, entonces los CEP tampoco se aplicarán. Por seguridad, BusinessEvents es usado junto a la arquitectura SOA y pilas BPM de TIBCO (y por su puesto de otros vendedores), por lo que no tendrá efecto desfavorable alguno.

Dicho esto, si quieres saber más sobre todo lo que una arquitectura SOA en Panamá, México y Ecuador, así como otros países de la región de Latinoamérica puede hacer para optimizar los procesos de negocio de una organización, te invitamos a descargar gratis el Ebook:

 

“Fundamentos de Arquitectura Orientada a Servicios”

NOTAS:

[1] Por supuesto, existe la “verdadera optimización”, al igual que la “optimización aproximada”, como el uso de técnicas de lógicas de restricciones. Estas técnicas o algoritmos complementan  las herramientas CEP distribuidas como BE, otorgando capacidades como la selección de optimizadores dinámicos basándose en los eventos predominantes y reglas de negocios actuales. 

***Este documento fue traducido y adaptado del inglés al español previa autorización de TIBCO. Si deseas leer el original puede hacer clic aquí

fundamentos de arquitectura orientada a servicios
guia de planificacion soa

Completar con sus datos

Últimos Post

Inbound marketing

 

Conoce más