Desarrollo basado en evidencia
La disciplina que falta en la ingeniería asistida por IA
Los equipos adoptaron herramientas de codificación de IA, vieron picos de velocidad a corto plazo y luego pagaron el impuesto de verificación en depuración, regresiones e incidentes de producción.
La brecha no es generacional. La brecha es una prueba. El desarrollo basado en evidencia convierte esa brecha en un flujo de trabajo repetible con puertas explícitas.
El bucle
El modelo es simple: definir la intención, probar la brecha, capturar la línea de base, implementar, probar la aprobación, capturar el resultado y verificar las dimensiones de calidad antes de la revisión.
La restricción crítica es la secuencia. Los pasos previos a la implementación crean confiabilidad; Los pasos posteriores a la implementación generan confianza.
| Fase | ¿Qué pasa? Por qué es importante | | --- | --- | --- | | Documento | Escriba lo que significa hecho antes de la implementación. | Evita requisitos desviados y criterios de éxito vagos. | | Prueba: Falla | Defina y ejecute pruebas que demuestren que existe la brecha. | Confirma que estás probando comportamientos, no suposiciones. | | Captura: Antes | Registre los resultados de referencia antes de tocar la implementación. | Proporciona pruebas no negociables para revisores y auditorías futuras. | | Implementar | Aplique el cambio con asistencia de IA bajo restricciones. | La ejecución se mantiene rápida mientras la barra sigue definida por el ser humano. | | Prueba: Pasar | Ejecute pruebas específicas y confirme que el comportamiento ya pasó. | Valida el cambio y resuelve los criterios de aceptación exactos. | | Captura: Después | Recopile artefactos equivalentes posteriores al cambio. | Permite una comparación clara antes/después. | | Verificar | Audite la seguridad, la accesibilidad, el rendimiento, los documentos y la deriva. | Detecta modos de falla que las pruebas por sí solas fallan. | | Revisión | El revisor humano acepta o rechaza basándose en la evidencia. | Mantiene la responsabilidad con los ingenieros, no las indicaciones. |
:::nombre del gráfico: ImplementationLoopDiagram título: El bucle de implementación: restricciones definidas por humanos, ejecución asistida por IA. :::
| Fase | Que ocurre | Por que importa |
|---|---|---|
| Document | Escriba lo que significa hecho antes de la implementación. | Evita requisitos desviados y criterios de éxito vagos. |
| Prueba: Fallar | Defina y ejecute pruebas que demuestren que existe la brecha. | Confirma que estás probando comportamientos, no suposiciones. |
| Captura: Antes | Registre los resultados de referencia antes de tocar la implementación. | Proporciona pruebas no negociables para revisores y auditorías futuras. |
| Implement | Aplique el cambio con asistencia de IA bajo restricciones. | La ejecución se mantiene rápida mientras la barra sigue definida por el ser humano. |
| Prueba: Pasar | Ejecute pruebas específicas y confirme que el comportamiento ya pasó. | Valida el cambio y resuelve los criterios de aceptación exactos. |
| Captura: Después | Recopile artefactos equivalentes posteriores al cambio. | Permite una comparación clara antes/después. |
| Verify | Audite la seguridad, la accesibilidad, el rendimiento, los documentos y la deriva. | Detecta modos de falla que las pruebas por sí solas fallan. |
| Review | El revisor humano acepta o rechaza basándose en la evidencia. | Mantiene la responsabilidad con los ingenieros, no las indicaciones. |
Antes de que la evidencia sea irreversible en la práctica
En teoría, los equipos pueden reconstruir una línea de base después de que comienza la implementación, pero casi nadie lo hace. El impulso cambia para fijarse en el futuro.
Es por eso que la evidencia previa faltante se trata como una condición de reinicio en bucles disciplinados.
:::nombre gráfico: MaturityLadder título: Modelo de madurez: ingeniería ad-hoc a verificada por auditoría. :::
La auditoria: diez dimensiones
| Dimension | Que detecta |
|---|---|
| Build | Compilación, pelusa e integridad de la suite |
| Telemetry | Fugas de PII y cargas útiles de registro inseguras |
| Accessibility | Puntos de referencia, flujo de teclado, jerarquía de encabezados |
| Security | Secretos, riesgo de inyección, fallas de dependencia. |
| Performance | N+1 caminos, bucles ilimitados, pérdidas de memoria |
| Documentation | Deriva de especificaciones e implementación |
| Cobertura de prueba | Cambios de comportamiento sin pruebas de coincidencia |
| TODO Deuda | Seguimientos omitidos y marcadores de posición no resueltos |
| Manejo de errores | Errores tragados y partes internas filtradas |
| Verbosidad de la IA | Comentarios redundantes y abstracciones innecesarias. |
La auditoría: diez dimensiones
| Dimensión | Lo que atrapa | | --- | --- | | Construir | Compilación, pelusa e integridad del conjunto | | Telemetría | Fugas de PII y cargas útiles de registro inseguras | | Accesibilidad | Puntos de referencia, flujo de teclado, jerarquía de encabezados | | Seguridad | Secretos, riesgo de inyección, fallas de dependencia | | Rendimiento | N+1 caminos, bucles ilimitados, pérdidas de memoria | | Documentación | Deriva de especificaciones e implementación | | Cobertura de prueba | Cambios de comportamiento sin pruebas de coincidencia | | TODO Deuda | Seguimientos omitidos y marcadores de posición no resueltos | | Manejo de errores | Errores tragados y partes internas filtradas | | Verbosidad de la IA | Comentarios redundantes y abstracciones innecesarias |
:::nombre del gráfico: AuditRadarChart título: Postura de la auditoría antes y después de las comprobaciones basadas en evidencia. :::
Ejemplos de evidencia por dominio
| Dominio | Evidencia antes | Evidencia despues |
|---|---|---|
| Punto final API | respuesta curl con estado incorrecto | respuesta curl con estado y esquema esperados |
| Migración de base de datos | Consulta antes de la migración | Consulta que muestra nuevas columnas y valores poblados |
| Infrastructure | Salida del plan actual | Planificar y aplicar el resultado deseado |
| Performance | Línea base de referencia | Delta de referencia después de la optimización |
| Parche de seguridad | hallazgo del escáner | Informe de limpieza del escáner |
La carga de la prueba en las solicitudes de extracción
Referencias
- Kent Beck (2025) Codificación aumentada: más allá de las vibraciones
- ThoughtWorks (2025) Desarrollo de prueba primero asistido por IA
- METR (2025) Las herramientas de inteligencia artificial hicieron que los desarrolladores experimentados fueran un 19% más lentos
- Addy Osmani (2026) La IA escribe código más rápido. Su trabajo aún es demostrar que funciona.
- Microsoft .NET (2026) Diez meses con Copilot Coding Agent en dotnet/runtime