Sobre integraciones, incrustaciones e interoperabilidad

por

Antes de entrar en más detalle sobre lo que SOA aporta al escenario descrito en nuestra anterior entrada, vamos a detenernos un momento en el término “integración”.

Que significa integracion de sistemas

Para no irnos por las ramas, centrémonos en EAI (Enterprise Application Integration). Según wikipedia, EAI es el proceso de conectar las aplicaciones unas con otras para intercambiar información operativa o financiera. Hay dos reflexiones que surgen inmediatamente:

  1. la manera en que se conecten las aplicaciones resulta determinante
  2. un paso más allá, sería intercambiar procesos, no solo información

Efectivamente, hay muchas formas de conectar aplicaciones en una organización. Un dato demoledor que podéis ver en esa entrada es que el número de conexiones punto a punto crece geométricamente: para tener 10 aplicaciones conectadas de esta manera se requieren 45 conexiones punto a punto!! Pensad en organizaciones con docenas y docenas de aplicaciones… menudo empacho de espagueti!!.

Naturalmente estos escenarios terminan por presentar serios bloqueos que llegan a hacer inviables los proyectos que se necesita acometer. No olvidemos que los presupuestos son limitados (y hoy en día, menguantes).

Pero no solo hay un problema de número de conexiones punto a punto, su consecuente ineficiencia en la red que las soporta, y su frustrante efecto dominó cuando nos planteamos modificar un sistema de información. Más allá, esas conexiones punto a punto pueden ser de diversa naturaleza, y pueden introducir aún más problemas. Por ejemplo:

  • aplicaciones que presentan en su interfaz opciones o botones para abrir otras aplicaciones
  • aplicaciones que acceden a bases de datos de otras aplicaciones
  • aplicaciones que usan réplicas exactas de tablas de otras aplicaciones, que cargan periódicamente
  • aplicaciones que recuperan ficheros generados por otras aplicaciones, con una estructura propietaria de aquella aplicación
  • aplicaciones que publican servicios web propietarios para que sean invocados por el resto de sistemas

Todas estas maneras de integrar aplicaciones parecen más incrustaciones que integraciones. Aquí ya no se comparte información, el acoplamiento no está a nivel de datos, está a nivel de estructuras, de modelos de datos, de intefaces de usuario. Es una amalgama de aplicaciones diseñadas para interconectarse de una manera que dispara los costes cuando se trata de evolucionar o sustituir los sistemas de información existentes. Tal como hemos mencionado, a esta manera de integrar aplicaciones preferimos llamarla incrustación. Nos parece un término más preciso y ajustado a lo que se está haciendo.

Integrar sistemas es integrar datos y procesos

Respecto a la segunda parte de la definición, comentábamos que por qué intercambiar solo información. ¿Por qué no intercambiar procesos?. Pero cuidado, “procesos” es un término que conviene precisar. No hablamos de “cálculo de fechas”, ni “validación de NIF”, ni nada por el estilo. Hablamos de procesos de negocio. Esas funcionalidades que se repiten en varios sistemas de información a lo largo de las distintas áreas funcionales, o algunas de ellas, y que nos empeñamos en resolver una y otra vez en la tecnología de turno. Por ejemplo, consultar un informe (cualquier informe). O actualizar los datos de un cliente (para toda la organización, en tiempo real). O conocer en qué cama está ingresado un paciente (algo que necesitan conocer en admisión, en enfermeria, médicos, farmacia, cocina, etc).

Cuando el enfoque pasa a ser intercambiar procesos, las aplicaciones ya no están integradas, sino que son interoperables. La interoperabilidad implica la capacidad de que los sistemas de información de una organización sean capaces de compartir y reutilizar procesos de negocio que presentan funcionalidades inherentes al negocio, transversales (interoperabilidad funcional) y datos del negocio mediante estándares (interoperabilidad semántica).

Por lo tanto, nos quedamos con la siguiente foto: de integrar aplicaciones para intercambiar información operativa y financiera, pasamos a tener aplicaciones interoperables tanto a nivel de procesos de negocio como de semántica de negocio.

Una vez fijado este enfoque, podemos continuar.

Te puede interesar

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Sigueme en las redes

Share This