Saltar al contenido

El blog de Deska

Arquitecturas documentadas: el rol de las IA en la creación de Architecture Decision Records

Descubre cómo utilizar agentes de IA para automatizar la redacción de Architecture Decision Records (ADRs) y mantener el contexto técnico en tu equipo.

10 min de lectura

Los Architecture Decision Records (ADRs) son la memoria vital de un proyecto de software. Cuando un equipo decide cambiar de una base de datos relacional a un almacén de documentos, o elige un patrón específico de comunicación de microservicios, el razonamiento a menudo se desvanece en hilos de Slack o notas de reuniones. Mantener estos registros manualmente es una carga administrativa pesada que frecuentemente conduce al deterioro de la documentación. El uso de agentes de IA para la creación de Architecture Decision Records permite a los desarrolladores capturar la intención detrás de los cambios de código en tiempo real, asegurando que el "por qué" del sistema permanezca tan claro como el "qué."

La estructura de un Architecture Decision Record

Un ADR no es un documento de diseño grandioso creado antes de escribir una sola línea de código. En cambio, es un registro conciso y versionado de una elección específica. El formato más común sigue la plantilla popularizada por Michael Nygard, que incluye cinco secciones esenciales.

La sección de contexto describe el entorno actual y el problema específico que enfrenta el equipo. A esto le sigue la decisión, que establece la solución propuesta claramente. La sección de estado rastrea si la decisión está propuesta, aceptada, obsoleta o superada. La sección de consecuencias es quizás la más crítica, ya que describe las compensaciones, los nuevos riesgos y el trabajo de seguimiento requerido por la elección. Finalmente, los metadatos incluyen la fecha y las partes interesadas involucradas.

Por qué la documentación se queda atrás

Escribir es un modo cognitivo diferente al de programar. Los desarrolladores a menudo ven la documentación como una tarea sincrónica que interrumpe el flujo de construcción. Cuando se acerca una fecha límite, la prioridad se desplaza hacia la entrega, dejando el ADR para un futuro que rara vez llega. Esto crea una deuda técnica en forma de pérdida de contexto. Un nuevo ingeniero que se una al equipo seis meses después verá los detalles de implementación, pero no entenderá las restricciones que forzaron un diseño específico, quizás contraintuitivo.

Cómo los agentes de IA cambian el ciclo de vida

Los agentes de IA pueden cerrar la brecha entre el pensamiento arquitectónico y la documentación escrita. A diferencia de las interfaces simples de chat de LLM, los agentes pueden observar el estado de un repositorio, analizar el historial de git y sintetizar información de múltiples archivos. Cuando un agente está integrado en el espacio de trabajo de desarrollo, puede redactar un registro basado en los cambios reales que se están realizando.

Los agentes pueden ayudar de varias maneras:

  • Pueden escanear commits recientes para identificar patrones que sugieran un cambio arquitectónico significativo.
  • Pueden redactar la sección de consecuencias identificando posibles efectos secundarios en la base de código.
  • Pueden dar formato al markdown de acuerdo con la plantilla de ADR específica del equipo.
  • Pueden sugerir cuándo un ADR existente debe marcarse como superado por una nueva decisión.

Comparación entre redacción manual y asistida por agentes

FaseProceso ManualProceso Asistido por Agentes
DescubrimientoEl desarrollador recuerda discusiones internas.El agente analiza cambios de código e historial.
RedacciónEscribir desde una plantilla en blanco.El agente genera un primer borrador basado en el contexto.
ValidaciónRevisión por pares para exactitud y errores.Revisión humana solo para alineación estratégica.
MantenimientoA menudo se olvida mientras el sistema evoluciona.El agente avisa si el código se desvía.

Integración de agentes en el espacio de trabajo

Un entorno productivo para un arquitecto requiere ver tanto el código como la documentación simultáneamente. Herramientas como Deska proporcionan un canvas infinito donde puedes colocar terminales, editores y documentación lado a lado. Este diseño espacial es útil al usar agentes para la redacción. Puedes ejecutar un panel con el editor de código para revisar la implementación y otro panel con un agente como Claude Code para sintetizar el ADR.

El uso de coding agents dentro de un espacio de trabajo unificado te permite proporcionar al agente acceso directo a los archivos relevantes. Dado que Deska es local-first, los archivos y los datos de la sesión permanecen en tu máquina. Esto es crucial para el trabajo de arquitectura donde podrías estar discutiendo estrategias internas sensibles o próximos cambios de rumbo del producto.

El rol de Ask Deska

Puedes usar Ask Deska para coordinar el proceso de creación. Mediante voz o chat, puedes pedirle al asistente que abra un nuevo panel de notas y busque la plantilla para un nuevo ADR. El asistente puede entonces activar uno de los agentes integrados para completar los detalles técnicos basados en la rama actual. Esto reduce la fricción del cambio de contexto entre la terminal donde pruebas el código y el editor donde lo documentas.

Mejores prácticas para la documentación agéntica

Aunque los agentes son poderosos, no deben ser los únicos autores de la arquitectura. Un ADR es un contrato social dentro de un equipo. El agente actúa como un administrativo, capturando los datos y organizando la lógica, pero el ingeniero principal o el arquitecto debe validar el razonamiento.

  1. Revisa las consecuencias: Los agentes son excelentes para encontrar deuda técnica pero pueden pasar por alto consecuencias organizativas como la carga cognitiva del equipo.
  2. Mantén un estado claro: Asegúrate de que el agente marque el registro como "Borrador" hasta que un humano lo acepte oficialmente.
  3. Enlaza al código: Usa al agente para encontrar los archivos o módulos específicos afectados por la decisión y enlázalos en el registro.
  4. Mantenlo local: Guarda tus ADR en el mismo repositorio que el código.

Para los desarrolladores que necesitan monitorear estas actualizaciones mientras están lejos de su máquina principal, la aplicación mobile te permite verificar el progreso del agente o leer los últimos registros redactados a través de un relevo seguro. Esto asegura que el proceso de documentación no esté atado a una sola ubicación física.

Preguntas frecuentes

¿Pueden los agentes de IA entender compensaciones arquitectónicas complejas?

Los agentes son competentes para identificar patrones técnicos y compensaciones comunes encontradas en la literatura pública. Sin embargo, carecen del contexto comercial específico y de la dinámica interna del equipo a menos que se les proporcione explícitamente esa información en el prompt o la documentación.

¿Dónde deberían almacenarse los registros en un repositorio?

El estándar de la industria es una carpeta dedicada docs/adr. Almacenarlos junto con el código fuente asegura que estén versionados y visibles durante el proceso de revisión de código.

¿Es necesario usar un proveedor de IA específico para los ADR?

No, la elección del modelo depende de tus requisitos de privacidad y complejidad. Deska admite múltiples proveedores a través de sus modelos de pricing, incluyendo una opción de traer tu propia clave (BYOK) para el nivel de por vida, lo que te permite usar tu motor de inferencia preferido.

Comienza a documentar tu arquitectura

Automatizar los aspectos tediosos de la documentación te permite concentrarte en el diseño real de tu sistema. Usar un espacio de trabajo especializado para ejecutar agentes lado a lado con tu editor hace que la transición del código al registro sea fluida. Puedes download la aplicación para Mac, Windows o Linux para comenzar a organizar tus decisiones de arquitectura en un entorno diseñado para flujos de trabajo de desarrollo modernos.