La adopción de modelos de lenguaje grandes (LLM) en la ingeniería de software enfrenta un obstáculo crítico al trabajar con bases de código legadas: la falta de claridad semántica y la deuda técnica acumulada. A diferencia de los proyectos nuevos, donde los agentes funcionan bien, en sistemas complejos con acoplamiento fuerte, los modelos suelen generar inconsistencias o inventar conceptos duplicados porque el propio código no define una única fuente de verdad. El autor propone que la solución no es mejorar el modelo, sino preparar el código mediante un enfoque incremental basado en el Diseño Orientado al Dominio (DDD).
La metodología divide el trabajo en dos partes: estratégica y táctica. La parte estratégica, que requiere juicio humano para decidir qué cambiar y por qué, se centra en reducir la brecha de comunicación entre negocio y tecnología usando un lenguaje ubícuo. La parte táctica, la implementación mecánica, es delegada a los agentes de IA, cuyo coste ha disminuido drásticamente gracias a los LLM.
Para facilitar esto, el autor utiliza un sistema de manifiestos (.workflow.json) en cada repositorio que define contextos acotados, glosarios y dependencias. Estos archivos permiten a los sub-agentes entender las reglas del dominio sin ambigüedades. El ingeniero actúa como coordinador y revisor, mientras la IA ejecuta las tareas definidas. Este enfoque permite gestionar la deuda técnica de forma sostenible, asegurando que los agentes operen con precisión en entornos complejos.
