¿Por qué se modernizan las organizaciones?
Los principales impulsores de la modernización de las aplicaciones (seguridad, fiabilidad y escalabilidad) resultan familiares. Estos factores, o variantes de los mismos, aparecen en muchos de nuestros estudios cuando preguntamos sobre aspectos como los beneficios esperados de la transformación digital. Casi todos los encuestados afirmaron que estos tres factores influyeron en la decisión de su organización de modernizar sus aplicaciones. Más del 70% también evalúa el éxito basándose en los resultados en las mismas 3 áreas.
¿Cómo lo están haciendo? Bastante bien.
Si analizamos los impulsores individualmente, la mayoría de los encuestados (58%) ya han observado beneficios en materia de seguridad, pero la mayoría también ha observado beneficios en fiabilidad (52%) y escalabilidad (53%). En el contexto de los proyectos de modernización de aplicaciones que, en su mayoría, aún están en curso, estos datos deben considerarse una señal muy positiva del valor que puede aportar la modernización de aplicaciones. Es aún más impresionante si nos fijamos en si los encuestados han visto beneficios en al menos una categoría. Visto así, casi todos (98%) han experimentado un beneficio en al menos un área crítica.
No existe una única definición de modernización de aplicaciones
Este año, el 68% de los encuestados aseguraron que la modernización de las aplicaciones consistía en la mejora de los pipelines CI/CD (integración/entregas continuas). Esto es significativo por un par de razones.
En primer lugar, este porcentaje es notablemente superior al del estudio de 2021, cuando la carga de trabajo contenerizada encabezaba la lista, mientras que la mejora de la integración y el desarrollo continuos ocupaba el último lugar. Rara vez vemos este nivel de variación de una encuesta a otra. Esta fue una de varias respuestas que apuntaban a un enfoque en los fundamentos tradicionales de TI y al menos un mayor interés en la reducción progresiva de ciertas tecnologías más nuevas.
En segundo lugar, sirve para recordar que no todo el mundo está a la última. Todas las organizaciones siguen ajustando sus procesos de CI/CD para incorporar funciones adicionales, como el análisis de seguridad. Sin embargo, se puede suponer razonablemente que quienes han adoptado las mejores prácticas modernas para el desarrollo de software cuentan con procesos de CI/CD sólidos en general. Estas cifras sugieren que esa suposición no se aplica a todo el mundo. A lo largo del tiempo, hemos observado tendencias similares en otras prácticas que se han convertido en una apuesta segura para los profesionales avanzados, mientras que otros se están introduciendo en el tema.
Otra definición común es la modernización de datos, descrita habitualmente como la actualización y mejora de la infraestructura, herramientas y prácticas de datos de una organización para satisfacer las necesidades cambiantes de las operaciones y análisis empresariales basados en datos. Es razonable suponer que prepararse para la inteligencia artificial y el machine learning es una razón importante para pensar en la modernización de las aplicaciones en estos términos. La modernización de los datos también entra en juego como parte de la modernización del intercambio de datos entre las aplicaciones y sus componentes a medida que se actualizan, como en el caso de los datos distribuidos en aplicaciones edge. (Otros estudios que hemos realizado han desvelado que los problemas de integración son un desafío constante para los proyectos de transformación digital).
A las definiciones más comunes se suman la automatización de las cargas de trabajo y el serverless computing.
¿Cómo se modernizan las organizaciones?
Las estrategias de modernización son diversas y lo más habitual es que se lleven a cabo en varios pasos.
Pedimos a los encuestados que respondieran a la pregunta «¿Qué piensa hacer su organización con las aplicaciones de producción personalizadas que quiere modernizar en los próximos dos años?». Las 6 opciones que ofrecimos seguían el marco de las 6 R, un modelo derivado de las 5 R creado por el investigador de mercado Gartner en 2010 en un momento en que muchas empresas empezaban a lidiar con la mejor manera de trasladar sus aplicaciones heredadas a una nube. (A veces también veremos una variante de 7 R.) Encontraremos algunas diferencias en la nomenclatura según las distintas fuentes, pero el marco general es ampliamente utilizado.
Las 6 estrategias son:
Retirar: Poner fin o retirar del servicio aplicaciones que ya no son necesarias.
Conservar: Dejar las aplicaciones críticas como están hasta que sea necesario refactorizarlas.
Rehost: trasladar las aplicaciones a una nube (alojada o local) sin cambios en la arquitectura.
Cambiar de plataforma: Optimizar mientras se migra a la nueva plataforma para habilitar las aplicaciones en la nube sin cambiar el código o la arquitectura de la aplicación principal. (A veces se denomina «tweak, lift, and shift»).
Refactorización: Rediseñar la arquitectura como nativa de la nube, por ejemplo, conteniendo cargas de trabajo o moviéndolas a una arquitectura serverless.
Recompra: Pasar de licencias perpetuas a un modelo de software como servicio (SaaS).
La primera conclusión que podemos extraer de esta encuesta -así como de otras que hemos realizado- es que no hay un único enfoque dominante. La respuesta más común, con un 20%, fue el cambio de plataforma, y todas las demás se situaron entre el 10% y el 19%. Las estrategias de modernización de aplicaciones personalizadas son diversas y dependen de las aplicaciones que se modernicen, de la sofisticación de la organización e incluso del lugar que ocupe el encuestado en la organización.
La otra conclusión que podemos afirmar con confianza es que la modernización de aplicaciones no es un proyecto cerrado y finalizado. En su lugar, hay un claro camino gradual hacia re-architected applications. Solo el 15% de los encuestados planean ir directamente a la refactorización. Pero eso no significa que la refactorización esté descartada para el futuro. De hecho, el 47% planea replataformar y luego refactorizar. Otro 38% planea rehospedar, luego replataformar y solo entonces refactorizar. (Entre las organizaciones que describen su modernización de aplicaciones como un proceso continuo, esta última categoría aumenta hasta el 52%).
¿En qué se centra la modernización de aplicaciones?
A grandes rasgos, podemos agrupar la modernización de aplicaciones en dos categorías:
- Modernización de la infraestructura/aplicaciones existentes (heredadas) y
- Proporcionar o crear nuevas infraestructuras, servicios en la nube y aplicaciones nativas de la nube modernas o nativas u otros servicios de TI modernos.
Descubrimos que el 59% de los presupuestos de modernización se destinaban a la primera categoría, mientras que el 41% restante correspondía a la segunda. Los resultados son esencialmente idénticos en las diferentes regiones.
En relación con el estudio de 2021, la asignación presupuestaria para modernización se ha desplazado mucho más hacia la actualización de aplicaciones e infraestructuras heredadas que hacia la creación de nuevas aplicaciones e infraestructuras en la nube. Las cifras cambiaron aproximadamente entre las dos encuestas y parece que hay un enfoque renovado en los fundamentos de TI.
Profundizar en los tipos de aplicaciones cuya modernización es prioritaria refuerza esta opinión.
Las aplicaciones back-end básicas son la principal prioridad, con un 41%, seguidas de las aplicaciones de datos/análisis/inteligencia empresarial, con un 35%. (Esto subraya de nuevo la importancia de los datos para la IA y las tecnologías relacionadas). Aquí, el resultado varía según la región, con APAC aproximadamente invirtiendo las cifras de las aplicaciones de back-end y las relacionadas con los datos. En todas las zonas geográficas, las aplicaciones orientadas al cliente eran una prioridad relativamente baja, con un 14% en general.
Estas cifras suponen un interesante contrapunto a la idea de la TI bimodal (o rápida/lenta) que circulaba hace una década. Provenía de una escuela de pensamiento según la cual las aplicaciones de back-end heredadas tenderían a dejarse de lado y a modificarse mínimamente -retenidas en la terminología de las 6 R-, mientras que toda la acción emocionante se centraría en las nuevas aplicaciones y servicios orientados al cliente.
Los resultados de esta encuesta muestran que, de hecho, las empresas están dando prioridad a las aplicaciones que dirigen sus negocios y a los datos que informan sus decisiones empresariales. Sin embargo, no cabe duda de que también se están suministrando nuevas aplicaciones y servicios, incluidas aplicaciones orientadas al cliente.
¿Qué están haciendo las organizaciones para afrontar los retos de la modernización?
La complejidad domina los principales retos organizativos, con un 48% de los encuestados que identifican este reto en particular. En las primeras fases de la modernización de aplicaciones, es incluso mayor, un 58%. En las primeras fases, determinar el enfoque adecuado también ocupaba un lugar destacado en la lista, con un 55%, aunque, incluso más allá de las primeras fases, seguía ocupando un lugar destacado, con un 41%.
Sin embargo, las empresas están tomando medidas para abordar los retos a los que se enfrentan tanto a nivel organizativo como individual. Un responsable de la toma de decisiones de TI con sede en EE.UU. recomendó «establecer objetivos y metas claros para el proceso de modernización, crear un equipo dedicado a la modernización y llevar a cabo una evaluación exhaustiva de su cartera de aplicaciones actual”. Los resultados cuantitativos de nuestra encuesta también hicieron hincapié en la planificación previa y en un enfoque sistemático, con la búsqueda/adopción de herramientas adicionales, el desarrollo basado en API, la creación de un caso de negocio y la implantación de prácticas de desarrollo de operaciones a la cabeza de la lista en lo que respecta a las medidas que están tomando sus organizaciones en respuesta a los retos de la modernización.
La IA tiene un rol emergente importante en la modernización de aplicaciones
La sorpresa sería probablemente que la IA no se tuviera en cuenta de algún modo en la modernización de aplicaciones, dado su importante papel emergente en tantas áreas de TI y en otros ámbitos. Más del 75% de las organizaciones encuestadas utilizan la IA para apoyar el proceso de modernización de aplicaciones. El uso de IA para facilitar la modernización es el más común (53%), pero un número significativo (42%) también está, o alternativamente, añadiendo IA a las aplicaciones heredadas existentes para modernizarlas.
La optimización del rendimiento es el caso de uso más común por un margen significativo: los sistemas distribuidos complejos superan cada vez más la capacidad de las personas para ajustarlos manualmente de forma eficaz, de ahí las AIOps. Sin embargo, la automatización tanto de las tareas manuales en general como de las pruebas y el control de calidad en particular son también funciones importantes para la IA. La asistencia directa en la escritura de código, por otra parte, parece ser todavía relativamente incipiente y fue menos citada que otros usos, a pesar del revuelo (y a veces la controversia) en torno a los grandes modelos lingüísticos (LLM) en muchos círculos de desarrolladores.
En general, la mayoría de las organizaciones ya están utilizando la IA para apoyar la modernización de las aplicaciones y la actividad es bastante coherente en todas las zonas geográficas.
¿Qué significa esto para los profesionales de TI?
Nuestros encuestados nos dieron algunos buenos consejos, tanto para empezar como para mantener los proyectos en marcha.
Con respecto a la puesta en marcha de un proyecto de modernización de aplicaciones, un responsable de la toma de decisiones de TI de APAC hizo hincapié en cómo «establecer objetivos realistas y claros antes de iniciar el viaje de modernización le proporciona un mayor control sobre el proceso de actualización». Entre los temas con los que hablaron los responsables de la toma de decisiones, arquitectos y desarrolladores se incluyen: planificación anticipada, enfoques graduales y contar con el equipo adecuado que esté bien equipado.
Los responsables de la toma de decisiones con los que hablamos también tenían consejos para una vez puestos en marcha los proyectos de modernización. Uno de ellos, del Reino Unido, recomendó que «las empresas inviertan en soluciones de supervisión y visualización para que la modernización de aplicaciones y sistemas tenga más éxito. Estos sistemas proporcionan más información sobre el estado actual y el rendimiento de las aplicaciones». Otro responsable de la toma de decisiones de EE.UU. hizo hincapié en la formación de «su plantilla para utilizar y mantener las nuevas aplicaciones a través de las mejores prácticas y gobernanza».
En general, hay algunos temas comunes claros: tener un objetivo concreto, planificar, capacitar al equipo adecuado y supervisar continuamente (incluido el escaneado de vulnerabilidades). Curiosamente, la contratación de expertos en la materia y la formación adicional no fueron las prioridades que hemos visto en otras encuestas. Una de las razones es que parece que los encuestados se centran cada vez más en la externalización -como los servicios gestionados- y en la consulta con comunidades y proveedores sobre las mejores prácticas. Capacitarse sigue siendo importante. Pero también lo es apoyarse en la experiencia y las capacidades de terceros cuando estén disponibles y sean adecuadas.