10/12/2022
Te descubrimos el proceso del antiguo sistema BizTalk al Anyway.
Dentro del área Commercial & Financial Markets Plataformas se gestiona la operativa de tesorería de CaixaBank, concretamente para los productos de divisa, deuda y derivados.
Estas transacciones se tratan a través de un Middleware, que se encarga de procesar la operativa de cada sistema de origen y transformar los mensajes a un formato entendible antes de enviarlos a los destinatarios. Pero, el incremento de la demanda en la utilización, nos ha obligado a buscar otra solución y, esta vez, optamos por un desarrollo ad hoc bajo tecnología Java e infraestructura Cloud. ¡Te explicamos el proceso!
¿Cómo funcionaba el antiguo Middleware?
El Middleware original, implementado bajo una herramienta de mercado basada en Software propietario externo a la Entidad, se encuentra desplegado en servidores Windows. Este Middleware enruta, bajo ciertos criterios, los mensajes de los distintos orígenes a los destinos disponibles. Con el incremento de demanda de utilización de este Middleware y la implementación de cada vez más productos de Tesorería, la lógica desarrollada no permitía adaptarse de forma ágil a las necesidades de negocio. Ante esta situación, se detectó la necesidad de cambiar a un software propietario de la Entidad (desarrollado ad-hoc) con una infraestructura que cumpliera con los estándares por los que CaixaBank estaba apostando.
Evolución del Middleware a Anyway
En esta línea, se decidió crear una herramienta desde cero, bajo tecnología Java e infraestructura Cloud. Este nuevo software, denominado Anyway, permitiría disponer de la lógica completamente desarrollada in house, específicamente adaptada a las necesidades de las distintas áreas de negocio y con control total dentro de la Entidad. Adicionalmente, la infraestructura Cloud permitiría tener unos costes menores (al no tener que pagar licencias ni servidores físicos activos), más potencia hardware y más agilidad y eficiencia en el procesamiento de la operativa.
Para asegurar que el comportamiento de la nueva herramienta fuera eficiente, robusto y se adaptara de forma ágil a cualquier cambio futuro, se diseñó la solución con los siguientes componentes:
Desarrollos en Java
Componentes desarrollados en esta tecnología y desplegados en infraestructura Cloud. Cada circuito gestionado en el Middleware se divide en un componente independiente, desde el cual se implementan los distintos mapeos y las transformaciones necesarias. Además, cada componente mantendrá su propia configuración específica, que permite tener un comportamiento concreto para cada circuito.
Se implementa también un componente Core que servirá de base común para todos los componentes Java desarrollados. En este diseño, los componentes específicos llamarán al Core cuando se requiera hacer alguna acción genérica sobre una transacción. Esta solución permite que cualquier cambio que se requiera en el comportamiento global del aplicativo se pueda aplicar de forma general y con menor coste.
La diferenciación por componentes permite aislar los errores en caso de fallos, evitando la propagación al resto de circuitos y por lo tanto a la operativa que se gestiona a través de ellos.
Uso de base de Datos Oracle
Donde se mantienen todas las transacciones y mensajes procesados y transformados entre los diferentes orígenes y destinos. Además, permite tener una mayor trazabilidad, manteniendo un histórico de los mensajes tratados.
Colas MQ
Cada sistema escribe sus transacciones, el Middleware las procesa y transforma y las envía por otra cola de salida a cada destino según corresponda. Este diseño permite disponer de las transacciones en las propias colas, mientras no sean leídas, y en caso de error global del aplicativo, reestablecer el funcionamiento sin impacto en la operativa de negocio. Adicionalmente, permite hacer un seguimiento exhaustivo al tener disponible la carga de cada cola en tiempo real y la manera en la que se van gestionando dichas transacciones durante el día.
Versionado mediante GIT
El código Java se mantiene en un repositorio común para todos los desarrolladores, donde se publican las distintas clases implementadas y se mantiene el versionado de los cambios. Esto permite un mayor control de las modificaciones con respecto al anterior Middleware.
Front Web montado sobre Cloud
Esta herramienta permite hacer un seguimiento concreto de cada transacción procesada por el Middleware, así como realizar ciertas acciones concretas sobre ellas, facilitando la labor de soporte al equipo encargado del mantenimiento del aplicativo.
- Con esta nueva solución tenemos los siguientes beneficios:
- Permite a los equipos de CaixaBank ser más autónomos en la gestión de las
transacciones que pasan por el Middleware, y con un coste mucho menor. - Reducción significativa de coste de mantenimiento, ya que se dan de baja los
servidores físicos necesarios para el funcionamiento de la antigua herramienta, y
que ya son prescindibles en Cloud. - Agilidad de las adaptaciones ante cambios en la operativa o comportamiento de la
herramienta, por requerimientos de negocio. - Alineación de la solución con las tecnologías e infraestructuras más punteras y con
el objetivo de migración de los sistemas en CaixaBank.
Ahora ya conoces cómo ha sido la evolución que hemos hecho del antiguo Middleware de Tesorería a Cloud.
tags:
Comparte: