Orquestación Un proceso es de orquestación cuando es controlado

Anuncio
Orquestación
Un proceso es de orquestación cuando es controlado totalmente por una única entidad. Esta define
completamente las interacciones y la lógica requerida para conducir correctamente estos procesos.
Este tipo de procesos puede entenderse como privado y ejecutable: privado porque la definición de
la lógica del proceso es hecha enteramente por un participante en la interacción; y ejecutable
porque tiene un comportamiento de conversión de entradas en salidas y tiene efectos en el mundo
real.[1]
La orquestación de componentes es la tecnología que permite que los componentes sean
integrados de acuerdo a patrones predefinidos y ejecutados por medio de restricciones, estas
restricciones representan llamadas a procesos, normalmente describen las interacciones entre las
aplicaciones identificando sus mensajes, lógica jerárquica y sus secuencias de invocación. El
componente que ejecuta estas restricciones es el componente orquestador.[2]
El componente orquestador es el componente que actúa como intermediario inteligente entre un
conjunto de componentes, la interacción entre estos se representa por el modelo de paso de
mensajes.
Orquestación vs Coreografía
Dado que en ocasiones hablar de orquestación o coreografía parece indicar que se refiere a los
mismos conceptos e ideas, ya que estas definiciones suelen variar sutilmente una de otra, vamos a
indicar una serie de ideas que pueden ser útiles para saber diferenciar que es cada cosa. Según
esto tenemos:

Orquestación
o Con la orquestación lo que realizamos es componer servicios para generar un
nuevo proceso de negocios y puede usarse de dos formas distintas: para preparar
la información que se intercambia en la ejecución de la coreografía o como la
invocación siguiendo unas determinadas reglas.
o Es un sistema jerárquico en el que la idea de proceso organiza la manera de
invocar a otro mediante un flujo de control que determina que invocar y cuando
hacerlo.
o La orquestación debe verse como algo atómico a sí mismo, ya que lo que se ve es
el proceso de negocio como tal.

Coreografía
o Con la coreografía lo que realizamos es componer servicios para permitir la
colaboración entre dos negocios, de forma que se defina la forma en que múltiples
participantes colaboran entre pares, como parte de una operación o transacción de
negocio duradera, que se realiza mediante el intercambio de mensajes tanto
síncronos como asíncronos y que requiere una descripción formal de los
protocolos de intercambio de mensajes y que debe estar visible para cada
participante que interviene dentro de la coreografía.
o Es un sistema entre pares, por tanto muchos participantes pueden colaborar, por
tanto es posible la existencia de varios flujos de control diferentes.
o Se describen interacciones con estado y duraderas.[2]
Propósito
El propósito de la orquestación es crear un servicio para un cliente de un sistema, para llevar a
cabo dicho servicio es necesario crearlo mediante el desarrollo de un modelo de proceso, el cual
se debe basar en un motor de orquestación.
En los sistemas que utilizan la orquestación se utiliza un concepto interesante como lo es el de la
armonía: significa que dos o más notas diferentes suenan bien juntas, basándonos en esto,
podemos decir que la armonización es la que permite a un servicio de cualquier fuente funcionar
bien dentro de la orquestación.
Para lograr que un servicio sea armónico necesitamos que este sea comprensible para el motor de
orquestación. Al no ser humano, el motor de orquestación realmente no tiene la comprensión de sí
mismo, pero puede ser preparado para entender un determinado conjunto de formatos de
datos. Esto significa que el primer paso es crear una definición de interfaz para un servicio que es
comprensible por un motor de orquestación previamente preparado.
En síntesis, la armonización consiste en
• Sintetizar los servicios a las personas. Descubrir las capacidades disponibles en los empleados y
contratistas y la asignación de las funciones correspondientes a los tipos de servicios que puede
proporcionar, así como las interfaces de usuario necesarios.
• Sintetizar los servicios de los sistemas. Descubriendo los servicios disponibles de negocios que
están expuestos a través de una determinada tecnología en un determinado servidor, la
generación automática de un conector.
• La exposición de los servicios. Creación de una plantilla de uso y la documentación para los
servicios que serán utilizados en su forma nativa.
Orquestación como paradigma
La orquestación es más que una categoría de productos de tecnología. También es un enfoque
holístico hacia la mejora de rendimiento del negocio mediante la extracción de la totalidad del valor
de sus activos existentes. Uno no funciona sin el otro. Este enfoque es lo que vamos a considerar
el paradigma. La orquestación como paradigma se refiere al modelo ejemplar de cómo crear
nuevos servicios que brinda el sistema sin necesidad de cambiar o modificar sus componentes
existentes.
Basados en esto, realizaremos una diferencia entre este modelo de otros modelos que se están
aplicando en la actualidad.
Diferencias con la integración de aplicaciones empresariales (EAI) y el paradigma de
integración Business-to-Business
Las metas y los objetivos de la integración de aplicaciones empresariales (EAI) y la integración del
negocio empresariales (B2Bi) son automatizados para facilitar la interacción entre las aplicaciones
empresariales dispares o transacciones inter-empresariales. Con estos paradigmas se deben
mantener las aplicaciones existentes para ser utilizadas como las interfaces primarias a los
usuarios existentes, intentando optimizar operaciones de los usuarios en el movimiento de datos
de una aplicación a otra para mantener la sincronía y la consistencia de los datos. Estos
paradigmas se basan en las aplicaciones existentes, ya que estas poseen toda la funcionalidad
necesaria para permitir la completa automatización de los procesos.
Por el contrario, las metas y objetivos de la orquestación es crear servicios para los clientes del
actual sistema. Está claro que el alcance de la orquestación es más amplio que el ámbito de
aplicación del EAI y B2Bi juntos. Otro punto importante de la orquestación es que no utiliza ninguna
de las aplicaciones existentes debido a que estas no son suficientes para automatizar los procesos
ya que a medida que evoluciona el negocio serán insuficientes y los nuevos servicios tendrán que
ser construido o comprados, así que las aplicaciones existentes no son tenidas como la fuente de
información para orquestar procesos automatizados. Es posible que tengan información que se
pueden utilizar y puede simplificar la orquestación, pero esto no se requiere para su éxito.
Diferencias con Service or Component-Brokering Paradigm (SCB)
Bajo el paradigma SCB, agrupamos todas las tecnologías que de una forma u otra exponga los
servicios de aplicación en forma de funciones reutilizables o componentes. En este paradigma
encontramos el procedimiento de llamada remota (RPC), las peticiones de objetos y los servidores
de aplicaciones finales. El objetivo de estas tecnologías es proporcionar una plataforma donde los
servicios de aplicación se puedan ejecutar, se puedas invocar el uno al otro y puedan ser
invocados como componentes.
En este paradigma también encontramos a los servicios pre-compilados, que ofrecen hacer más
fácil la construcción de componentes al tiempo que oculta los servicios de más de nivel técnico. Por
ejemplo, los servidores de aplicaciones modernas que se encuentran con servicios pre-compilados
son aquellos que gestionan las conexiones, el inicio de sesión de usuario, los clústeres de
servidores y balanceo de carga, la integridad transaccional y otras capacidades.
Sus principales objetivos y metas son hacer más fácil el desarrollo de nuevas aplicaciones de
soluciones bajo una arquitectura de tres niveles: la lógica de negocio la cual es independiente de la
lógica de presentación, está a su vez es independiente de la de persistencia. Al igual que con
cualquier plataforma, para obtener todos estos beneficios, es necesario construir todas las nuevas
aplicaciones en la plataforma de elección. Las plataformas SCB no son realmente buenas en la
interacción con otras plataformas SCB. Para ello, se suelen utilizar sistemas de mensajería.
Este es un enfoque para el desarrollo de nuevos aplicaciones y no se proporciona un enfoque más
allá de esta arquitectura, debido a esto se tenía que decidir qué metodología utilizar.
Por el contrario, las metas y objetivos de la orquestación son la creación de servicios para clientes
internos y externos de los servicios existentes a disposición de las personas, aplicaciones internas
y externas. Sin embargo, la orquestación se puede beneficiar de un paradigma subyacente SCB en
la medida en que proporciona un fácil acceso a los servicios o componentes con sus servicios
asociados. La orquestación tiene que ser capaz de hablar a los servicios que se ejecutan en
cualquier plataforma, por otra parte, el objetivo de la orquestación es precisamente la construcción
de nuevos servicios basados en los servicios existentes de todo tipo de sistemas y
organizaciones. Servicios de personas que se pueden recibir a través de la capa de
presentación. Por lo tanto, la orquestación ve una aplicación de presentaciones como un servicio,
un brazo robótico como un servicio, de la misma manera en que ve los servicios que pueden ser
acogidos por servidores de aplicaciones o un objeto de solicitud de los servidores de servicios de
intermediación o se puede llamar como un comando en un equipo remoto.
Impacto de la orquestación en las disciplinas de IT
El impacto de la orquestación en la disciplinas IT puede ser mayor de lo que inicialmente se pueda
imaginar. A nivel de empresa las disciplinas IT tradicionalmente han estado dominados por una o
más de los siguientes rasgos:
• Arquitecturas centradas en datos,
• Diseño funcionalidad de motor.
• Implementaciones centralizadas,
• Proyecto de pliego de condiciones centrada en la gestión.
Estos rasgos, después de haber sido útil para la creación de aplicaciones específicas de dominio,
son en muchos sentidos opuestos a pensar en la orquestación:
• Arquitecturas orientadas al servicio,
• El diseño por procesos,
• Implementaciones descentralizadas,
• Proyecto de retorno de la inversión centrada en la gestión.
Impacto sobre la Arquitectura
Los dos efectos fundamentales que tiene la orquestación en las soluciones de arquitecturas es que
introduce una nueva capa o nivel y crea un ámbito de absolutamente nuevas posibilidades en
términos de aplicaciones informáticas.
Esta nueva manera tendrá un impacto enorme no sólo en los aspectos formales de la arquitectura,
sino también en los aspectos materiales de la misma. Esto es, no solo afecta la arquitectura sino
también al entorno en general al que se le aplica. Por ejemplo, un sistema de compras en un futuro
no hablará con sí mismo para crear una orden de compra y luego permitir que un el usuario
imprima y tenga que enviarlo. Se hablará directamente a los sistemas de los proveedores
adecuados para lo que está comprando. No tendrá que tener su propio catálogo de proveedores,
sino que utilizará un servicio para seleccionar dinámicamente los proveedores más adecuados de
un determinado producto o servicio, dado un cierto nivel de exigencia de servicio. Como vemos,
por medio de la orquestación no solo se manejan las aplicaciones en componente, sino que
también se posibilita la construcción de forma dinámica de los servicios por la selección automática
de los componentes adecuados.
Impacto en la implementación de soluciones de TI
En la actualidad, el desarrollo de soluciones se realiza basado en una plataforma determinada y en
algunas ocasiones, cuando es necesario, se debe utilizar una plataforma de mensajería para
realizar la integración con otras aplicaciones las cuales están desarrolladas en otra plataforma, por
esto se tiene una segmentación en los procesos, debido a la disparidad de plataformas, así como a
la disparidad de aplicaciones.
Por ejemplo, en un proceso de realización de pedidos, que cuentan con servicios de financiación,
como la aprobación de crédito y la creación de facturas. Se tienen los servicios de la producción,
tales como las reservas de inventario y reposición de inventarios, y otros tiene servicios de
logística, tales como la selección del operador y el transporte marítimo. Normalmente, estos
servicios están fragmentados por las aplicaciones. Pueden ser aún más fragmentado por las
plataformas que están en uso. Este escenario no es un problema para el paradigma de
orquestaciones, ya que cada fragmento se ve como un contenedor de servicios de la que el motor
de orquestación invocará servicios discretos y se coordina con otros servicios.
Para realizar la integración orientada a mensajes, cada fragmento se ve como un stand-alone en el
que se pueda confiar para saber qué mensajes debe enviar y qué hacer con los que recibe. Esto
no siempre es cierto. Todo se reduce a una cuestión de razonabilidad en cuanto a la granularidad
de servicios. Cuanto más grande de los fragmentos de los procesos o servicios, menor es la
flexibilidad y la fiabilidad de la solución final, cuanto más pequeños son, más compleja será la
solución.
En resumen, el impacto más importante de la orquestación en la aplicación es que permite un
enfoque de arriba hacia abajo. Este enfoque comienza por modelar el servicio que se necesita y a
continuación profundiza a través de tantos niveles de subprocesos es necesario para alcanzar los
servicios.
Descargar