La mayoría de las organizaciones no se dan cuenta de que tienen un problema de sistemas heredados hasta que algo se rompe de una forma cuya explicación resulta cara. Una auditoría de cumplimiento señala una plataforma sin soporte. Una integración con una herramienta nueva falla porque el sistema antiguo no tiene una API utilizable. Un equipo de seguridad eleva una vulnerabilidad en un código que no ha recibido un parche en cuatro años. Y, de repente, una conversación que debería haber ocurrido hace dos años tiene que suceder ahora mismo, bajo presión y con un presupuesto que no estaba previsto para ello.
La modernización de aplicaciones heredadas es la respuesta a esa conversación, pero no de la forma en que la mayoría de la gente piensa. No es una migración única a la nube. No es un proyecto de reescritura con una línea de meta. Es un programa continuo y gestionado por riesgos que alinea sistemáticamente los sistemas obsoletos con los requisitos actuales de negocio, seguridad y rendimiento. Los equipos que lo tratan como un proyecto único tienden a terminar el proyecto y luego acumulan silenciosamente la siguiente ola de deuda técnica en los sistemas que no tocaron.
Esa es la afirmación central que defiende este artículo: la modernización de aplicaciones heredadas es un programa estructurado e iterativo, no un evento que se completa.
La parte que la mayoría de los equipos aprende después de la primera migración fallida
- La modernización no es una migración a la nube: realojar sin cambiar la arquitectura suele conservar la deuda de la que intentaba escapar.
- Los marcos estratégicos 6R y 7R ofrecen a los equipos opciones reales; no todos los sistemas deben reescribirse o sustituirse.
- Omitir una fase de evaluación exhaustiva es la principal causa de sobrecostes presupuestarios y proyectos estancados.
- Tratar la modernización como un proyecto puntual es la forma en que las organizaciones terminan haciéndola dos veces.
- Los fallos de seguridad y cumplimiento que fuerzan la modernización suelen llegar antes de que se apruebe el presupuesto para abordarlos.
Qué significa realmente la modernización de aplicaciones heredadas
La modernización de sistemas heredados es el proceso de actualizar, sustituir o reestructurar aplicaciones de software existentes para alinearlas con los estándares técnicos actuales, los requisitos de negocio y las expectativas de seguridad. Es un término deliberadamente amplio, y esa amplitud es intencionada, porque la intervención adecuada varía significativamente según el sistema.
IBM define la modernización de aplicaciones como el proceso de actualizar software antiguo para enfoques informáticos más nuevos, incluidos lenguajes, frameworks y plataformas de infraestructura recientes. Microsoft Azure lo plantea de forma similar: tomar aplicaciones creadas para una generación anterior de infraestructura y llevarlas al presente, no solo en cuanto a dónde se ejecutan, sino también en cuanto a cómo están diseñadas.
La distinción clave es que modernizar no significa simplemente «mover a algún lugar nuevo». Un sistema que se traslada a la nube sin ningún cambio arquitectónico sigue siendo un sistema heredado; simplemente se ejecuta en hardware más nuevo. La verdadera modernización de aplicaciones aborda la estructura subyacente: cómo se construye la aplicación, cómo se comunica con otros sistemas, cómo gestiona los datos y si su arquitectura puede respaldar demandas de negocio que no existían cuando se escribió por primera vez.
Los sistemas heredados no siempre son antiguos por fecha de calendario. Son antiguos por relevancia: se basan en una arquitectura monolítica que se resiste al cambio, dependen de plataformas que los proveedores ya no admiten o están aislados del resto de la empresa porque nunca se diseñaron pensando en la integración. La modernización los desplaza desde ese estado hacia algo mantenible, extensible y seguro.
Esa distinción entre «ejecutarse en algún lugar nuevo» y «estar realmente modernizado» es donde empiezan la mayoría de los problemas de alcance de los proyectos.
![]()
Qué se considera un sistema heredado en primer lugar
Antes de cualquier conversación sobre modernización, alguien debe decidir qué sistemas cumplen los requisitos. Parece un paso evidente. Rara vez se realiza con rigor.
Una aplicación heredada no se define solo por su antigüedad. Las características relevantes son operativas: ¿se ejecuta en una plataforma que el proveedor ya no parchea? ¿Se comunica mediante protocolos propietarios que bloquean la integración con herramientas modernas? ¿Cambiar una parte exige modificar cinco componentes no relacionados porque la arquitectura nunca se diseñó para ser modular? ¿La postura de seguridad expone a la organización a vulnerabilidades para las que no existe una solución disponible?
Los sistemas heredados obsoletos tienden a agruparse en torno a algunos patrones de fallo comunes: entornos de ejecución sin soporte, dependencias no documentadas, configuraciones codificadas de forma fija y bases de datos tan estrechamente acopladas a la lógica de la aplicación que ambas no pueden modificarse de manera independiente. Cualquiera de estos factores genera fricción de mantenimiento. Los cuatro juntos crean un sistema que consume más esfuerzo del equipo para mantenerse operativo del que aporta en valor de negocio.
Los sectores regulados sienten esto con mayor intensidad. La sanidad es el ejemplo más claro: más del 60 % de los hospitales de Estados Unidos todavía ejecutan aplicaciones críticas en software heredado, según informes del sector sobre infraestructura de TI sanitaria. En un entorno donde el tiempo de inactividad afecta a la seguridad de los pacientes y los requisitos de cumplimiento evolucionan constantemente, no es solo un problema técnico: es un riesgo operativo que se agrava cada año.
Si su equipo dedica más tiempo a mantener vivo un sistema que a mejorarlo, esa es la señal de diagnóstico.
📊 En cifras:
La modernización de software heredado en industrias reguladas no es solo una decisión técnica, sino una decisión de gestión de riesgos. Cuando más del 60 % de los hospitales de Estados Unidos todavía ejecutan flujos críticos en plataformas sin soporte, la pregunta no es si modernizar, sino qué ocurre cuando un evento de seguridad o cumplimiento impone el calendario.
Por qué las organizaciones modernizan realmente las aplicaciones heredadas
La respuesta honesta es que la mayoría de las organizaciones no eligen modernizar aplicaciones heredadas de forma proactiva. Se ven empujadas a hacerlo. Un incidente de seguridad, una auditoría de cumplimiento fallida, un nuevo sistema de negocio que no puede integrarse con el antiguo, un proveedor clave que anuncia el fin de vida de una plataforma de la que depende la organización. La decisión de modernizar suele llegar como reacción, no como estrategia.
Dicho esto, los impulsores de negocio son bien conocidos. Actualizar aplicaciones heredadas y mantener y dar soporte a sistemas heredados a largo plazo genera costes acumulativos: tarifas de licencia para plataformas envejecidas, conocimientos especializados para mantener código en lenguajes que nadie nuevo está aprendiendo, infraestructura que no puede escalar automáticamente y una velocidad de desarrollo tan lenta que los equipos de producto dejan de preguntar al equipo de sistemas qué es posible. El análisis de ProVato Group señala que la economía del ciclo de vida —mantenimiento continuo, soporte e infraestructura— suele hacer que las aplicaciones heredadas sean significativamente más caras de operar con el tiempo que sus equivalentes modernizadas. Esos cálculos suelen acabar llegando al escritorio de un CIO.
El enfoque de investigación de Konveyor/Red Hat apunta a un cambio que ya es visible en las asignaciones presupuestarias: las organizaciones están orientando el gasto de modernización hacia la actualización de sistemas heredados existentes en lugar de crear otros nuevos desde cero. El impulso de construir alrededor de un sistema heredado tiene una fecha de caducidad. En algún momento, ampliar la solución temporal cuesta más que resolver el problema subyacente.
Los límites de escalabilidad suelen ser el detonante operativo. Un sistema que gestionaba el negocio con 10.000 transacciones al día tiene dificultades con 500.000 y falla con un millón, no porque la lógica sea incorrecta, sino porque la arquitectura nunca se diseñó para esa carga. Los bloqueadores de integración son el detonante estratégico: cuando un nuevo CRM, una plataforma de analítica o una API de socio no puede comunicarse con el sistema existente, la aplicación heredada se convierte en un límite para lo que puede hacer el negocio.
La importancia de la modernización de aplicaciones heredadas para la seguridad y el cumplimiento
Los fallos de seguridad y cumplimiento son el punto en el que la modernización de sistemas heredados deja de ser opcional. También veo este patrón constantemente en contextos de soporte: los equipos inician un esfuerzo de modernización solo después de que se explota una vulnerabilidad o una auditoría devuelve hallazgos críticos. Los objetivos de modernización que deberían haber impulsado el proyecto desde el principio se convierten en los criterios de emergencia que definen el alcance.
Las industrias reguladas —sanidad, finanzas y administración pública— presentan aquí el perfil de riesgo más elevado. Las plataformas sin soporte no reciben parches. Los sistemas sin parches acumulan exploits conocidos. El informe del grupo de trabajo ACT-IAC sobre la modernización de TI heredada federal lo expresa explícitamente: el código heredado de las agencias civiles federales genera vulnerabilidades de seguridad, dificultades de integración y exposición al incumplimiento que afectan directamente a la prestación de la misión.
Los esfuerzos de modernización que priorizan primero la postura de seguridad suelen construir la base correcta para todo lo que viene después. Las decisiones arquitectónicas que cierran una brecha de cumplimiento también suelen mejorar la capacidad del sistema para integrarse, escalar y ser mantenido por un equipo más amplio.
Beneficios de la modernización heredada para la escalabilidad y la eficiencia de costes
En cuanto a los beneficios operativos, el argumento a favor de la modernización heredada suele centrarse en el mismo conjunto de resultados: la capacidad de ejecutarse en infraestructura nativa de la nube, la posibilidad de adoptar prácticas de DevOps y CI/CD que aceleran las entregas y la reducción de la carga de mantenimiento sobre los equipos de ingeniería que actualmente dedican gran parte de su tiempo a mantener vivos sistemas antiguos en lugar de desarrollar nuevas capacidades.
Los equipos de operaciones de TI que impulsan la modernización, especialmente aquellos con una estrategia de servicios en la nube en mente, suelen justificar la inversión por motivos de costes y escalabilidad. Menos dependencias de conocimientos especializados, infraestructura que escala bajo demanda en lugar de hardware físico sobredimensionado y la capacidad de descomponer un monolito en servicios que pueden actualizarse de forma independiente sin afectar a todo el sistema. La modernización heredada no proporciona automáticamente ninguna de estas ventajas, pero crea las condiciones para que sean alcanzables.
Estrategias de modernización heredada: explicación de los modelos 6R y 7R
El marco de múltiples R es el modelo de decisión estándar para las estrategias de modernización de aplicaciones. Existen distintas versiones en Argano, K2view, Konveyor y el resto de la industria; el número de R varía ligeramente entre fuentes, pero las opciones principales son consistentes. El enfoque de modernización adecuado para un sistema concreto depende de su criticidad, arquitectura, dependencias de integración y la capacidad del equipo para ejecutarlo.
Así es como las estrategias se aplican realmente a situaciones reales:
| Estrategia | Qué hace realmente | Situación más adecuada | Esfuerzo | Cuándo evitarla |
|---|---|---|---|---|
| Realojar (Lift and Shift) | Traslada la aplicación a nueva infraestructura sin cambios de código | Plazo ajustado, presión de cumplimiento, reducción de costes de infraestructura | Bajo | Cuando la arquitectura es el problema real: volverá a estar aquí dentro de dos años |
| Replataformar | Migra a un nuevo entorno de ejecución o servicio gestionado con optimizaciones menores | La lógica principal es sólida, pero la plataforma ha llegado al fin de vida o resulta demasiado cara | Medio | Cuando también se requieren cambios profundos de código: una replataformación parcial suele crear deuda híbrida |
| Refactorizar | Reestructura el código existente para mejorar la calidad sin alterar el comportamiento externo | La base de código es mantenible pero ineficiente, y el equipo conoce el código | Medio-Alto | Cuando el código existente está tan acoplado que la refactorización se convierte en una reescritura encubierta |
| Rearquitecturar | Rediseña la estructura de la aplicación, por ejemplo, de monolito a microservicios | La escalabilidad es el problema principal y se requiere desacoplamiento de integraciones | Alto | Cuando el equipo no tiene las competencias para mantener la nueva arquitectura a largo plazo |
| Reconstruir | Reescribe la aplicación desde cero utilizando tecnología moderna | Se necesita la funcionalidad, pero el código existente es demasiado frágil o no está documentado para servir de base | Muy alto | Cuando el sistema existente funciona suficientemente bien: reescribir la aplicación desde cero rara vez entrega lo que sugiere la estimación |
| Sustituir | Retira la aplicación personalizada y adopta una alternativa comercial o SaaS | Funcionalidad estándar, sin diferenciación competitiva en el desarrollo personalizado | Medio | Cuando el modelo de datos existente es complejo y la migración constituye el verdadero desafío |
| Retirar | Desmantela aplicaciones heredadas que ya no cumplen una función | Uso reducido, funcionalidad redundante cubierta en otro lugar | Bajo | Cuando el «uso reducido» es en realidad una dependencia desconocida: compruébelo antes de apagarlo |
| Conservar | Mantiene el sistema tal como está, de forma intencional | Estable, seguro, de bajo riesgo, sin justificar el coste de la interrupción | Ninguno | Cuando ya no hay parches de seguridad disponibles: conservar no equivale a aceptar el riesgo |
El nivel de modernización elegido para cada sistema debe basarse en análisis, no en preferencias. Realojar una aplicación permite iniciar proyectos rápidamente y satisface la presión a corto plazo. No reduce la deuda técnica. Sustituir sistemas heredados por alternativas comerciales intercambia complejidad de desarrollo por dependencia de proveedores y trabajo de migración de datos. Ninguna de las dos opciones es incorrecta; el error consiste en elegir una estrategia sin comprender qué problema resuelve realmente.
La necesidad de modernizar aplicaciones heredadas: cuando el sistema empieza a costar más de lo que aporta
Estas son las señales que aparecen en colas de soporte, hilos de escalación y revisiones de arquitectura antes de que finalmente se apruebe un programa de modernización. Cada una identifica un patrón, el modo de fallo que produce y el riesgo de negocio que se deriva.
- Parches de seguridad que no pueden aplicarse
El proveedor de la plataforma ha dejado de publicar actualizaciones, o la arquitectura de la aplicación hace que aplicar parches sea destructivo. El resultado es una vulnerabilidad conocida sin vía de solución, presente en producción. En entornos regulados, esto no es un problema de gestión de riesgos: es una infracción de cumplimiento a la espera de ser descubierta.
- Solicitudes de integración que siempre se rechazan
Cada nueva herramienta SaaS, API de socio o sistema interno que intenta conectarse a la aplicación heredada recibe la misma respuesta: «eso no es algo que este sistema pueda admitir». La arquitectura no cuenta con una API extensible, utiliza formatos de datos propietarios o requiere middleware personalizado para cada conexión. El negocio deja de preguntar qué es posible porque la respuesta es predecible.
- Costes de mantenimiento crecientes sin un límite claro
Mantener y dar soporte a sistemas heredados creados en frameworks obsoletos o lenguajes en desuso exige competencias cada vez más especializadas. A medida que se reduce el grupo de personas que conocen la tecnología, aumenta el coste de mantenerla. Ese cálculo se acumula con el tiempo y rara vez aparece claramente en una sola partida presupuestaria hasta que alguien calcula el coste completo del ciclo de vida.
- Degradación del rendimiento bajo carga que no puede abordarse arquitectónicamente
Las aplicaciones heredadas escalan verticalmente: se añade más hardware al problema, hasta que deja de funcionar. Las aplicaciones heredadas monolíticas que no se diseñaron para escalado horizontal alcanzan un límite que no puede resolverse mediante ingeniería sin reestructurar la propia aplicación. Extienda suficientemente los sistemas heredados y estará gestionando síntomas, no la causa.
- Incapacidad para adoptar CI/CD o prácticas modernas de despliegue
Cuando el modelo de despliegue requiere tiempo de inactividad, pruebas de regresión de todo el sistema para cada cambio o un ciclo de lanzamiento medido en meses, la capacidad de la organización para responder a cambios del mercado se deteriora. El rendimiento de la aplicación en velocidad de entrega se convierte en la limitación competitiva, no la capacidad técnica.
- Datos bloqueados en formatos o estructuras que no se pueden mover
Los sistemas heredados con bases de datos estrechamente acopladas y esquemas de datos propietarios hacen que cada iniciativa de analítica, informes o IA sea más difícil de lo necesario. Los datos existen. Extraerlos hacia donde se toman las decisiones es la parte costosa.
- El problema del factor autobús
Hay una o dos personas que entienden cómo funciona realmente el sistema. No son quienes lo construyeron; esas personas se fueron hace años. El equipo actual heredó el sistema y lo aprendió mediante arqueología. Modernice una aplicación heredada ahora, mientras esas personas todavía están en la organización, o hágalo más adelante en peores condiciones.
La última señal suele no aparecer en las presentaciones ejecutivas. Debería.
![]()
Cómo funciona realmente el recorrido de modernización de aplicaciones heredadas
El proceso de modernización no es un proyecto con principio, medio y final. Los equipos que lo tratan así terminan la migración inicial, declaran el éxito y luego observan cómo se acumula la deuda técnica en los sistemas que no abordaron. Dos años después, vuelven a tener la misma conversación con un vocabulario ligeramente diferente.
La realidad práctica es que un programa de modernización de aplicaciones heredadas tiene fases, pero no un estado final. Los sistemas cambian. Los requisitos de negocio cambian. Los panoramas de seguridad cambian. El objetivo no es terminar la modernización, sino crear una organización que pueda continuarla como una función normal de la gestión tecnológica.
Dicho esto, el programa sí tiene una estructura lógica: evaluación, selección de estrategia, ejecución y validación, recorriendo la cartera de aplicaciones a lo largo del tiempo.
Una referencia rápida de lo que debe producir cada fase:
| Fase | Resultado clave | Modo de fallo habitual |
|---|---|---|
| Evaluación | Mapa de arquitectura, inventario de dependencias, registro de riesgos | Se omite o se acelera: la omisión más costosa del programa |
| Selección de estrategia | Decisión por aplicación basada en el marco 6-7R | Estrategia uniforme aplicada a todos los sistemas sin considerar su adecuación |
| Ejecución | Migración o refactorización por fases con puntos de validación | Enfoque de gran migración única; el nuevo sistema entra en producción antes de validarse |
| Validación | Pruebas de paridad funcional, comparación de rendimiento, revisión de seguridad | Se asume completada cuando la migración compila sin errores |
Por qué la fase de evaluación es donde fracasan la mayoría de los proyectos de modernización heredada
Esta es la fase en la que los equipos invierten menos de lo necesario con mayor frecuencia, y es aquella cuyos fallos resultan más caros de corregir. El patrón es consistente: se aprueba un proyecto de modernización con un alcance definido por lo que la gente cree que hace el sistema, en lugar de por lo que realmente hace. El proyecto empieza. Comienza el descubrimiento. Y tres meses después, el equipo descubre dependencias, acoplamientos de bases de datos y puntos de integración que nadie documentó porque nadie sabía que debía buscarlos.
La investigación de Zend y CGI sobre fallos de modernización heredada señala la evaluación superficial previa a la modernización como uno de los principales impulsores de sobrecostes y proyectos fallidos. La brecha específica suele ser la misma: supuestos arquitectónicos realizados sin mapear dependencias, acoplamiento de bases de datos examinado a nivel de tabla en lugar de a nivel de consulta y postura de seguridad revisada frente a vulnerabilidades conocidas en vez de frente a la superficie de ataque real.
Una evaluación rigurosa para una iniciativa de modernización heredada debe producir, como mínimo: un inventario completo de componentes de la aplicación, un mapa de dependencias que incluya integraciones externas y flujos internos de datos, un análisis de acoplamiento de bases de datos que identifique qué lógica de negocio reside en procedimientos almacenados frente al código de la aplicación y una revisión de seguridad que vaya más allá de la coincidencia con CVE.
La evaluación tarda más de lo que la mayoría de las partes interesadas quieren esperar. Cuesta lo que parece una fracción significativa del presupuesto total de modernización. Aun así, sigue siendo la inversión más importante del programa.
Migrar sistemas heredados sin esta base es la forma en que los equipos terminan modernizando una capa del problema mientras la capa más profunda permanece intacta.
Mejores prácticas para la ejecución de modernización heredada y la iteración continua
Este es el error de concepto que veo con mayor frecuencia en el contexto de un proyecto de modernización: alguien termina una ola de migración, el nuevo sistema funciona y el proyecto se declara completado. Se realiza la retrospectiva. El equipo sigue adelante. Y la docena de sistemas que no estaban dentro del alcance de la primera ola continúa acumulando deuda silenciosamente.
La modernización heredada exitosa trata la ejecución como la primera iteración de un programa continuo, no como la conclusión de un proyecto puntual. En la práctica, esto significa:
- Implementación por fases con controles de validación antes de cada ola. Ejecute el nuevo componente en paralelo con el sistema heredado, compare los resultados y realice el cambio solo cuando se confirme la paridad funcional.
- Integración de CI/CD desde el inicio, no añadida al final. Modernizar una aplicación sobre una infraestructura que todavía requiere procesos manuales de despliegue solo traslada el cuello de botella.
- Propiedad definida para cada sistema de la cartera. Una estrategia de modernización exitosa exige saber quién es responsable del mantenimiento continuo de cada aplicación, no solo quién ejecutó la migración.
- Tratar el backlog de modernización como un artefacto vivo. Se añaden nuevos sistemas a medida que la empresa los adquiere. Los sistemas antiguos se reevaluan a medida que cambian sus perfiles de riesgo. Modernizar una aplicación es un evento. Gestionar la cartera es una disciplina.
El esfuerzo necesario para que una iniciativa de modernización heredada tenga auténtico éxito se centra en gran medida en la continuidad del proceso, no en la ejecución técnica. Las partes técnicas son difíciles. La disciplina organizativa para tratarlo como algo permanente es más difícil.
🤔 Espere.
La mayoría de las organizaciones declara completada la modernización después de la primera ola de migración y luego sigue acumulando deuda técnica en cada sistema que no estaba dentro del alcance. El código heredado no deja de envejecer porque se haya modernizado un sistema adyacente. El programa no tiene una línea de meta; la cartera sí.
IA y automatización en el flujo moderno de modernización heredada
El papel de la IA en la modernización de aplicaciones heredadas ha superado la etapa teórica. El análisis de Deloitte de 2025 identifica tres enfoques emergentes habilitados por IA: replantear los procesos tecnológicos para eliminar deuda técnica, rediseñar el núcleo digital con tecnologías inteligentes y reimaginar capacidades de negocio con IA agéntica. El patrón es el mismo en los tres casos: la IA como acelerador para trabajo que las personas todavía necesitan dirigir.
La evidencia más concreta de la utilidad práctica de la IA en este ámbito procede de un estudio de arXiv sobre modernización de COBOL a Java impulsada por IA, que evaluó un enfoque asistido por IA frente a un corpus de 50.000 archivos COBOL. El sistema logró un 93 % de precisión en la traducción, al tiempo que redujo la complejidad del código en un 35 % y el acoplamiento en un 33 % en comparación con el código heredado de referencia. No son cifras triviales para quien haya intentado leer manualmente COBOL que no se ha tocado desde la administración Clinton.
Dónde ayuda realmente la IA en el desarrollo y la modernización de aplicaciones:
- Análisis de código a gran escala. Un equipo humano que revisa una base de código heredada de 500.000 líneas para identificar candidatos a modernización tarda semanas. Los modelos de IA pueden identificar puntos críticos de complejidad, grupos de dependencias y módulos marcados por riesgo en horas. El resultado todavía requiere juicio humano, pero la superficie de trabajo se vuelve manejable.
- Generación de documentación. Los sistemas heredados suelen estar documentados en la memoria institucional, no en archivos. La IA puede analizar código, historial de commits y registros de errores para generar documentación funcional de sistemas donde no existe.
- Sugerencias automatizadas de refactorización. No refactorización autónoma: sugerencias. La distinción importa. Las herramientas asistidas por IA proponen cambios; los ingenieros los validan y aprueban. El 93 % de precisión del estudio de COBOL es impresionante para un problema de traducción acotado; no significa que pueda dejarse a la IA sin supervisión en tareas de modernización de producción.
El juicio humano sigue siendo innegociable en las decisiones arquitectónicas, el análisis de compensaciones entre estrategias de modernización y cualquier paso de migración que afecte a datos activos de producción.
Aquí es donde plataformas de automatización como Latenode se vuelven útiles en la práctica durante un programa de modernización: no como sustituto de la ingeniería mediante IA, sino como infraestructura de orquestación para el propio proceso de migración. En un patrón que he visto funcionar bien, los equipos conectan su sistema heredado, entorno de pruebas y herramientas de monitorización mediante un único flujo que extrae automáticamente transacciones de muestra, las dirige por las rutas de los sistemas antiguo y nuevo y publica resúmenes comparativos en un canal del equipo. Los ingenieros revisan las comparaciones. La automatización se encarga de la recopilación y el formato. Es el tipo de trabajo que, de otro modo, requiere 45 minutos de configuración manual por cada ejecución de prueba y que suele realizarse con mucha menos frecuencia cuando exige ese esfuerzo.
![]()
Desafíos de la modernización heredada que paralizan los proyectos a mitad de entrega
Los desafíos de la modernización heredada rara vez aparecen en el plan original del proyecto. Aparecen en el cuarto mes, cuando el equipo está a mitad de la migración y el alcance estimado resulta ser una fracción de lo que realmente existe. He atendido suficientes escalaciones de equipos en esta situación como para reconocer el patrón.
- Las dependencias ocultas aparecen después de que comienza la migración
Los sistemas heredados presentan acoplamientos que no aparecen en los diagramas de arquitectura porque nadie dibujó esos diagramas. Dos aplicaciones heredadas resultan compartir una tabla de base de datos. Un trabajo por lotes que se ejecuta a las 2 de la madrugada resulta ser el desencadenante de un proceso crítico posterior. Los esfuerzos de modernización de IBM i, en particular, son conocidos por esto: lógica de negocio distribuida entre programas RPG, procedimientos almacenados y planificadores de trabajos de los que nadie tiene un mapa completo.
- La complejidad de la migración de datos se subestima sistemáticamente
Trasladar un sistema existente a nueva infraestructura es un problema. Trasladar los datos con él —limpiarlos, transformarlos para que coincidan con el nuevo esquema y validar su integridad después del traslado— es otro problema con una estructura de costes completamente diferente. La estimación de servicios de modernización de aplicaciones cubre el código. Rara vez cubre adecuadamente el trabajo de datos.
- Las brechas de competencias bloquean la ejecución en fases críticas
Una decisión de rearquitectura que parece adecuada durante la planificación requiere ingenieros capaces de crear y operar microservicios, implementar canalizaciones CI/CD y gestionar despliegues en contenedores. Estas competencias no se distribuyen de manera uniforme entre los equipos. La diferencia entre el sistema modernizado que describe el plan y la capacidad del equipo para construirlo suele aparecer en el peor momento posible.
- Resistencia organizativa al cambio
Las unidades de negocio que han creado flujos alrededor de los comportamientos específicos de la aplicación heredada, incluidas sus peculiaridades y limitaciones, se resisten a migrar a un sistema modernizado que funciona de forma diferente. Incluso cuando el nuevo sistema es objetivamente mejor, el coste de la transición recae en el usuario de negocio, no en el equipo tecnológico. Esa asimetría genera fricción que la ejecución técnica por sí sola no puede resolver.
- Subestimación del alcance debido a una evaluación superficial
Esta es la causa raíz de la que suelen derivarse los demás fallos. Cuando la evaluación previa a la modernización fue superficial, el alcance del proyecto de modernización de aplicaciones se basa en supuestos en lugar de hallazgos. Cada supuesto que resulta incorrecto se convierte en una orden de cambio, un retraso o una funcionalidad excluida del alcance. Cualquier aplicación de software moderadamente compleja tendrá al menos algunos supuestos incorrectos en la estimación inicial. La cuestión es cuántos.
Las soluciones de modernización que abordan estos riesgos desde el principio —incluyendo el mapeo de dependencias y el análisis de migración de datos en el presupuesto de evaluación, validando las competencias del equipo frente a la estrategia elegida antes de comprometerse con ella y diseñando el proceso de cambio con aportaciones de las unidades de negocio— suelen cumplir con lo previsto. Las que omiten estos pasos suelen generar tickets de soporte hacia el cuarto mes, preguntando cómo recuperar un alcance que nunca se definió adecuadamente desde el principio.
Ahí es donde suele comenzar el ticket.


