En el contexto de la migración del proyecto SICOF, se ha identificado la necesidad de desarrollar una API Legacy que permita la comunicación entre las aplicaciones legacy de la empresa (SICOF, BPP y Rentas) con los nuevos servicios y microfrontend. Esta API actuará como un puente entre el pasado y el futuro, facilitando la integración de datos y procesos entre los diferentes entornos tecnológicos.
Los objetivos principales del desarrollo de la API Legacy son:
La API Legacy se basará en una arquitectura RESTful, siguiendo los principios de diseño de APIs REST. Esto permitirá una fácil integración con las aplicaciones legacy y los nuevos sistemas, utilizando protocolos HTTP estándar y formatos de datos como JSON.
A contiuación se describe el modelo utilizado de forma general:
La API Legacy estará compuesta por los siguientes componentes:
Esta capa encapsulará el acceso a las bases de datos de las aplicaciones legacy, proporcionando una interfaz única y simplificada para la consulta y manipulación de datos.
Se define el siguiente modelo.
/** * The Class FrontendConsumingUrlDto. */ @Schema(description = "Entidad que almacena los registros de tokens heredados para consumo microfronend.") @Data public class FrontendConsumingUrlDto implements Serializable{ /** The Constant serialVersionUID. */ private static final long serialVersionUID = 1L; /** The id. */ @Schema(description = "Identificador del registro.") private Long id; /** The microfrontend url. */ @Schema(description = "url del microfronend desplegado.") private String microfrontendUrl; /** The path param. */ @Schema(description = "Parámetro que contiene la cadena de la sesión encriptada que será utilizada en la inicialización del microfrotnend.") private String pathParam; /** The consume status. */ @Schema(description = "Estado del registro. Es utilizado para validar si el token heredado está vigente.") private String consumeStatus; /** The uuid. */ @Schema(description = "Identificador del token heredado.") private String uuid; }
Esta capa implementará la lógica de negocio específica de las aplicaciones legacy, exponiendo las funcionalidades de estas aplicaciones a través de la API.
La documentación del api se expone en los siguientes endpoint.
La seguridad de la API Legacy será una prioridad absoluta. Se implementarán medidas de seguridad como autenticación, autorización, cifrado y validación de datos para proteger la información confidencial y garantizar la integridad de las transacciones.
El API Legacy se integrará con las aplicaciones legacy y los nuevos sistemas de diversas maneras, abriendo un abanico de posibilidades para la migración y el desarrollo futuro. A continuación, se describen algunos de los escenarios de integración más comunes: