Herramientas de usuario

Herramientas del sitio


cursos:sdd:presentacion

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
cursos:sdd:presentacion [2026/11/02 14:53] – Agrupa arquitectura, diseño, esqueleto y framework en SDD centrado en la arquitectura claudecursos:sdd:presentacion [2026/11/02 15:04] (actual) – Añade patrones agénticos antes de guardarraíles deterministas claude
Línea 69: Línea 69:
 [[cursos:sdd:07-agentes|Agentes]]: cómo se escribe uno. [[cursos:sdd:07-agentes|Agentes]]: cómo se escribe uno.
  
-===== 7. SDD centrado en la arquitectura =====+===== 7. ¿Hace falta conocer el framework o el lenguaje? =====
  
-El documento principal no describe cada funcionalidad, sino la **estructura del sistema**: fronteras, interfaces, responsabilidades y decisiones técnicas. Tú defines la arquitectura y la IA la implementa.+La IA los conoce mejor que tú: la sintaxis y la API las pone ella. El problema es que **hay que revisar el código**, y no puedes revisar lo que no entiendes. Hay que conocerlos lo suficiente para leerlos y juzgarlos, no para escribirlos de memoria. 
 + 
 +[[cursos:sdd:09-mcp#context7|Context7]]: la documentación actual de cada librería, dentro del agente. 
 + 
 +===== 8. SDD: especificar antes de programar ===== 
 + 
 +«Hay que poder exportar los pedidos» esconde cinco decisiones, y el agente las toma solo y sin avisar. SDD las saca a documentos antes del código, y esos documentos son la entrada del agente. **Entre fase y fase, una persona aprueba.** 
 + 
 +^ Documento ^ Qué contesta ^ 
 +| ''requirements.md'' | El QUÉ: qué tiene que pasar y cómo se comprueba | 
 +| ''design.md'' | El CÓMO: arquitectura, modelo de datos, decisiones | 
 +| ''tasks.md'' | El plan: pasos pequeños y verificables | 
 + 
 +[[cursos:sdd:10-spec-driven-development|Spec-driven development]]: el flujo completo. 
 + 
 +==== ¿Realmente funciona? ==== 
 + 
 +No como dogma. La prueba de Scott Logic: Spec Kit frente a su forma habitual, con incrementos pequeños y prompts sencillos: 
 + 
 +^ ^ Agente ^ Revisión humana ^ Markdown ^ Código ^ 
 +| Con Spec Kit | 33 min | 3,5 h | 2.577 líneas | 689 líneas | 
 +| Sin especificación | 8 min | 24 min | 0 | 1.000 líneas | 
 + 
 +Especifica lo que no cabe en una frase, y que la especificación sea corta: lo que vale es el diseño, no el volumen de //markdown//. 
 + 
 +[[https://blog.scottlogic.com/2025/11/26/putting-spec-kit-through-its-paces-radical-idea-or-reinvented-waterfall.html|Putting Spec Kit through its paces]]: ¿idea radical o cascada reinventada? 
 + 
 +===== 9. SDD centrado en la arquitectura ===== 
 + 
 +Variante de SDD: el documento principal no describe cada funcionalidad, sino la **estructura del sistema**: fronteras, interfaces, responsabilidades y decisiones técnicas. Tú defines la arquitectura y la IA la implementa.
  
   * ''VISION.md'' y ''ARCHITECTURE.md'' en el repositorio: el contexto de cada tarea.   * ''VISION.md'' y ''ARCHITECTURE.md'' en el repositorio: el contexto de cada tarea.
Línea 80: Línea 109:
  
 [[cursos:sdd:10-spec-driven-development#sdd_centrado_en_la_arquitectura|SDD centrado en la arquitectura]]: la explicación completa. [[cursos:sdd:10-spec-driven-development#sdd_centrado_en_la_arquitectura|SDD centrado en la arquitectura]]: la explicación completa.
- 
-==== ¿Hace falta conocer el framework o el lenguaje? ==== 
- 
-La IA los conoce mejor que tú: la sintaxis y la API las pone ella. El problema es que **hay que revisar el código**, y no puedes revisar lo que no entiendes. Hay que conocerlos lo suficiente para leerlos y juzgarlos, no para escribirlos de memoria. 
- 
-[[cursos:sdd:09-mcp#context7|Context7]]: la documentación actual de cada librería, dentro del agente. 
  
 ==== Tú haces la arquitectura, la IA escribe el código ==== ==== Tú haces la arquitectura, la IA escribe el código ====
Línea 105: Línea 128:
 [[https://www.infoq.com/articles/skeleton-architecture|Skeleton Architecture]]: el esqueleto lo pones tú, el tejido la IA. [[https://www.infoq.com/articles/skeleton-architecture|Skeleton Architecture]]: el esqueleto lo pones tú, el tejido la IA.
  
-===== 8. Una tarea pequeña cada vez =====+==== Una tarea pequeña cada vez ====
  
 Se pide un trozo, se prueba y se sigue. Si sale mal, no le pidas que lo deshaga: vuelve al último punto bueno y empieza una sesión nueva con más límites. Se pide un trozo, se prueba y se sigue. Si sale mal, no le pidas que lo deshaga: vuelve al último punto bueno y empieza una sesión nueva con más límites.
Línea 111: Línea 134:
 [[https://replit.discourse.group/t/pair-programming-with-replits-ais/33|Pair programming con la IA]]: el ciclo de planificar, implementar, probar y volver atrás. [[https://replit.discourse.group/t/pair-programming-with-replits-ais/33|Pair programming con la IA]]: el ciclo de planificar, implementar, probar y volver atrás.
  
-===== 9. Guardarraíles deterministas =====+===== 10. Patrones agénticos =====
  
-La IA no da dos veces el mismo resultado, sus comprobaciones sí tienen que darlo. El agente las lanza en su bucle y corrige hasta que pasan:+Le pides algo a la IA y lo hace mal. Le dices que lo revise y encuentra el error. ¿WTF? La IA es así y hay que vivir con ello. Programar con IA es saber trabajar con ella para que funcione bien, y para eso hay una serie de patrones:
  
-  * **JUnit**: que hace lo que tiene que hacer. +^ Patrón ^ En qué consiste ^ 
-  * **ArchUnit**: que respeta la arquitectura. +| Planificador-Ejecutor | Uno hace el plan y se revisa antes de tocar nada | 
-  * **Métricas**: cobertura, complejidad ciclomática, CRAP.+| Ejecutor-Revisor | Uno hace el trabajo y otro lo revisa con criterios claros | 
 +| Adversarios | Uno intenta romper lo que ha hecho el otro | 
 +| Razonador-Refutador | Uno propone la causa de un fallo y otro intenta desmontarla | 
 +| Best-of-N | Varios intentos, y se queda el mejor |
  
-[[cursos:sdd:15-herramientas-deterministas|Herramientas deterministas]]: SonarQube, Snyk y cómo meterlas en el bucle.+Empieza por lo más simple: cada patrón añade coste y tiempo.
  
-===== 10. SDD, ¿realmente funciona? =====+[[cursos:sdd:05-patrones-agenticos|Patrones agénticos]]: todos, con su ejemplo.
  
-No como dogma. La prueba de Scott Logic: Spec Kit frente a su forma habitual, con incrementos pequeños y prompts sencillos:+===== 11. Guardarraíles deterministas =====
  
-^ ^ Agente ^ Revisión humana ^ Markdown ^ Código ^ +Como no se acaba de confiar en la IA, se añade software determinista: da siempre el mismo resultado. El agente lo lanza en su bucle y corrige hasta que pasa:
-| Con Spec Kit | 33 min | 3,5 h | 2.577 líneas | 689 líneas | +
-| Sin especificación | 8 min | 24 min | 0 | 1.000 líneas |+
  
-Especifica lo que no cabe en una frase, y que la especificación sea corta: lo que vale es el diseño, no el volumen de //markdown//.+  * **JUnit**: que hace lo que tiene que hacer. 
 +  * **ArchUnit**: que respeta la arquitectura. 
 +  * **Métricas**: cobertura, complejidad ciclomática, CRAP.
  
-[[https://blog.scottlogic.com/2025/11/26/putting-spec-kit-through-its-paces-radical-idea-or-reinvented-waterfall.html|Putting Spec Kit through its paces]]: ¿idea radical o cascada reinventada?+[[cursos:sdd:15-herramientas-deterministas|Herramientas deterministas]]: SonarQube, Snyk y cómo meterlas en el bucle.
  
cursos/sdd/presentacion.1793627611.txt.gz · Última modificación: por claude