Esta entrada describe el proyecto DerArchitekturkompass.de: una ayuda para la toma de decisiones en alemán que explica 146 conceptos de arquitectura de software en lenguaje cotidiano, cada uno con un ejemplo continuo, un diagrama de flujo animado y una relación abierta de sus ventajas e inconvenientes.
Por qué el conocimiento de arquitectura es de difícil acceso
Quien participa en un proyecto de TI se encuentra tarde o temprano con términos como circuit breaker, saga, CQRS o event sourcing. Detrás de cada uno de estos términos hay una decisión que marca un sistema durante años: cómo gestiona los fallos, cómo se concilian los datos entre servicios y qué ve un usuario cuando una parte del sistema no responde.
Las explicaciones disponibles de estos términos a menudo solo sirven a los especialistas. Muchas presuponen conocimientos previos, explican un término técnico con el siguiente o saltan directamente al código. Otras describen un concepto a partir de un producto concreto, de modo que no queda claro qué pertenece al concepto y qué al producto. Casi siempre falta la parte más importante para una decisión: qué ventajas tiene un enfoque y cuándo no encaja.
La decisión por un enfoque de arquitectura la toma por lo general el arquitecto, a menudo junto con el equipo de desarrollo. Su base son los requisitos de las demás partes implicadas: el departamento de negocio establece lo que el sistema debe hacer, los analistas de requisitos describen estos requisitos y los jefes de proyecto vigilan el presupuesto y los plazos. Muchas consecuencias de un enfoque afectan directamente al departamento de negocio, por ejemplo durante cuánto tiempo un cliente sigue viendo datos antiguos después de un cambio. Por eso, estas partes implicadas también necesitan entender qué cambia un enfoque en el sistema.
Qué es el Architekturkompass
El Architekturkompass (“brújula de arquitectura” en alemán) es una colección de actualmente 146 conceptos de arquitectura.
Todas las páginas de concepto tienen la misma estructura:
- Primero se explica brevemente la idea básica.
- A continuación, la página describe el desarrollo en detalle mediante un ejemplo. Un diagrama animado muestra este ejemplo paso a paso.
- Después, la página aclara cuándo tiene sentido usar el concepto y cuándo no.
- Luego menciona los inconvenientes típicos y los errores típicos.
- Por último, la página remite a enfoques relacionados, a fuentes y, cuando los hay, a herramientas adecuadas.

Los ejemplos proceden en su mayoría del día a día de una aseguradora: un portal de clientes, una declaración de siniestro, un calculador de tarifas. Así se ve en cada concepto a qué personas, sistemas y datos afecta.
Los conceptos se pueden encontrar por tema o a través del buscador:
- Por tema: 16 grupos temáticos, desde los fundamentos, pasando por la integración y los mensajes y eventos, hasta la arquitectura de seguridad y la modernización.
- A través del buscador: El buscador tiene en cuenta también palabras cotidianas que no aparecen literalmente en la página del concepto. Quien escribe „langsamer Dienst“ (“servicio lento”) llega al circuit breaker.
Entrar por la propia necesidad

Quien tiene un problema rara vez conoce ya el nombre de la solución. Por eso la página de inicio empieza con la pregunta „Was ist dir wichtig?“ ("¿Qué es importante para ti?"). Debajo aparecen 21 necesidades en seis grupos, formuladas como objetivo y no como término técnico, por ejemplo:
- Absorber picos de carga
- Seguir trabajando cuando hay fallos
- Procesar los mensajes duplicados una sola vez
- Sustituir los sistemas heredados paso a paso
- ….
Un clic en una necesidad muestra los conceptos correspondientes. Se pueden combinar varias necesidades; en ese caso solo se muestran los conceptos que cumplen todas las necesidades seleccionadas. Junto a cada necesidad figura el número de conceptos que quedarían tras hacer clic en ella. Las necesidades sin resultados aparecen en gris. Así se ve ya antes del clic si una combinación ofrece algún resultado.
Herramientas para los conceptos
La explicación de un concepto prescinde de nombres de productos. Pero quien quiere implementar un concepto necesita en algún momento una herramienta concreta. Por eso, muchas páginas de concepto indican herramientas adecuadas en el apartado „Werkzeuge und Umsetzungen“ (“herramientas e implementaciones”), y junto a los conceptos el Architekturkompass cuenta con una segunda sección con 219 herramientas de código abierto en 13 grupos, desde plataformas de mensajería y bases de datos hasta seguridad e identidad.

Cada página de herramienta muestra en qué conceptos aparece la herramienta y para qué se usa exactamente.
El mapa de los conceptos

El mapa („Landkarte“) muestra los 146 conceptos en una sola página, agrupados por tema. Unas líneas unen cada concepto con sus enfoques relacionados. Así se ve qué conceptos van juntos. En el mapa también se puede filtrar por necesidad, y cada punto lleva a la página de su concepto.
Del concepto a la decisión de arquitectura

Muchos equipos documentan sus decisiones de arquitectura como architecture decision record, ADR por sus siglas en inglés. Un ADR es un documento breve que describe una decisión, su motivo, las alternativas evaluadas y sus consecuencias. En cada página de concepto, el botón „Als Architekturentscheidung übernehmen“ (“Adoptar como decisión de arquitectura”) genera un borrador de este tipo en Markdown. Toma del concepto el problema, los enfoques relacionados como alternativas, las contrapartidas y las herramientas adecuadas. Para la situación de partida propia y la justificación contiene marcadores que el equipo rellena por sí mismo. El borrador se puede copiar o guardar como archivo.
Lista de favoritos y versión imprimible

Cualquier concepto se puede añadir a una lista de favoritos („Merkliste“). La lista se guarda solo en el propio navegador y no requiere cuenta de usuario. Además, cada página de concepto se puede imprimir o guardar como PDF, por ejemplo como material para una reunión.
Lo que el Architekturkompass no sustituye
Las 146 páginas de concepto han pasado una revisión editorial: el texto, el diagrama y los pasos de la animación se leyeron en paralelo y se ajustaron al mismo caso. Sin embargo, esta revisión no es una validación técnica por parte de expertos externos. El Architekturkompass explica conceptos y sus contrapartidas. Qué enfoque encaja en un sistema determinado depende de sus requisitos, sus condiciones y su equipo. Esa decisión la toman los propios implicados.
Conclusión
Las buenas decisiones de arquitectura surgen cuando todos los implicados entienden qué problema resuelve un enfoque y cuándo no encaja. El Architekturkompass pretende crear esa comprensión: con un ejemplo concreto en lugar de una definición abstracta, con un diagrama que muestra el mismo caso y con ventajas e inconvenientes que se nombran abiertamente.
Encontrarás el Architekturkompass en DerArchitekturkompass.de.
