← Volver al artículo
<!-- .slide: data-background-image="/articulos/sdd-con-ia/images/ai-chip.jpg" data-background-opacity="0.22" --> <div class="slide-brand"> <img src="/logos/unach-horizontal.png" alt="Universidad Adventista de Chile" class="unach-logo" /> <span class="divider"></span> <img src="/logos/dti-logo.svg" alt="DTI" class="dti-logo" /> </div> # Programar con IA usando SDD ### Spec-Driven Development en el DTI UNACH Una forma ordenada de pedirle a la inteligencia artificial que escriba software. --- ## ¿Qué significa "programar"? <div class="slide-grid"> <div> Programar es **darle instrucciones claras** a una máquina para que haga una tarea. Hoy nos apoyamos en **inteligencia artificial** para que escriba parte de esas instrucciones por nosotros. > Es como **cocinar con un asistente**: la IA prepara la receta, pero tú decides el plato. </div> <div> <img src="/articulos/sdd-con-ia/images/chef-cooking.jpg" alt="Chef cocinando" class="slide-photo" /> </div> </div> --- ## Dos formas de pedirle a la IA | | Vibecoding | Spec-Driven Development | | ------------ | -------------------------------- | -------------------------------- | | Cómo se pide | "Hazme esto rápido" | "Acordemos primero qué queremos" | | Velocidad | Muy rápido al inicio | Más lento al inicio | | Resultado | Funciona, pero a veces sorprende | Predecible y revisable | | Mantención | Cuesta más | Más fácil | --- ## Vibecoding <div class="slide-grid"> <div> > "IA, hazme una página que muestre los alumnos." - La IA improvisa. - El humano corrige sobre la marcha. - Bueno para **prototipos** y exploraciones. - Riesgo: nadie sabe exactamente qué se acordó construir. </div> <div> <img src="/articulos/sdd-con-ia/images/coder-workspace.jpg" alt="Escritorio de programador con código" class="slide-photo" /> </div> </div> --- ## Spec-Driven Development <div class="slide-grid"> <div> > "IA, propongamos primero **qué** queremos. Luego tú escribes." 1. Acordamos el **qué** y el **por qué**. 2. La IA propone una solución. 3. El humano revisa y aprueba. 4. La IA recién entonces escribe el código. </div> <div> <img src="/articulos/sdd-con-ia/images/blueprint.jpg" alt="Planos arquitectónicos sobre mesa" class="slide-photo" /> </div> </div> --- <!-- .slide: data-background-image="/articulos/sdd-con-ia/images/sticky-notes.jpg" data-background-opacity="0.15" --> ## OpenSpec en un minuto Una herramienta que ordena el flujo en **4 pasos**: 1. **Propose** — crear la propuesta de cambio. 2. **Apply** — implementar las tareas. 3. **Verify** — comprobar que coincide con lo propuesto. 4. **Archive** — guardar el cambio terminado. --- ## Ejercicio: agregar campo "teléfono" Imaginemos que queremos agregar el campo **teléfono** al perfil de usuario. -- ### Paso 1 — proponer ```bash openspec new change "add-phone-to-profile" ``` La IA genera 4 documentos: - proposal.md (por qué) - design.md (cómo) - specs (qué debe cumplir) - tasks.md (lista de tareas) -- ### Paso 2 — revisar El humano lee los documentos. Si algo no calza, lo corrige **antes** de que se escriba código. -- ### Paso 3 — implementar ```bash openspec status --change add-phone-to-profile ``` La IA va marcando tareas como completadas. El humano sólo aprueba. -- ### Paso 4 — archivar ```bash openspec archive add-phone-to-profile ``` El cambio queda documentado en el repositorio para siempre. --- ## Beneficios - **Decisiones por escrito** antes de que existan en código. - Cualquier persona del equipo puede entender qué se hizo y por qué. - Las propuestas se revisan como se revisa un proyecto académico. - Menos sorpresas al final. --- ## Contras - **Más lento al inicio**: hay que escribir antes de programar. - Requiere disciplina del equipo. - No tiene sentido para cambios triviales (cambiar un texto, un color). --- ## ¿Cuándo usar cada uno? - **Vibecoding** — probar una idea, hacer un demo, explorar. - **SDD con IA** — para proyectos reales que van a producción y deben mantenerse en el tiempo. > En el DTI estamos comenzando a trabajar con IA. Para ese trabajo > **recomendamos** seguir SDD desde el inicio. --- <!-- .slide: data-background-image="/articulos/sdd-con-ia/images/team-whiteboard.jpg" data-background-opacity="0.2" --> ## Nuestra recomendación en el DTI - Cuando un proyecto del DTI integre IA en su flujo de desarrollo, **partamos con SDD**. - La herramienta propuesta: **OpenSpec**. - Cada cambio importante pasaría por **propose → apply → verify → archive**. - La IA propone, el **humano siempre aprueba**. - Queda registro escrito para auditoría futura. --- <!-- .slide: data-background-image="/articulos/sdd-con-ia/images/ai-chip.jpg" data-background-opacity="0.28" --> <div class="slide-brand"> <img src="/logos/unach-horizontal.png" alt="Universidad Adventista de Chile" class="unach-logo" /> <span class="divider"></span> <img src="/logos/dti-logo.svg" alt="DTI" class="dti-logo" /> </div> # Gracias ¿Quieres aplicar SDD con IA a tu próximo proyecto? Conversemos con el **DTI UNACH**. `wiki-sistemas.unach.app`