Estrategias para desacoplar funcionalidades y facilitar el desarrollo de software en instituciones públicas: el caso de la Universidad Nacional de Río Negro - Castro, Patricio Nicolas (2025)
Este proyecto tiene como propósito explorar y adoptar la arquitectura Vertical Slice Architecture (VSA), cuyo enfoque prioriza la organización del código en "slices" o segmentos verticales orientados a funcionalidades específicas. La VSA se presenta como una alternativa para instituciones públicas, al ofrecer un diseño centrado en el usuario y en los casos de uso en la que mejora significativamente la claridad, mantenibilidad y escalabilidad de los sistemas. A diferencia de las arquitecturas tradicionales basadas en capas horizontales, este modelo permite que cada funcionalidad se implemente de manera integral dentro de cada segmento, ya que abarca desde la interfaz de usuario hasta la capa de persistencia de datos. Este enfoque asegura una alineación directa con los procesos institucionales y la misión estratégica de la organización. La VSA se caracteriza por su capacidad para encapsular todos los componentes necesarios (lógica de negocio, interfaces y acceso a datos) dentro de cada slice vertical. Esta modularidad facilita el aislamiento funcional, lo que permite realizar refactorizaciones, pruebas unitarias y de integración y reducir el riesgo de interferir con sistemas legados u otras funcionalidades del sistema. Tal cualidad resulta particularmente relevante en entornos públicos, donde la coexistencia con tecnologías heredadas y procesos burocráticos rígidos exige soluciones que minimicen el riesgo operativo durante actualizaciones o migraciones. Adicionalmente, la arquitectura admite un diseño escalable: funcionalidades simples se resuelven con estructuras simples, mientras que casos de uso complejos incorporan capas de abstracción progresivas, esto aumenta su flexibilidad y favorece la adaptabilidad ante cambios normativos o técnicos, recurrentes en el sector público. Un contraste crítico con las arquitecturas multicapa tradicionales radica en la reducción de dependencias transversales. En modelos horizontales, componentes como bases de datos o servicios compartidos suelen generar acoplamientos que dificultan puntualmente las modificaciones. La VSA, en cambio, mitiga este riesgo al limitar el alcance de los cambios a slices específicos. El trabajo también explora patrones arquitectónicos complementarios para optimizar la VSA, que incluyen Transaction Script, CQRS y Mediator. Estos modelos refuerzan la cohesión dentro de cada slice. También, se realiza una comparativa con la Arquitectura Hexagonal, se discuten ventajas, desventajas, inclusive la curva de aprendizaje en cada caso. Al finalizar se valida mediante un caso de estudio referido a un sistema de información de la Universidad Nacional de Río Negro con código de para ilustrar su implementación.