Pantalla del computadora que muestran blog sobre el uso Quarkus
23/06/2023

Arquitectura innovadora basada en Quarkus para la gestión de las finanzas públicas de Uruguay

Montevideo, 23 de junio de 2023.

El Ministerio de Economía y Finanzas de Uruguay (MEF) en conjunto a Sofis Solutions llevaron a cabo la actualización de la arquitectura del Sistema Integrado de Información Financiera (SIIF), acción que se enmarca en el proceso de modernización del organismo y que permitirá agilizar y mejorar su eficiencia.

El Sistema Integrado de Información Financiera (SIIF) del Ministerio de Economía y Finanzas de Uruguay (MEF), es un sistema informático que facilita el registro, seguimiento y evaluación de  las operaciones presupuestales y financieras públicas de Uruguay. SIIF se basa en Oracle Forms, lo que presenta ciertos inconvenientes como compatibilidad reducida, altos costos de mantenimiento y soporte limitado. Para garantizar la viabilidad y la modernización a largo plazo, es necesaria una actualización de la arquitectura.  El organismo comenzó un proceso de modernización que implica un rediseño de la arquitectura de referencia, para que fuera escalable, cuente con las últimas prácticas relacionadas a observabilidad, permita la integración con sistemas externos, sea segura, permita incorporar prácticas de desarrollo y despliegue basadas en DevOps, y se adecue a la normativa vigente en temas de tecnologías de la información.

El equipo a cargo de la actualización se basó en el Método de desarrollo de arquitectura (ADM) TOGAF 9.2, que permite identificar y modelar posibles riesgos para la organización y explorar diferentes enfoques para eliminarlos o reducirlos.  De esta forma, se avanza hacia una arquitectura basada en microservicios y cuya solución tecnológica incorpora Quarkus como framework de backend.

Quarkus fue creado para permitir a los desarrolladores de Java crear aplicaciones para un mundo moderno y nativo en la nube.  Es un framework que habilita Java como una plataforma efectiva para el modelo de arquitectura serverless, de microservicios, y contenedores orquestados.

Como características principales, se puede remarcar:

  • Uso de estándares, frameworks y librerías Java populares como Eclipse Microprofile, Apache Kafka, RESTEasy (JAX-RS), Hibernate ORM (JPA), JUnit, entre otros.
  • Brinda varias facilidades para el desarrollo, como por ejemplo Live Reload de código y Dev-UI.
  • Es posible compilar aplicaciones de forma nativa, mediante el uso de GraalVM. Esto permite reducir drásticamente los tiempos de arranque y el consumo de memoria.
  • Permite combinar código imperativo y reactivo (no bloqueante).
  • Proyecto opensource liderado por RedHat, con una comunidad muy activa, que aporta tanto al core del producto, como a un ecosistema de extensiones llamado quarkiverse.


En el caso de éxito publicado en Quarkus, se destacan aspectos relevantes de esta arquitectura y los aportes a la comunidad generados desde el proyecto: MEF and Sofis use Quarkus as core component of a new innovative architecture