Cómo mantener alineados la especificación, la documentación, la demo y el código
Esta guía describe un flujo de trabajo práctico para mantener alineados con el tiempo la especificación del producto, la documentación, el comportamiento de la demo y el trabajo de implementación.
El problema central
La deriva del producto rara vez empieza con un error dramático. Normalmente comienza con pequeños desajustes.
Ejemplos:
- la demo añade un nuevo flujo de trabajo pero la especificación nunca se actualiza
- la documentación describe una función que ya no se comporta así
- el código implementa un atajo conveniente que viola una regla del producto
- las comprobaciones de validación solo hacen cumplir la sintaxis, no la intención del producto
La IA puede acelerar todavía más todo esto si el flujo de alineación es débil.
El modelo de alineación
Usa este orden de autoridad:
- especificación del producto
- guía de implementación
- documentación del estado actual
- comportamiento de la demo o de la aplicación
- pruebas y reglas de validación
Las capas inferiores deben respaldar a las superiores. Si entran en conflicto, actualiza la cadena de forma intencionada en lugar de dejar que el artefacto más visible gane por defecto.
Flujo de trabajo recomendado
1. Empieza por el cambio en la especificación
Si cambia un flujo de trabajo visible para el usuario o una regla del producto, actualiza primero la especificación o guía correspondiente.
Usa:
AGENTS.mdpara reglas y flujos de trabajo a nivel de productoAGENTS-Implementation.mdpara reglas tácticas del repositorio y de la entrega
2. Actualiza la documentación del estado actual
Si el cambio afecta a lo que existe ahora, actualiza la documentación que describe el estado actual.
Ejemplos típicos:
README.mddocs/Development.mddocs/Deployment.md- contenido nuevo o revisado de aprendizaje, wiki o blog cuando corresponda
3. Actualiza la demo o la implementación
Solo después de que la intención esté clara se debe cambiar la demo o la aplicación.
Esto ayuda a evitar el patrón habitual en el que un prototipo se convierte silenciosamente en la fuente de verdad.
4. Añade o actualiza la validación
Después pregunta qué se puede comprobar automáticamente.
Ejemplos:
- integridad de claves de localización
- presencia de archivos obligatorios
- generación de metadatos
- validación de enlaces
- pruebas específicas del flujo de trabajo
No todas las reglas pueden automatizarse de inmediato, pero las reglas importantes no deberían depender solo de la memoria.
5. Revisa con respecto a la especificación, no solo al resultado
Al revisar cambios, no te quedes en:
- funciona
- se ve bien
- pasan las pruebas
Pregunta también:
- coincide con el flujo de trabajo documentado
- preserva el límite de producto requerido
- la documentación y la presentación del estado actual siguieron siendo honestas
Cómo tratar los descubrimientos de la demo
A veces la demo enseña al equipo algo mejor que la especificación original.
Eso es útil. La respuesta correcta es:
- documentar el descubrimiento
- decidir si el cambio de flujo de trabajo es intencionado
- actualizar la especificación y la documentación
- mantener la implementación alineada con la decisión actualizada
La respuesta incorrecta es dejar que la demo gane en silencio porque ya existe.
Cómo tratar la implementación asistida por IA
Con IA, este flujo de trabajo se vuelve aún más importante porque los asistentes suelen optimizar la plausibilidad local.
Un buen ciclo de alineación es:
- escribir o actualizar la especificación
- generar la implementación
- comparar el resultado con la especificación
- actualizar la documentación si cambió el comportamiento actual
- añadir validación cuando sea práctico
Ejemplo de Let Books
El repositorio ya contiene una cadena de alineación útil:
AGENTS.mdpara la dirección del productoAGENTS-Implementation.mdpara reglas tácticasREADME.mdpara la presentación del estado actualdocs/para reglas de conocimiento y publicación- documentación de despliegue y desarrollo para la guía de validación
Esa estructura debe usarse de forma deliberada cada vez que se añadan nuevas funciones, documentación o explicaciones públicas.
Lista de comprobación
Antes de fusionar un cambio importante, comprueba:
- ¿La regla o el flujo de trabajo del producto quedó documentado con claridad?
- ¿La documentación del estado actual sigue coincidiendo con la realidad?
- ¿La demo o la implementación reflejan la regla pretendida?
- ¿Hay al menos un mecanismo de validación o revisión que proteja el cambio?
- ¿Otra persona colaboradora podría entender más tarde la decisión?
Lecturas adicionales
../spec-driven-content-program.md../wiki/es/demo-spec-alignment.md../wiki/es/spec-driven-development.md../blog/es/spec-driven-development-in-let-books.md