Pasar al contenido principal

Plataforma ESB Adaptativa para Sistemas Basados en Servicios

Los sistemas de software actuales operan en ambientes altamente dinámicos por lo que necesitan, cada vez más, contar con capacidades de adaptación que les permitan responder rápidamente a cambios inesperados, por ejemplo en metas de negocio o entorno de ejecución, a fin de seguir funcionando correctamente.

Las Arquitecturas Orientadas a Servicios (Service Oriented Architecture, SOA) plantean un enfoque prometedor para abordar estos requerimientos, dado que permiten el desarrollo ágil, y de bajo costo, de los denominados Sistemas Basados en Servicios (SBSs). Los SBSs se construyen combinando distintos servicios individuales los cuales proveen funcionalidades de negocio, tienen una interfaz pública y pueden ser descubiertos, invocados y combinados de forma dinámica. Sin embargo, las tecnologías y métodos actuales para SOA no proveen soluciones nativas y completas que den soporte a la adaptación automática, dinámica y en tiempo de ejecución. Esto limita en gran medida la rapidez con la que los sistemas pueden responder a cambios inesperados.Esta problemática está siendo abordada en el contexto del proyecto europeo S-Cube, donde la adaptación en SBSs se considera como un tema transversal a todas las capas lógicas en las que en general se estructura una SOA. En el proyecto se está tomando un enfoque integral, en el cual se propone aprovechar las capacidades de adaptación y monitoreo que ofrece cada capa, a fin de alcanzar soluciones globales.

Por otro lado, el Enterprise Service Bus (ESB) está ampliamente reconocido como la infraestructura preferida para dar soporte a la implementación de una SOA. Un ESB provee una capa de procesamiento intermedio, con lógica de integración y comunicación reutilizable, que ayuda a mitigar la disparidad que pueda existir entre los servicios. En este contexto, en lugar de interactuar directamente los servicios se comunican enviándose mensajes a través del ESB. Estos mensajes son generalmente procesados por flujos de mediación, los cuales pueden aplicarles distintas operaciones (transformaciones, ruteos, etc). Dado su rol mediador en una SOA, el ESB resulta un lugar ideal para efectuar acciones de adaptación.

Esta tesis propone y especifica una Plataforma ESB Adaptativa la cual, basándose en las capacidades de mediación de los ESBs, permite responder a necesidades de adaptación en una SOA de forma dinámica, automática y en tiempo de ejecución. En términos generales, la solución consiste en interceptar los mensajes que ingresan al ESB y, en caso que se requiera una acción de adaptación para el servicio que se invoca, procesarlos a través de flujos de adaptación. Estos flujos contienen todos los pasos de mediación necesarios para efectuar las acciones de adaptación requeridas. En particular, la tesis hace foco en servicios implementados utilizando la tecnología de Web Services y en necesidades de adaptación que surgen por la degradación de la calidad de servicio, la saturación de servicios y cambios en los contratos de servicios.

La plataforma propuesta se basa en patrones de mensajería e integración comúnmente soportados en los productos ESB, por lo que brinda una solución genérica y factible de aplicarse en la mayoría de estos productos. Adicionalmente, la solución sigue las ideas principales del proyecto S-Cube exponiendo capacidades de adaptación y monitoreo que pueden ser utilizadas por soluciones globales, y apoyándose en varios de los marcos y modelos definidos en el proyecto.

Grupo de investigación
Participantes
Acrónimo
Adapt-ESB-SBS
Tipo
Maestría