Qué es el desarrollo guiado por especificaciones, por qué se ha disparado con los agentes de IA y qué ventajas e inconvenientes tiene para el negocio.
El Spec-Driven Development (SDD), o desarrollo guiado por especificaciones, consiste en algo sencillo: antes de escribir código, se describe por escrito y con detalle qué debe hacer el software, para quién y con qué reglas. Esa especificación se convierte en la fuente de verdad del proyecto.
Por qué se ha puesto de moda con los agentes de IA
Los agentes de IA ya pueden escribir buena parte del código, pero solo son tan buenos como las instrucciones que reciben. Si les pides algo ambiguo, construyen algo ambiguo. Una especificación clara funciona como un briefing perfecto: el agente sabe qué hacer, el equipo puede revisar si lo ha hecho bien y cualquier cambio se discute primero en el documento, no en fase de QA. En la práctica, el cuello de botella ha pasado de “escribir código” a “saber explicar qué queremos”.
Ventajas
- Más velocidad: con una buena especificación, los agentes entregan versiones funcionales en horas o días.
- Negocio y tecnología hablan el mismo idioma: la especificación es legible por ambos y se puede validar antes de invertir en desarrollo.
- Menos sorpresas: lo entregado se compara contra lo acordado, lo que facilita la calidad y la trazabilidad.
- Conocimiento documentado: el “por qué” de cada decisión queda escrito y no depende de una persona concreta.
Inconvenientes
- Exige más esfuerzo al principio: hay que dedicar tiempo a pensar y redactar antes de ver resultados.
- Una mala especificación se ejecuta muy rápido: si el documento está mal, el agente construirá el error con total eficacia.
- Riesgo de burocracia: en proyectos pequeños o muy exploratorios puede resultar excesivo.
- Sigue haciendo falta supervisión técnica: el código generado debe revisarse en seguridad, rendimiento y mantenimiento.
Dos frameworks para aplicar SDD en tu proyecto
No hace falta inventar el proceso desde cero. Hay dos herramientas gratuitas y de código abierto que se han convertido en la referencia, y ambas funcionan con los principales asistentes de código (GitHub Copilot, Claude Code, Cursor, Gemini CLI, etc.).
Spec Kit (GitHub)
Es la propuesta de GitHub y la más conocida del sector. Organiza el trabajo en fases muy claras: primero una “constitución” con los principios innegociables del proyecto, después la especificación, el plan técnico, la lista de tareas y, por último, la implementación por parte del agente. Encaja bien en proyectos nuevos, en funcionalidades grandes y en la modernización de sistemas heredados. Su punto débil es el peso del proceso: genera mucha documentación por cada cambio, lo que puede saturar al equipo que tiene que revisarla.
OpenSpec (Fission AI)
Es la alternativa ligera. Se instala en minutos y está pensada especialmente para proyectos que ya existen. Cada cambio se plantea como una propuesta que incluye el porqué, los requisitos, el enfoque técnico y las tareas, y solo describe lo que se añade, modifica o elimina. Cuando el cambio se completa, la especificación general del proyecto se actualiza. Su principal riesgo es que la especificación se desfase del código si el equipo no la mantiene al día.
¿Cuál elegir? Como regla general, Spec Kit para proyectos nuevos o de alto impacto donde compensa un proceso más estricto, y OpenSpec para evolucionar productos existentes con cambios frecuentes y un coste de adopción mínimo.
En resumen
Con los agentes de IA, el valor se desplaza de quien escribe código a quien sabe definir bien el problema. El SDD es la forma ordenada de aprovechar esa velocidad sin perder el control: menos improvisación y más claridad sobre qué queremos construir.
Referencias
- Birgitta Böckeler (Thoughtworks), “Understanding Spec-Driven-Development: Kiro, spec-kit, and Tessl”, martinfowler.com
- GitHub Spec Kit, repositorio oficial
- OpenSpec (Fission AI), repositorio oficial
- Visual Studio Magazine, “GitHub Open Sources Kit for Spec-Driven AI Development”
- InfoWorld, “4 cutting-edge tools for spec-driven development”
