¡Vivimos en la Babilonia del software moderno! Al menos, así describen mis clientes el desafío de integrar su software de gestión corporativa con el mundo. Necesitan conectarse, intercambiar información, recibir insights, comerciar y ejecutar una variedad de otras tareas que unen sus datos corporativos al nuevo mundo de los servicios de software. Pero este mundo está lleno de monoglotas de diferentes orígenes que no pueden entenderse fácilmente. Se sienten desesperados y limitados en sus esfuerzos por explorar todos los beneficios de este nuevo y rico mundo de soluciones corporativas.

El enfoque habitual para integrar dos soluciones diferentes requiere cierto desarrollo de software. La mayoría de las integraciones entre dos paquetes de software son bidireccionales y necesitamos leer y escribir en ambos. Además, es poco probable que el mismo dato se asigne directamente de una solución a la otra. Por lo general, necesitamos transformar los datos para que coincidan con las propiedades, los nombres de campo y los tipos de datos entre ellos. La solución más común para realizar estas tareas es escribir otra pieza de software que maneje ambos lados de la integración, así como las transformaciones de datos requeridas. No hace falta decir que este software requerirá un enfoque completo de desarrollo y soporte de software, alojamiento adecuado, escalabilidad y mantenimiento. Se trata de tareas dolorosas incluso para las empresas y casi insoportables para las pequeñas y medianas empresas.

Este es el escenario donde se concibió la Plataforma de Integración como Servicio (IPaaS – Integration Platform as a Service). Para comprender cómo IPaaS ayuda a las empresas a integrar el software, es mejor dividir el problema en componentes más pequeños. Comenzamos con los conectores que están diseñados para trabajar con cada software de forma individual. Luego pasamos a la transformación de datos que se requiere para mapear, mejorar o ajustar los datos entre aplicaciones y finalmente discutimos los problemas de infraestructura que aborda IPaaS.

Los conectores son componentes prediseñados que manejan todos los aspectos específicos de la comunicación con cualquier software dado. Debería encontrar conectores para las marcas de software más populares que ya estén disponibles en cualquier IPaaS. Contienen el código para manejar la conexión, autenticación y autorización, así como la API proporcionada por el software. Cuando crea cualquier conector, obtiene acceso automáticamente para comunicarse con la aplicación para la que se creó el conector. Solo necesita proporcionar credenciales específicas para su empresa. La mayoría de las veces, necesitará al menos dos conectores en su integración, uno para tratar cada lado de la integración.

Sin embargo, los conectores por sí solos no son suficientes. Es útil pensar en el conector como un lenguaje que habla cada software, pero necesitamos un cerebro en el medio para asignar las oraciones de un idioma al otro. A veces se requiere una asignación simple, como vincular el campo “nombre” en un conector al campo “nombre completo” en el otro. Otras veces puede ser necesario utilizar una transformación de datos más sofisticada, como unir campos, dividir, contar u organizar datos en un formato o estructura completamente diferente.

Cualquier buena solución de IPaaS debe proporcionar interfaces gráficas que le permitan asignar campos de datos de un conector a otro. La mayoría de las veces bastará con un simple “arrastrar y soltar”. Las transformaciones de datos más sofisticadas se pueden lograr mediante algún tipo de lenguaje transformacional que puede ser un simple guión o una función más elaborada. Esta es probablemente la única parte de la integración que requiere habilidades de programación, en un entorno muy restringido que limita significativamente la complejidad.

La parte restante del flujo de integración es el disparador. Algo debe iniciar todo el proceso y el desencadenante es el módulo que se ocupa de esto. Normalmente, se utilizan activadores de tiempo o webhooks para iniciar el flujo de integración. Es posible que necesitemos un proceso que cada hora extraiga datos de un sistema e inserte esos datos en otro. Este flujo de integración requiere un disparador de tiempo simple, un conector para cada sistema y módulo de mapeo/transformación de datos.

Finalmente, debemos mencionar que admitir todas las funciones anteriores en una oferta SaaS conveniente es una gran ventaja para cualquiera que intente crear integraciones. Temas como escalabilidad, alta disponibilidad, seguridad y mantenimiento de la plataforma están bien tratados en cualquier paquete de IPaaS de buena reputación.

2020 ha visto un aumento de las integraciones de software impulsadas principalmente por el trabajo remoto y una forma de vida más digital para las personas y las empresas. La adopción de soluciones IPaaS sin duda facilitará nuevas integraciones que aporten más valor a los datos corporativos. Es como el Traductor de Google para quienes viven la Babilonia del software.