Comunidad de Byte TI

Únete a la Comunidad de Directivos de Tecnología, Ciberseguridad e Innovación Byte TI

Encontrarás un espacio diseñado para líderes como tú.

Leda MC Inteligencia artificial

Inteligencia artificial. Un cambio drástico en la forma de desarrollar

Raúl Fernández, Director de operaciones de LedaMC
Raúl Fernández, Director de operaciones de LedaMC

En los últimos años se han producido cambios tan radicales en la forma de construir el software que no es extraño que mucha gente se pregunte si las máquinas no sustituirán a los programadores en poco tiempo. La respuesta es no, al menos a corto plazo. La tendencia no es hacia la automatización total, sino hacia la colaboración entre los desarrolladores y los agentes de inteligencia artificial. De hecho, el trabajo de los programadores se vuelve más creativo y más valioso y pueden aportar más valor al negocio al haberse liberado de muchas tareas tediosas y permitirles centrase en como cubrir las necesidades con un código de calidad.

Los últimos años ya hemos visto cambios espectaculares en la forma de construir el software. DevOps permitió que se consiguieran automatizar muchas de las tareas tediosas de los desarrolladores, como la integración de versiones o las pruebas, consiguiendo importantes mejoras de productividad y de calidad en los desarrollos. También permitió que los desarrolladores pudieran prestar más atención a las tareas importantes al liberarles de muchas actividades de bajo valor y que eran fuentes potenciales de errores.

Ahora con la Inteligencia Artificial hemos tenido un nuevo salto que impacta en la productividad de los equipos de desarrollo. Las últimas encuestas indican que más del 90% de las empresas utilizan IA en sus equipos de desarrollo. Está introducción ha sido muy rápida porque las mismas encuestas daban datos del 61% hace sólo un año.

Como consecuencia de ello las mejoras de Productividad han sido drásticas. El 62% de los ingenieros de software asegura haber logrado aumento del 25% en productividad por el apoyo de las nuevas herramientas de IA y el 8% ha duplicado su rendimiento. Las cifras hablan por sí solas del cambio que supone en la Ingeniería se Software la introducción de la inteligencia artificial.

Igualmente, y como como consecuencia del uso la IA, las mismas encuestas indican que, una mayoría muy general (el 81% de los encuestados) considera que, al menos, una cuarta parte del trabajo de ingeniería actual se automatizará en los próximos años. Otros analistas son incluso más optimistas y piensan que este proceso se acelerará cuando se superen los problemas iniciales de implantación. Marc Benioff, CEO de Salesforce, afirmó recientemente que su empresa podría dejar de contratar ingenieros de software en 2025.

Según Benioff, el notable incremento en la productividad de sus equipos se debe a una colaboración más estrecha entre ingenieros y agentes. Es decir, están logrando más con menos personas. Marc Zuckerberg también ha comentado en una entrevista que Meta y otras compañías tecnológicas implementarán sistemas de IA capaces de realizar el trabajo de ingenieros de software de nivel medio a partir de este mismo año, y Google ya ha revelado que más del 25% de su nuevo código es generado por IA.

Código optimizado por la inteligencia artificial

El éxito y la notoriedad de la inteligencia artificial no debe distraernos y quitar importancia a otros elementos y herramientas de la ingeniería software. Es muy importante la gestión correcta de los proyectos, la realización de pruebas precisas y el control de calidad del software resultante. El código debe estar optimizado y bien documentado. No olvidemos que por bueno que sea el código, habrá errores que habrá que detectar y depurar en producción. Un código complejo, mal documentado y poco conocido por los desarrolladores puede ser muy complicado de depurar.

Resulta crucial poder medir el resultado y la calidad del trabajo y también poder compararnos con instalaciones similares. Puede darse el caso que estemos muy satisfechos porque estamos consiguiendo mejoras de productividad del 20% y no vemos que nuestra competencia está consiguiendo mejoras del 40% o superiores  ¿Cómo podemos conseguir esto?

Una alternativa válida es establecer un sistema que permita cuantificar la productividad y calidad del software de manera objetiva. Por ejemplo, utilizar métricas estándar ISO/IEC como los puntos función para evaluar tanto la cantidad como la calidad del código generado, sin importar si fue escrito por humanos o por IA.

Esto no solo facilita la identificación de áreas de mejora, sino que también asegura que el producto final cumpla con las expectativas del cliente, sea económicamente viable y nos permite medir las mejoras de nuestra productividad y de nuestros proveedores.  Además, podemos conocer si el tiempo de entrega de los proyectos ha disminuido, si la calidad del software ha mejorado o si los costes asociados se han optimizado. Estas métricas son cruciales para tomar decisiones fundamentadas sobre cómo continuar utilizando estas herramientas.

El benchmarking posibilita la comparación del rendimiento de equipos, tecnologías y procesos en relación con los estándares de la industria o con resultados históricos de la propia organización. En este contexto, el benchmarking adquiere una relevancia sin precedentes, ya que proporciona una visión clara de cómo la implementación de la IA está impactando la productividad y si realmente está contribuyendo a alcanzar nuevos niveles de eficiencia.

La inteligencia artificial es un aliado estratégico del talento humano para lograr objetivos mucho más ambiciosos. Y el mayor reto será no sólo cómo conseguir un futuro más productivo y competitivo, sino también más creativo y humano.

Raúl Fernández, Director de operaciones de LedaMC

Deja un comentario

Scroll al inicio