Migración strangler fig
Extraer los contextos delimitados de uno en uno, hacer el cutover de forma gradual detrás de una capa de enrutado y mantener la reversión disponible en cada paso. El sistema heredado sigue activo durante todo el programa.
Servicios
Modernización de aplicaciones legacy (software heredado) sin el riesgo de sustituirlo todo de golpe. YuSMP Group migra sistemas críticos para el negocio mediante el patrón strangler fig: extracción incremental de microservicios, actualizaciones de frameworks y migración a la nube que mantienen la producción en marcha en todo momento. Precio cerrado en USD, todo incluido, en tres niveles: una auditoría más mejoras rápidas desde $2,300, una refactorización sistémica desde $9,200 y una modernización completa desde $28,700. Casos típicos: COBOL y Delphi a Java o .NET, PHP a Node, monolitos a microservicios, de local a AWS, Azure o GCP, y de .NET Framework a .NET 8. Propiedad intelectual transferida el primer día, sin recargo por intermediación ni sobrecostes por herramientas. El cumplimiento está integrado de serie: alineado con el RGPD, preparado para ISO 27001, SOC 2 Type II en curso, apto para HIPAA.
Alineado con el RGPD · preparado para ISO 27001 · SOC 2 Type II en curso · apto para HIPAA · alcance PCI DSS bajo petición · jornada CET con solapamiento de 9:00–13:00 ET
La mayoría de los proyectos de modernización fracasan cuando los equipos intentan reescrituras completas: el alcance se infla, la hoja de ruta se congela y el negocio pierde la paciencia mucho antes de que el sistema nuevo esté listo. Nosotros optamos por defecto por la refactorización strangler fig: extraer contextos delimitados en microservicios y después migrar las capacidades una a una detrás de una capa de enrutado. El sistema heredado sigue en producción durante todo el proceso. Nuestro enfoque prioriza la arquitectura: una fase de descubrimiento de solo lectura mapea el sistema existente y sus dependencias, un plan de migración cuantifica el riesgo y secuencia las fases, y el cutover incremental incluye reversión en cada paso. Entre las modernizaciones de referencia están la fabricación (REHAU), los sistemas industriales (CheckList) y las plataformas operativas (xRouten). Véalo en la práctica en nuestro caso de éxito de refactorización de xRouten. Cuando el encargo es un cambio estratégico más amplio y no un trabajo sobre la base de código, nuestra consultoría de transformación digital lidera ese proyecto.
Extraer los contextos delimitados de uno en uno, hacer el cutover de forma gradual detrás de una capa de enrutado y mantener la reversión disponible en cada paso. El sistema heredado sigue activo durante todo el programa.
De .NET Framework 4.x a .NET 8, de Java 8 a Java 21 sobre Spring Boot, de PHP 5/7 a PHP 8, de AngularJS y Knockout a React o Vue. Actualizaciones in situ cuando el ROI supera al de la refactorización.
Solo donde el ROI lo justifique. Le diremos cuándo un monolito modular bien ordenado es la mejor respuesta: los microservicios añaden coste operativo y solo se amortizan a escala real.
Lift-and-shift, re-platform o refactorización en AWS, Azure o GCP. Elegimos el patrón adecuado para cada carga de trabajo, no una migración genérica de talla única que malgasta la factura de la nube.
De Oracle a PostgreSQL, de SQL Server local a Azure SQL o RDS gestionados, de DB2 de mainframe a almacenes nativos de la nube. Change data capture, ejecución en paralelo (dual-run) y conciliación integrados.
De jQuery, Knockout y AngularJS a React, Vue o Next.js. Extracción del sistema de diseño, límites de microfrontends y SSR donde se justifique por los Core Web Vitals.
La modernización de sistemas heredados justifica su presupuesto cuando el coste de quedarse quieto empieza a superar el coste del cambio. Estos son los detonantes que vemos con más frecuencia antes de que empiece un programa.
El runtime, el framework o la base de datos ya no tienen soporte del proveedor y no reciben parches de seguridad: cada CVE sin parchear es ahora un hallazgo de auditoría y una brecha a punto de producirse.
Contratar a especialistas en COBOL, Delphi, VB6, ASP clásico o una compilación de .NET Framework de hace diez años se ha vuelto lento y caro, y el conocimiento institucional se marcha con cada jubilación.
El monolito se quiebra con la carga máxima, no puede escalar en horizontal, y el hardware local o la factura de una nube sobredimensionada y siempre activa siguen subiendo mientras el rendimiento no.
Entregar cualquier funcionalidad nueva lleva meses porque la base de código es demasiado frágil para tocarla, y las obligaciones del RGPD, SOC 2, HIPAA o PCI DSS son difíciles de satisfacer en la arquitectura heredada.
Mapeo de la arquitectura, grafo de dependencias, trazado de rutas críticas y puntuación de riesgos por módulos y flujos de datos. Sin cambios de código: solo leemos, perfilamos y documentamos el sistema tal como funciona realmente.
Una hoja de ruta strangler fig con fases de migración cuantificadas, secuenciación de dependencias, estrategia de reversión y márgenes de presupuesto por fase. Usted aprueba el plan antes de que se escriba una sola línea de código nuevo.
Cutover incremental por contexto delimitado con demos semanales, validación en dual-run y tareas de conciliación. Cada fase entrega una capacidad real a producción tras feature flags, no un hito de presentación.
Prácticas de SRE, observabilidad con OpenTelemetry y Datadog, políticas de presupuesto de errores y retirada ordenada de las rutas heredadas una vez que el sistema nuevo se haya demostrado en producción durante al menos un trimestre.
4–6 semanas. Auditoría de arquitectura, grafo de dependencias, puntuación de riesgos y un plan de modernización por fases con presupuestos cuantificados. Un entregable que puede llevar a cualquier proveedor, no solo a nosotros.
Modelo por defecto para la migración en sí. Facturación mensual por rol y nivel de seniority, plena visibilidad de horas y capacidad, y un alcance que se ajusta a medida que los contextos delimitados revelan su forma real.
Para programas de larga duración de varios años. Un squad estable (backend, frontend, DBA, DevOps y responsable de entrega) se hace cargo de la hoja de ruta de modernización junto a sus ingenieros internos.
Precio cerrado y todo incluido, presupuestado en USD en tres niveles, dimensionados según la profundidad de la modernización. Sin recargo por intermediación, sin sobrecostes por herramientas y sin costes ocultos. Usted ve el presupuesto desglosado al final del descubrimiento y lo aprueba antes de escribir una sola línea de código; los costes de la nube corren en sus propias cuentas, de modo que conserva el control del coste.
Auditoría + mejoras rápidas
desde $2,300
alcance cerrado · puntual
Mapeo de arquitectura de solo lectura, grafo de dependencias y registro de riesgos, además de las mejoras rápidas de mayor ROI (actualizaciones de dependencias y frameworks, la peor deuda de seguridad) y una hoja de ruta strangler fig que puede llevar a cualquier proveedor.
Refactorización sistémica
desde $9,200
alcance cerrado · por fases
Extraer los primeros contextos delimitados en microservicios detrás de una capa de enrutado, actualizar el framework principal, añadir pruebas y observabilidad, y ejecutar cada cutover en dual-run con el sistema heredado activo en todo momento.
Modernización completa
desde $28,700
programa de principio a fin
Extracción completa de microservicios, migración de la base de datos y a la nube en AWS, Azure o GCP, CI/CD y SRE reconstruidos y retirada ordenada del sistema heredado una vez que el nuevo se haya demostrado en producción.
Qué hace variar la cifra: el tamaño y el acoplamiento del sistema (KLOC, número de contextos delimitados, cuán enredado esté el grafo de dependencias); el riesgo de migración de datos (el change data capture, las ventanas de paridad en dual-run y la conciliación son el flujo de trabajo de mayor riesgo); el alcance de cumplimiento (residencia de datos del RGPD, controles de SOC 2, HIPAA o PCI DSS trasladados durante el cutover); la plataforma de destino (actualización in situ del framework frente a microservicios en AWS, Azure o GCP); y el modelo de colaboración (descubrimiento a precio cerrado, migración en tiempo y materiales o un squad dedicado de larga duración).
Refactorización y reconstrucción en Android e iOS para un operador alemán de logística de última milla: planificación de rutas multipunto, seguimiento de conductores en tiempo real y facturación en la app, en producción en la UE.
Ecosistema offline-first que sustituye los diarios en papel para el control de procesos de reactores: Android, administración y panel de controladores.
B2B e-commerce y configurador de producto para un fabricante mundial de polímeros, con precios por región, stock y flujos de trabajo para distribuidores.
Lo difícil de una modernización está en el detalle regulatorio y de integración de cada sector, no en un manual genérico. Modernizamos allí donde el riesgo de cumplimiento y la complejidad heredada son la verdadera limitación.
Plataformas de banca básica, pagos y préstamos modernizadas dentro del alcance de PCI DSS, con conciliación en dual-run para que no se pierda ninguna transacción durante el cutover.
Extraemos contextos delimitados (identidad, facturación, motor de riesgos) de núcleos monolíticos mediante strangler fig, con periodos de dual-run basados en CDC de 2–4 semanas por cutover para garantizar la paridad del libro mayor antes de retirar cualquier ruta de escritura heredada.
Modernización apta para HIPAA con un BAA vigente, residencia de datos en la UE y registros listos para auditoría para sistemas clínicos y de pacientes regulados.
Gestionamos migraciones de HL7 v2 a FHIR R4, traslados de local a la nube (re-hosting) de cargas con PHI y actualizaciones de frameworks en sistemas de apoyo a la decisión clínica, todo ello con el sistema heredado activo durante la migración.
Sistemas de control de procesos y de comercio B2B migrados a una nueva plataforma (replatform) para un fabricante global; vea nuestros desarrollos de REHAU y de CheckList, offline-first.
Modernizamos integraciones con ERP, herramientas de planta de producción en Delphi y VB6 y servicios SOAP heredados detrás de capas de API gateway, priorizando primero los módulos que generan más fricción operativa.
Plataformas de planificación de rutas, seguimiento y facturación refactorizadas sin detener las operaciones, como en nuestra reconstrucción de xRouten, de última milla en la UE.
Modernizamos motores de despacho, apps para conductores y backends de gestión de transporte de mercancías, incluidas capas móviles offline-first y API de seguimiento en tiempo real, mientras las operaciones diarias continúan sin interrupción en el stack heredado.
Plataformas de comercio monolíticas heredadas migradas a arquitecturas headless: catálogo, precios, carrito y pago desacoplados en servicios desplegables de forma independiente detrás de una capa de API, sin congelar el catálogo ni un apagón durante la migración.
Gestionamos re-platforms de Magento 1 y de Shopify Plus heredado, reescrituras de conectores de ERP (SAP/Navision) y modernizaciones de tiendas a medida en PHP o ASP clásico, manteniendo la tienda en funcionamiento durante el cutover.
Sistemas de gestión de despachos, de gestión documental y de facturación modernizados para bufetes de abogados, asesorías contables y redes de consultoría. Plataformas heredadas de FileMaker, Access y .NET temprano migradas a stacks nativos de la nube con acceso por roles y pistas de auditoría.
Priorizamos primero los módulos de portal de cliente y de facturación, las extracciones de mayor ROI, y organizamos la migración por fases en torno a los calendarios judiciales y los plazos de informes, para no alterar ninguna ventana crítica para el negocio.
Alineado con el RGPD · preparado para ISO 27001 · SOC 2 Type II en curso · apto para HIPAA · alcance de PCI DSS preparado · CCPA contemplada
No proponemos reescrituras big-bang. La opción por defecto es la migración incremental strangler fig con el sistema heredado activo en todo momento: menos riesgo, ROI más rápido y sin congelar la hoja de ruta.
El entregable del descubrimiento incluye un registro de riesgos, un grafo de dependencias y márgenes de presupuesto por fase. Usted aprueba el plan con cifras, no con intuiciones, antes de que empiece la migración.
Alcance de RGPD, SOC 2, HIPAA y PCI DSS considerado desde el primer día. Residencia de datos en la UE, opciones en EE. UU. bajo petición, registros listos para auditoría, endpoints cifrados y DPA disponibles.
Para modernizaciones de pagos, préstamos y sanidad trabajamos dentro de su alcance de cumplimiento actual (QSA de PCI DSS, business associate de HIPAA o HITRUST) sin alterar la certificación.
La aplicación Android heredada acumulaba años de deuda y no tenía versión para iOS. YuSMP refactorizó el código existente, entregó la versión para iOS y añadió seguimiento de conductores en directo y facturación en la app, todo ello sin detener la operación diaria de nuestros conductores.
Nuestras apps de iOS y Android habían divergido tras años de desarrollo por separado. YuSMP reconstruyó una única solución unificada con cámaras en vivo, control de dispositivos del hogar inteligente y acceso multiusuario basado en roles. Cero defectos críticos en los primeros seis meses tras el lanzamiento.
El precio es de alcance cerrado y todo incluido, presupuestado en USD en tres niveles. Una auditoría más mejoras rápidas cuesta desde $2,300; la refactorización sistémica de los primeros contextos delimitados, desde $9,200; una modernización completa de principio a fin, desde $28,700. La cifra exacta depende del tamaño y el acoplamiento del sistema, del riesgo de migración de datos, del alcance de cumplimiento y de la plataforma de destino. Usted ve el presupuesto desglosado al final del descubrimiento y lo aprueba antes de escribir una sola línea de código. No hay recargo por intermediación ni sobrecostes por herramientas, y los costes de la nube corren en sus propias cuentas, de modo que conserva el control del coste.
En la mayoría de los casos, modernizar. Las reescrituras completas fracasan en una proporción muy superior al 50 % porque congelan la hoja de ruta, multiplican el alcance y obligan a un único cutover de alto riesgo. Optamos por defecto por el patrón strangler fig: mantener en marcha el sistema heredado, dirigir el tráfico nuevo a microservicios extraídos de uno en uno por contexto delimitado y retirar el código heredado solo cuando la nueva ruta se haya demostrado en producción. Una reescritura solo se justifica cuando el stack heredado es inmantenible, ya no quedan ingenieros o el cumplimiento la impone, e incluso entonces la hacemos por fases.
Strangler fig es un patrón de refactorización incremental: una capa de enrutado se sitúa delante del sistema heredado y redirige gradualmente las peticiones de capacidades concretas hacia nuevos microservicios. El código heredado sigue funcionando para todo lo que aún no se ha migrado. Cada contexto delimitado (pedidos, facturación, identidad) se extrae, se despliega, se ejecuta en dual-run para validarlo y después se pasa a producción con el cutover. La reversión es un cambio de enrutado, no un nuevo despliegue. Con los meses, el sistema nuevo «estrangula» al antiguo hasta que la aplicación heredada puede retirarse sin riesgo.
El descubrimiento y el plan de migración duran 4–6 semanas. La migración en sí depende del tamaño del sistema y de la tolerancia al riesgo: un monolito de tamaño medio de .NET Framework o PHP de 200–400 KLOC suele quedar listo en 9–18 meses de cutover incremental. Los programas de mainframe y COBOL duran varios años por naturaleza. Trabajamos en fases de 2–3 meses con un cutover demostrable al final de cada fase, de modo que el valor de negocio llega de forma continua en lugar de esperar a un lanzamiento big-bang.
Sí, ese es el objetivo de strangler fig. El sistema heredado sigue en producción durante todo el proceso. El tráfico se desplaza detrás de una capa de enrutado (API gateway, proxy inverso o feature flag) a medida que cada contexto delimitado entra en servicio. Ejecutamos en dual-run la ruta antigua y la nueva, comparamos las salidas y solo cambiamos la escritura canónica cuando se confirma la paridad. Las ventanas de mantenimiento se limitan a los cutovers de bases de datos y suelen durar menos de una hora, programadas con su equipo de operaciones.
Sí. Hemos entregado modernizaciones de .NET Framework 4.x a .NET 8, de Java 8 a Java 21 sobre Spring Boot, de PHP 5/7 a PHP 8 y Node.js, de Delphi/Pascal a C# y TypeScript, de Oracle Forms y PL/SQL a PostgreSQL con servicios en Node o Java, de ASP clásico y VB6 a stacks web modernos y de AngularJS/Knockout/jQuery a React, Vue o Next.js. Las cargas de COBOL y de mainframe se gestionan en colaboración con proveedores especializados de re-hosting cuando hace falta.
Los datos son la parte de mayor riesgo de cualquier modernización, por lo que los tratamos como un flujo de trabajo de primer orden. Empezamos con change data capture (Debezium, envío de logs nativo o CDC del proveedor) para mantener sincronizados los almacenes nuevo y antiguo. Durante el dual-run, las escrituras van a ambos sistemas y una tarea de conciliación señala cualquier divergencia en menos de una hora. Congelamos la ruta de escritura heredada solo después de una ventana de paridad, normalmente de 2–4 semanas, y mantenemos la base de datos heredada como respaldo de solo lectura durante 90 días tras el cutover.
Sí, y es lo habitual. Strangler fig permite que el equipo de funcionalidades y la línea de modernización avancen en paralelo: las funcionalidades nuevas se entregan sobre microservicios recién extraídos desde el primer día, mientras el código heredado gestiona los contextos delimitados que aún no se han migrado. Coordinamos con su responsable de ingeniería las convenciones de ramas, las reglas de límites de servicios y una lista clara de módulos heredados que no se deben tocar, para que ambas líneas no choquen. Normalmente se reserva entre un 20–30 % de la capacidad del sprint del equipo de funcionalidades para el trabajo de integración de la modernización; lo tenemos en cuenta en el plan de fases.
Las integraciones externas se catalogan en el descubrimiento y se clasifican por riesgo de migración. Las integraciones con API documentadas se envuelven primero detrás de una capa de adaptadores interna, de modo que los nuevos microservicios llamen al adaptador y no directamente al conector heredado. Las API de proveedores al final de su vida útil (por ejemplo, un endpoint SOAP obsoleto) se señalan y se sustituyen o se envuelven con una capa de compatibilidad (shim) durante la migración. Las integraciones que no se pueden sustituir durante la migración se mantienen fijadas en el sistema heredado y se migran las últimas, cuando todos los demás contextos delimitados ya están en producción.
Ocurre, y lo planificamos. Durante el dual-run ejecutamos una tarea de conciliación que compara las salidas de la ruta heredada y de la nueva para cada transacción. Las divergencias se clasifican en diferencias esperadas (cambios deliberados de comportamiento), errores heredados que ahora salen a la luz y errores nuevos introducidos en el código migrado. Los errores heredados descubiertos durante la migración se documentan y se priorizan con usted: algunos se corrigen en el servicio nuevo, otros se anotan como incidencias conocidas para corregirlas tras el cutover. No arrastramos en silencio los errores heredados.
Definimos tres capas de métricas de éxito al comienzo: técnicas (cobertura de pruebas, frecuencia de despliegue, MTTR, tasa de errores de los servicios migrados), operativas (reducción de incidentes, diferencia de coste de infraestructura, carga de guardias) y de negocio (velocidad de funcionalidades en el nuevo stack, tiempo de salida al mercado de nuevas capacidades). Se reportan en revisiones mensuales del programa. Cada fase termina con un cutover demostrable y un panel de salud que muestra el porcentaje de tráfico heredado, para que las partes interesadas vean avanzar la migración de forma concreta y no solo en un diagrama de Gantt.
Guías prácticas sobre modernización de sistemas heredados, migración a microservicios y estrategia empresarial.




Cuéntenos algunos detalles y un consultor sénior le responderá en un día hábil.