Desarrollo dirigido por modelos de interfaces específicas de dominio para el procesamiento de eventos complejos en arquitecturas orientadas a servicios

  1. Boubeta Puig, Juan
Dirigida por:
  1. Inmaculada Medina Bulo Directora
  2. Guadalupe Ortiz Bellot Codirectora

Universidad de defensa: Universidad de Cádiz

Fecha de defensa: 16 de julio de 2014

Tribunal:
  1. Juan Hernández Núñez Presidente/a
  2. Juan Manuel Dodero Beardo Secretario
  3. Raúl Julián Ruggia Frick Vocal
Departamento:
  1. Ingeniería Informática

Tipo: Tesis

Teseo: 367256 DIALNET lock_openRODIN editor

Resumen

Resumen (Castellano) *********** En la actualidad, las empresas y organizaciones de todo el planeta necesitan gestionar cada día una ingente cantidad de datos provenientes de fuentes muy diversas, tales como aplicaciones propias y de terceros, servicios web, sensores, plataformas de Internet de las cosas o redes sociales, con el fin de llevar a cabo la toma de decisiones. Un buen proceso de toma de decisiones requiere, entre otros factores, conocer tan pronto como sea posible cuál es el valor que tienen dichos datos para el negocio empresarial. La realización de un exhaustivo análisis de datos, así como una actuación temprana en relación a las situaciones críticas o relevantes que supongan una amenaza para la empresa, permitirá que esta se posicione por encima de sus competidores. No obstante, se trata de un proceso bastante complejo, debido, entre otras razones, a que gran parte de estos datos son heterogéneos -no comparten un formato común- y además deberían procesarse en tiempo real. En este contexto, el procesamiento de eventos complejos o CEP (Complex Event Processing) es una de las tecnologías software que permite analizar y correlacionar grandes volúmenes de datos en forma de eventos con el propósito de detectar situaciones de una mayor complejidad semántica, así como inferir conocimiento valioso que ayudará en el proceso de toma de decisiones. Para ello, se hace uso de los denominados patrones de eventos en los que se especifican las condiciones que han de cumplirse para detectar dichas situaciones de interés. A pesar de las grandes ventajas que CEP puede aportar en el ámbito empresarial, supone un gran reto para los usuarios que son expertos en el negocio, pero que carecen de la experiencia y los conocimientos necesarios para el uso de esta tecnología. Uno de los principales problemas a los que deben enfrentarse estos usuarios es precisamente la definición de dichos patrones usando algún lenguaje concreto, los denominados lenguajes de procesamiento de eventos o EPL (Event Processing Language). Aunque algunas soluciones software actuales ofrecen herramientas gráficas con la finalidad de solventar este problema, estas no son lo suficientemente amigables, puesto que requieren que el usuario escriba manualmente, al menos, una parte del código necesario para la definición de los patrones. Por otra parte, los sistemas de información actuales tienden a estar basados en arquitecturas orientadas a servicios o SOA (Service-Oriented Architecture), debido a que este tipo de arquitectura software permite desarrollar sistemas distribuidos altamente escalables e integrables con otros sistemas propios o de terceros. Recientemente, estas se están combinando con las arquitecturas dirigidas por eventos o EDA (Event-Driven Architecture) dando como resultado las denominadas arquitecturas orientadas a servicios y dirigidas por eventos -ED-SOA (Event-Driven Service-Oriented Architecture) o SOA 2.0-, que se caracterizan porque las comunicaciones entre los usuarios, las aplicaciones y los servicios se realizan por medio de eventos de una forma totalmente desacoplada. Para detectar, en tiempo real, situaciones críticas o relevantes en estos sistemas complejos y heterogéneos, así como de ejecutar las acciones pertinentes, se hace necesaria la integración de CEP con SOA 2.0. Con el fin de dar respuesta a estas necesidades, la investigación llevada a cabo en esta tesis doctoral se ha centrado en el desarrollo dirigido por modelos de interfaces específicas de dominio para CEP en SOA 2.0, con el objeto de facilitar a los expertos en el negocio la definición tanto de los patrones que necesiten detectar en sus sistemas de información, como de las alertas que deban notificarse en tiempo real. Para lograrlo, se ha propuesto un enfoque dirigido por modelos para CEP en SOA 2.0, un lenguaje de modelado y un editor gráfico para la definición de dominios CEP, un lenguaje de modelado y un editor gráfico reconfigurable para la definición y la generación de código de patrones de eventos, así como una solución tecnológica que integra CEP con SOA 2.0. Para la evaluación del enfoque se han desarrollado dos casos de estudio que confirman que este es independiente del dominio donde se aplique. Asimismo, se concluye que los lenguajes definidos son independientes del código que implemente los patrones de eventos y las acciones a llevar a cabo, así como que los editores gráficos facilitan todo esto de una forma amigable e intuitiva, y haciendo los detalles de implementación totalmente transparentes para los expertos en el negocio. Se trata, por tanto, de un enfoque novedoso que pone la tecnología CEP al alcance de cualquier usuario, repercutiendo beneficiosamente en el proceso de toma de decisiones.