Empresa internacional de transporte marítimo · datos de mercado y contratos

De un sistema con interfaz de 2011 a un producto nuevo en 9 semanas

Un sistema interno de datos de mercado de 237.000 líneas, construido sobre componentes de interfaz con 14 años de desfase, reescrito como un producto nuevo. El análisis previo al código demostró que el 65% del sistema antiguo estaba muerto — el cliente pagó solo por lo que estaba vivo.

  • 9 semanas hasta un producto nuevo
  • 65% del alcance recortado tras el análisis
  • 237.000 líneas de código heredado analizadas

El cliente

Una empresa internacional de transporte marítimo cuyo trabajo diario depende de un sistema interno de datos de mercado y contratos: introducción de datos, consultas, importación/exportación de Excel, informes en PDF e informes programados por correo electrónico para la dirección y los socios.

El reto

El sistema tenía más de una década: 237.000 líneas de código, una interfaz construida sobre componentes de 2011 sin soporte desde hacía años y una base de datos de 119 tablas con capas de funcionalidad olvidada hacía tiempo. Las licencias eran antiquísimas, el alojamiento estaba atado a una infraestructura obsoleta y cada cambio exigía arqueología.

El reflejo clásico sería "reescribirlo todo uno a uno". Eso es exactamente lo que no hicimos.

El enfoque

Reconocimiento completo antes del presupuesto. Desmontamos el sistema antiguo — y, más importante aún, su base de datos en producción. Los hallazgos hablan por sí solos: alrededor del 35% de la base de datos era invisible desde el código — un trigger oculto, procedimientos muertos sin usar desde 2016, 19 vistas que nadie lee, tablas sin una sola línea de código que las referencie.

Recortar antes de construir. El análisis se convirtió en una conversación con el cliente, lista en mano: ¿qué de todo esto usa usted realmente? La respuesta — alrededor de un tercio. El 65% del sistema se recortó de mutuo acuerdo antes de la primera línea de código nuevo. El cliente no pagó por portar peso muerto.

Verificar la paridad, no la intuición. Se importaron datos reales del sistema antiguo para una comparación fila a fila, y una auditoría independiente contrastó el sistema nuevo con el antiguo funcionalidad por funcionalidad — las diferencias confirmadas entraron en un plan, no en sorpresas tras el lanzamiento. Dos versiones intermedias pasaron por el feedback de los usuarios reales.

Una base moderna sin ataduras antiguas. El nuevo sistema funciona sobre .NET 10 con componentes de interfaz libres de licencias, tareas automatizadas en segundo plano, informes en PDF y Excel y un registro de auditoría en cada acción. El sistema antiguo siguió funcionando intacto durante toda la transición.

El resultado

  • Un producto nuevo, con marca propia, en unas 9 semanas — incluidas dos rondas de feedback del cliente y una fase final de consolidación.
  • El cliente pagó por el ~35% del sistema antiguo — la parte viva; el resto quedó demostrado como muerto y se quedó en el pasado.
  • Sin cuotas de licencia por componentes de interfaz; un aspecto moderno que los usuarios adoptaron sin perder sus hábitos.
  • Un análisis documentado que queda en manos del cliente — el mapa del sistema ya existe, y el próximo cambio no empezará con arqueología.

La línea de código más valiosa es a menudo la que no se escribe: un tercio del precio del proyecto se ahorró porque primero demostramos qué estaba muerto.

Tecnología

.NET 10 · ASP.NET Core MVC · EF Core 9 · MariaDB · Quartz.NET