Icono del sitio 911 Noticias

¿Puede la IA salvar la modernización de las aplicaciones? Cientos de miles de millones de dólares en juego

¿Puede la IA salvar la modernización de las aplicaciones?  Cientos de miles de millones de dólares en juego

En el panorama tecnológico actual, acelerado y en constante cambio, las organizaciones deben modernizar aplicaciones software y construir una base flexible para la innovación futura para seguir siendo competitivos.

El icónico fabricante de muebles de bricolaje ikea lo hizo bien. Primero compró el servicio en línea TaskRabbit para ayudar a los clientes a quienes no les gusta ensamblar sus propios mueblesuna incursión en software (especialmente móvil). Después, modernizó su procesamiento de pagos. Dentro Junio ​​de 2021, habían visto un aumento del 300% en las ventas de comercio electrónico resultado directo de sus esfuerzos de transformación.

Pero Nike no solo lo hizo. lo cogieron. Gastaron $400 millones para actualizar sus sistemas ERP y la pérdida comercial final fue de más de $100 millones. La empresa tuvo que invertir otros cinco años y 400 millones de dólares adicionales para encarrilar con éxito el proyecto.

Estos ejemplos muestran lo que está en juego cuando se modernizan las aplicaciones de la manera correcta. El alcance potencial del trabajo es enorme, al igual que la inversión requerida. Pero recientes y asombrosos avances en inteligencia artificial (AI) Ayudan. Las últimas herramientas de automatización impulsadas por IA permiten a las empresas modernizar las aplicaciones mucho más rápido y con mucho menos esfuerzo humano.

Hay mucho en juego; Estimaciones recientes de analistas brindan cierto contexto para la inversión potencial necesaria. La firma de investigación Gartner predice que el gasto mundial en software en 2023, superará los 850 billones de dólares y la inversión en servicios de TI relacionados superará los 1,3 billones de dólares. Las organizaciones deben ser inteligentes con estos gastos.

Muchas aplicaciones críticas para el negocio (especialmente en grandes empresas) que necesitan ser modernizados se basan en el lenguaje de programación Java, que, a pesar de haber sido introducido hace casi treinta años, sigue siendo un pilar de los sistemas informáticos empresariales. Esta longevidad se ha traducido en una asombrosa cantidad de código Java que se ejecuta en entornos de producción en la actualidad, con la correspondiente necesidad de modernización.

Una encuesta reciente realizada por IA generativa para el especialista en código Diffblue (realizada por la firma de investigación de mercado independiente Vanson Bourne) encontró que el El 96% de las empresas considera que estas aplicaciones Java son extremadamente o muy importantes para su negocio. y que el 87% de ellos considera que la modernización es una prioridad más alta que otros proyectos.

En consecuencia, las empresas planean modernizar más del 80% de sus aplicaciones Java existentes en los próximos cinco años. Está claro que una empresa tan grande tendrá un impacto significativo en los equipos y organizaciones de desarrollo: los encuestados estimaron que el trabajo involucrado en la modernización de Java puede tomar hasta el 45% de los recursos de desarrollo disponibles.

Varios factores parecen estar detrás de este deseo de invertir en la modernización. Por ejemplo, la encuesta encontró que los CTO creen que sus aplicaciones Java actuales no son lo suficientemente seguras, y el 56 % citó la «seguridad mejorada de las aplicaciones» como un factor clave.

Cualquiera que sea la razón comercial subyacente, la mayoría de los proyectos de modernización requieren una cantidad significativa de cambios de código software existente. Pero todas ellas, incluso la más sencilla migración de sistemas a la nube, vienen con una complicación añadida: la experiencia del cliente debe mejorar, no empeorar, con el cambio.

Según la encuesta de Diffblue, los equipos de Java califican el mantenimiento de la calidad del código como su principal desafío de modernización. Y los cambios de código aumentan en gran medida el riesgo de regresiones no deseadas que eliminan la funcionalidad o degradan el rendimiento. El 97% piensa que las pruebas unitarias son fundamentales para evitarlas.

Pero sabemos desde hace mucho tiempo que no hay suficientes desarrolladores en el mundo para escribir todos los software ¿Qué necesitan las empresas para mantenerse competitivas?Por lo tanto, la automatización se considera un factor clave de éxito en la mayoría de los proyectos de modernización.

Si las organizaciones pueden automatizar incluso una cuarta parte de la carga de trabajo más tediosa de los desarrolladores (como las pruebas unitarias), libera a los equipos para que se concentren en crear un valor comercial más directo, como una mejor experiencia del cliente, un mayor rendimiento de las aplicaciones, desarrolladores más felices y menos necesidad de contratar . ingenieros más caros.

En el mundo de los negocios de hoy, la automatización implica cada vez más herramientas basadas en IA. De hecho, la IA se mueve tan rápido que puede ser difícil seguirle el ritmo. ChatGPT de OpenAI fue noticia en todo el mundo a fines de 2022 (y continúa haciéndolo) por su increíble capacidad para escribir, codificar, dibujar y crear con resultados creíbles y, a veces, increíbles.

Esta nueva clase de Herramientas de IA, basadas en «modelos de lenguaje grande» (LLM) y entrenado en grandes conjuntos de datos, ya se han puesto en uso para una amplia gama de usos, incluida la escritura de código. Otras herramientas similares, como GitHub Copilot y TabNine, fueron diseñadas específicamente para este propósito.

La plausibilidad de los resultados proporcionados por estas herramientas basadas en LLM, por extraño y maravilloso que sea el punto de partida, es innegablemente impresionante. Pero su capacidad para alucinar, para «engañar con seguridad», también subraya la necesidad de mantener a los humanos informados y limita sus beneficios en ciertos escenarios, como la modernización de aplicaciones, donde la escala es un factor.

Sin embargo, los LLM no son la única forma de aplicar IA generativa al código: El aprendizaje por refuerzo es otro enfoque de la IA que hace posible escribir código completamente autónomo., especialmente para tareas específicas y orientadas a objetivos. Un ejemplo son las pruebas unitarias, tan importantes para modernizar Java.

El motor de IA basado en el aprendizaje por refuerzo de Diffblue escribe de forma autónoma código de prueba de unidad que garantiza compilar, ejecutar y reparar sin revisión humana; un proyecto de investigación de código abierto, Evosuite, sigue un enfoque similar.

Escribir código no es la única área en la que la automatización, con o sin IA, puede acelerar la modernización de las aplicaciones. Otras herramientas de automatización también pueden ayudarte con aspectos específicos de tu viaje. vFunciónpor ejemplo, ofrece un conjunto completo de herramientas para calcular almas en los peligrosos mares de la modernización.

La plataforma de refactorización de código abierto moderno puede automatizar tareas de codificación complicadas pero tediosas como las actualizaciones del marco de Java. Y, por supuesto, servicios de TI globales y asesoramiento de proveedores como Capgemini e IBM también están disponibles. Pero a un precio.

Ahora, una nota de precaución. No piense que una vez que comience su viaje de modernización de aplicaciones, todo será pan comido. simplemente mediante el uso de una mayor automatización. La encuesta de Diffblue destaca otros baches en el camino.

Por ejemplo, con solo el 22% de las aplicaciones Java creadas por desarrolladores internos, Comprender cómo funcionan realmente las aplicaciones grandes y complejas puede ser una tarea abrumadora.. Y aunque mantener la calidad del código es el mayor desafío (46 %), otros incluyen cambiar las estrategias tecnológicas (43 %), la falta de conocimiento técnico (34 %) y los procesos ineficientes (32 %).

A pesar de estos desafíos, el ritmo de la modernización de Java se está acelerando: el 65 % de las organizaciones planean modernizar entre 100 y 1000 aplicaciones Java, aunque puede llevar más de cinco años completar el 80 % de su alcance. De hecho, la modernización puede terminar siendo un proceso continuo a medida que la tecnología continúa evolucionando a un ritmo más rápido.

Se están adoptando cada vez más herramientas de codificación impulsadas por IA, basadas en LLM y otros enfoques, para acelerar este proceso, pero hay poco temor de que los ingenieros de codificación sean reemplazados. software. Por el contrario, las herramientas que existen hoy ahorran horas de trabajo a los desarrolladores, aumentan la productividad y ayudan a las organizaciones a desarrollar y mantener código de mayor calidad, todos los cuales son resultados particularmente valiosos en proyectos de transformación a escala, como la modernización de aplicaciones.

Andrés Vargas

Salir de la versión móvil