← Últimos artículos
💻 computer science

AI for software engineering: from probable to provable

El artículo propone superar los desafíos de la "vibe coding", como la especificación de objetivos y las alucinaciones, integrando la creatividad de la IA con la rigurosidad de los métodos de especificación formal y la verificación de programas.

Autores originales: Bertrand Meyer

Publicado 2026-04-24
📖 5 min de lectura🧠 Análisis profundo

Autores originales: Bertrand Meyer

Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

🤖 De la "Vibra" a la Verdad: ¿Puede la IA escribir código sin volverse loca?

Imagina que la Inteligencia Artificial (IA) para programar es como un chef muy talentoso pero un poco alucinado. Este chef (la IA) puede cocinar platos increíbles en segundos si le pides algo sencillo, como "hazme una tortilla". Pero si le pides un banquete complejo para 100 personas, a veces te sirve un plato que huele delicioso y parece una tortilla, pero en realidad es arena con un poco de huevo.

El artículo de Bertrand Meyer nos dice que, aunque la moda actual es el "Vibe Coding" (programar solo dando "vibras" o instrucciones generales a la IA), esto tiene dos grandes problemas:

  1. Pedir lo que quieres es difícil: Explicarle a la IA exactamente qué quieres es tan difícil como escribir el código tú mismo.
  2. Las alucinaciones: La IA a veces inventa cosas que no existen o que son falsas, y lo hace con tanta seguridad que te confías.

🍎 El problema de la "Probabilidad" vs. la "Certidumbre"

Para entender por qué esto es peligroso en programación, usa esta analogía:

  • En Medicina o Traducción (El mundo de la "Probabilidad"): Si un traductor automático te da una traducción al coreano y tiene un error de cada 100 palabras, ¡es genial! Es mucho mejor que no entender nada. Si un médico de IA diagnostica bien el 99% de las veces, es un éxito. Aquí, lo "casi perfecto" es suficiente.
  • En Programación (El mundo de la "Certidumbre"): El software es diferente. Un programa es como un avión. No puedes tener un avión que vuele bien el 99% de las veces y se estrelle el 1%. Si el código falla, el avión cae, o tu banco pierde millones. En software, o funciona perfecto, o es basura.

El autor nos dice que la IA actual es estadística: busca la respuesta más probable, no la correcta. Si tienes un sistema con 1.000 piezas y cada una tiene un 99.9% de probabilidad de estar bien, la probabilidad de que todo el sistema funcione es casi cero. ¡Es como construir un castillo de naipes donde cada carta tiene una pequeña posibilidad de ser de goma!

🎭 El "Bueno, el Malo y el Feo" del Software

Meyer clasifica el software en tres tipos, como si fueran personajes de una película:

  1. El "Casual" (C): Son apps sencillas, demos para inversores o scripts de fiesta. Si fallan, no pasa nada grave. Aquí, el "Vibe Coding" funciona genial. ¡Es divertido y rápido!
  2. El "Negocio" (B): Son los sistemas de bancos, aerolíneas o hospitales. Si fallan, hay problemas graves. Aquí, la IA sola no sirve porque no puede garantizar que no haya errores ocultos.
  3. El "Crítico" (A): Sistemas de naves espaciales o reactores nucleares. Aquí, la IA actual no puede entrar sin supervisión estricta.

El peligro es que la gente cree que la IA puede hacer todo el trabajo, pero en los sistemas importantes (B y A), la IA puede crear un bucle de alucinación: te da un código que parece perfecto, te metes en un callejón sin salida corrigiendo cosas que no están mal, y al final, el sistema es un desastre que nadie entiende.

💍 El Matrimonio Perfecto: La IA Creativa + El Abogado Estricto

¿Entonces, la IA es mala para programar? ¡No! El autor tiene una solución brillante. Imagina un matrimonio entre dos personas muy diferentes:

  • El Cónyuge "Hippie" (La IA): Es creativo, rápido, generoso con ideas y escribe código a toda velocidad.
  • El Cónyuge "Disciplinario" (La Verificación Formal): Es un abogado estricto, serio y aburrido. No le importa la creatividad; solo le importa que todo sea matemáticamente correcto.

La propuesta de Meyer es unirlos:
Deja que la IA (el Hippie) genere el código y las ideas. Pero, inmediatamente, pásalo por el abogado (la Verificación Formal).

¿Qué es la Verificación Formal? Imagina que en lugar de probar un coche conduciéndolo (pruebas), le haces una radiografía matemática que garantiza que el motor no va a explotar, sin necesidad de encenderlo.

🚀 El Futuro: "Vibe-Contracting" (Contratar con Vibra)

El futuro no es que la IA escriba el código y ya. El futuro es:

  1. La IA te ayuda a escribir las reglas del juego (especificaciones formales) con mucha precisión.
  2. La IA te ayuda a escribir el código.
  3. Una herramienta matemática (como un juez) revisa instantáneamente si el código cumple las reglas.

Si el código falla la prueba matemática, el juez lo rechaza y le dice a la IA: "¡Eso no vale, inténtalo de nuevo!".

En resumen:
No dejemos que la IA nos reemplace por completo. En su lugar, usemos su creatividad para ir rápido, pero usemos las matemáticas estrictas para asegurarnos de que no nos estrellemos. Es la única forma de pasar de lo "probable" (que funcione a veces) a lo "provable" (que funcione siempre).

¡Que no haya divorcio entre la IA y la Ingeniería de Software, sino una boda feliz! 💍🤖📐

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →