DIMETEL – Universidad de Carabobo

Arquitectura hexagonal: ¿qué es y porqué es clave para un software ágil?

Publicado el 10 junio, 2024

¿Qué es la arquitectura hexagonal?

La arquitectura hexagonal es un tipo de arquitectura de software que busca separar el core lógico de la aplicación y dejarlo en el centro, aislado del exterior y de otras interacciones. Este tipo de arquitectura cambia el foco del programador que se centra más en diferenciar entre el interior y el exterior del software.

Esta conexión se realiza mediante puerto y se implementa por lo que se conoce como adaptadores. De ahí que la arquitectura hexagonal sea conocida también de forma habitual como arquitectura de puertos y adaptadores. 

La parte exterior del software es UI, mensajería, base de datos mientras que la parte interior se refiere a los casos prácticos y al modelo domain que se construye sobre estos casos.

La arquitectura hexagonal permite que una aplicación sea dirigida por igual por usuarios, programas, pruebas automatizadas o scripts por lotes. Además, esta arquitectura también posibilita que la aplicación se ejecute de forma aislada de sus dispositivos de ejecución y bases de datos.

Este tipo de arquitectura logra desacoplar capas de nuestra aplicación para que evolucionen de manera aislada. Así se pueden testear estas capas sin que intervengan otras externas. Esta arquitectura se suele representar gráficamente con forma de hexágono, pero el número de lados no es lo que importa, sino lo que estos representan. Cada lado representa un puerto hacia dentro o fuera de la aplicación