Cinco potenciales cambios de la IA generativa al ciclo de vida del desarrollo de software

Publicado el:

A medida que la IA generativa avance, esta afectará cada vez más las fases del proceso de desarrollo de software, incluyendo el papel de los humanos.

Si se tiene en cuenta el historial de escalamiento y la trayectoria de los modelos de IA generativos (los modelos de lenguajes grandes o LLM) especializados en codificación, el ciclo de vida del desarrollo de software (CVDS) está maduro para sufrir una disrupción, advierte Crowdbotics. 

Y no porque los desarrolladores vayan a ser reemplazados por máquinas, sino porque hay muchas áreas en el CVDS que encajan perfectamente con la IA y, más concretamente, con los LLM.

En un informe técnico reciente, Crowdbotics analizó cómo sería una renovación total del CVDS con una IA diseñada desde cero. Para ello, tomaron en cuenta cinco variables que rodean, controlan y, en última instancia, se verán influenciados por el futuro (aún hipotético) ciclo de vida del desarrollo de software:

Velocidad: ¿adiós al sprint de dos semanas gracias a la IA generativa de desarrollo de software?

El modelo actual de sprint de dos semanas, popularizado por Scrum a principios de la década de 2000, ha sido un estándar de la industria para equilibrar la productividad y la adaptabilidad en el desarrollo de software. 

Dos semanas se convirtieron esencialmente en el acuerdo de apretón de manos entre ingeniería y producto porque se consideraba tiempo suficiente para crear algo que valiera la pena ser mostrado en una reunión. 

Entonces, ¿qué sucede si ya no se necesitan dos semanas sino días, o incluso unas pocas horas?

Hoy en día, los asistentes de codificación con IA pueden aumentar la velocidad de los desarrolladores en un 50 % o más, al tiempo que agilizan las tareas que no implican codificación, como la elaboración de informes y la gestión de proyectos. 

Estimaciones sugieren que la IA podría reemplazar hasta el 80 % de las actividades de gestión de proyectos para 2030.

Dadas estas mejoras, el sprint tradicional de dos semanas se volverá demasiado largo. A medida que se reduzca el tiempo de desarrollo y se agilicen las tareas de generación de informes, es posible esperar un cambio hacia ciclos de sprint más cortos y dinámicos.

Equipos: Los humanos se convierten en verificadores, no en creadores

El papel de los ingenieros de software humanos cambiará drásticamente a medida que los modelos de IA generen código de manera rápida y rentable. Pero eso no va a suceder hoy ni mañana. La generación de código que existe hoy es útil, pero solo realiza tareas básicas. 

En el futuro, se espera que funciones inherentes al CVDS sean desarrolladas por múltiples agentes de IA, cada uno con un rol específico en el proceso de desarrollo de software. 

Por ejemplo, un agente podría definir el alcance y los objetivos del proyecto, mientras que otro se centraría en la planificación del proyecto y el análisis de calidad. Los ingenieros humanos supervisarán este proceso, proporcionarán información y verificarán los resultados generados por la IA.

Inteligencia: la captura y el acceso al conocimiento se automatizará

Capturar, almacenar y poner a disposición la gran cantidad de contenido creado durante el proceso de desarrollo de software es una tarea abrumadora, que requiere mucho tiempo y presupuesto y, a menudo, se hace de forma deficiente. 

Dado que la mayor parte de esta información se captura y almacena como texto, es un área propicia para que los LLM intervengan y ayuden a automatizar y limpiar el proceso.

La gestión del conocimiento consta básicamente de dos funciones: la captura del conocimiento, es decir, determinar cómo se almacena el conocimiento de manera eficaz y eficiente, y el acceso al conocimiento, es decir, determinar no sólo cómo se ofrece acceso al conocimiento, sino también cómo asegurarse de que las personas accedan a él.

Si bien tanto la captura como el acceso son interesantes e importantes, en Crowdbotics creen que las posibilidades del acceso son las más prometedoras porque, con la IA generativa, se puede hacer que todos estos datos y contexto se apliquen de manera proactiva en lugar de relegarlos al acceso únicamente. 

A medida que se capture información en un LLM, se puede extender ese modelo de contexto a otras aplicaciones.

Recursos: Los equipos de desarrollo global formarán un relevo

La globalización de los equipos de software se ha visto impulsada principalmente por el acceso a recursos de menor costo, no por una estrategia para maximizar la eficiencia. 

La entrega según el horario del sol es el epítome de la eficiencia del desarrollo de software, en el que los equipos globales “traspasan” el trabajo de manera secuencial e indefinida al siguiente equipo a medida que el mundo gira. IBM y otras empresas lo intentaron hace años, pero sin mucho éxito.

¿Por qué? Hay una multitud de razones, principalmente los costos de coordinación y transferencia de contexto. Si un equipo se bloquea debido a una mala transferencia, todo el proceso se detiene hasta que el equipo anterior vuelve a estar en línea, bloqueando efectivamente a dos equipos en el ínterin. 

De nuevo, capturar el contexto es una muy buena opción para la IA, y usar la IA para actualizar y compartir este contexto de manera consistente debería reducir drásticamente la probabilidad de que un equipo se estanque después de una transferencia.

En otras palabras, los recursos para el desarrollo pueden ser verdaderamente globales, tanto desde una perspectiva de ubicación física como desde una perspectiva temporal.

Consumo: aumentará la demanda de software

A medida que la IA generativa reduce el costo y el esfuerzo que requiere el desarrollo de software, puede parecer intuitivo esperar una disminución en la actividad general de desarrollo. Sin embargo, es probable que ocurra lo contrario. 

La energía es un buen ejemplo para ilustrar este punto: siempre esperamos que si nos volvemos más eficientes energéticamente, reduciremos el consumo de energía, pero ocurre todo lo contrario.

A medida que el desarrollo de software se vuelve más eficiente y accesible, aumentará la demanda de nuevas aplicaciones de software. Al menos cuatro factores contribuyen a este aumento de la demanda:

  • Mayor velocidad de desarrollo: la creación de software más rápida permite emprender más proyectos
  • Costos más bajos: Los costos de desarrollo más bajos hacen que las soluciones de software sean viables para una gama más amplia de aplicaciones y organizaciones
  • Dominios ampliados: la IA permite que el software penetre en nuevas áreas que antes se consideraban poco prácticas o demasiado complejas
  • Un grupo de talentos más amplio: las herramientas de IA harán que el desarrollo de software sea accesible a una gama más amplia de personas, lo que impulsará aún más la innovación y la creación

Este punto sobre el consumo resume los cuatro anteriores, es decir, que todas las señales apuntan a un crecimiento exponencial de la demanda de software. 

La IA desempeñará un papel central tanto en estimular como en satisfacer esa demanda. Pero no basta con decir que la IA desempeñará un papel central y luego agregarla donde sea posible; es fundamental repensar fundamentalmente cómo creamos software con la IA en el centro de cada proceso, herramienta y metodología, a lo largo del ciclo de vida del desarrollo de software.

No dejes de leer: ¿Ciberseguridad global en peligro? Investigadores chinos dieron con método cuántico que rompería distintos modelos de cifrado


Sigue nuestras redes sociales y se parte de nuestra comunidad 

Instagram

YouTube

X

TikTok

Recientes