🧪 Problem-Driven Systems Lab
🏗️ Caso 07 · Arquitectura

Modernizacion incremental de monolito

El sistema legacy sigue siendo critico, pero su evolucion se vuelve lenta, riesgosa y costosa.

OPERATIVO 🐘 PHP🐍 Python🟢 Node.js☕ Java🔵 .NET🐹 Go🦀 Rust

📈 Que cambia para el negocio

Permite modernizar un monolito sin convertir cada cambio en una reescritura riesgosa.

💼 Que demuestra tecnicamente

Muestra foco en evolucion segura de sistemas vivos y no solo en greenfield idealizado.

✅ Evidencia que deja

  • Contrasta /change-legacy y /change-strangler sobre shared_schema, billing_change y trabajo paralelo.
  • Hace visible blast_radius_score, risk_score y progreso de migracion por consumidor.
  • Expone migration/state, flows y diagnostics/summary para seguir cobertura extraida, contratos y releases.

👀 Que mirar al ejecutarlo

  • Si shared_schema falla en legacy y queda contenido en strangler.
  • Si consumers, contract_tests y extracted_module_coverage suben al ejecutar la ruta incremental.
  • Si diagnostics/summary muestra menos riesgo por cambio y menor radio de impacto.
Honestidad: No reemplaza un programa real de modernizacion con multiples servicios y equipos. Si reproduce la parte operativa relevante: blast radius, migracion por consumidor, contratos y avance incremental.

Como esta resuelto en cada stack

PHP 8.3 con cambio legacy vs strangler, cobertura progresiva y blast radius observable; Java 21 con ConcurrentHashMap<String,Function> routing table mutable; .NET 8 con Func<Request,Response> delegate routing + record types

StackHealth check localComposeDetalle
🐘 PHP 8.3http://localhost:8100/07/healthcompose.root.ymlREADME del stack
🐍 Python 3.12http://localhost:8200/07/healthcompose.python.ymlREADME del stack
🟢 Node.js 22http://localhost:8300/07/healthcompose.nodejs.ymlREADME del stack
☕ Java 21http://localhost:8400/07/healthcompose.java.ymlREADME del stack
🔵 .NET 8http://localhost:8500/07/healthcompose.dotnet.ymlREADME del stack
🐹 Go 1.23http://localhost:8600/07/healthcompose.go.ymlREADME del stack
🦀 Rust 1.83http://localhost:8700/07/healthcompose.rust.ymlREADME del stack

El expediente completo

El caso no empieza en el codigo: empieza en el sintoma y termina en el postmortem.

← Caso 06Caso 08 →