Capsule Informatiche di Lello De Luca
← Tutte le Capsule

Vertical Slice Migration: migrare capacità end-to-end, non strati tecnici

La migrazione per vertical slice riduce il rischio perché sostituisce capacità utilizzabili end-to-end invece di rifare prima tutti i database, poi tutte le API e infine la UI.

Il limite della migrazione per strati

Un programma che pianifica «prima rifacciamo tutti i database, poi tutte le API, poi il frontend» produce lunghi periodi in cui nessuna capability nuova è realmente utilizzabile. Nel frattempo il legacy continua a cambiare e i team lavorano su assunzioni non validate.

Vertical Slice

Una vertical slice attraversa tutti gli strati necessari a consegnare un caso d'uso: UI o MFE, BFF, application service, domain model, persistence, ACL/adapter legacy, IAM, audit, osservabilità e test end-to-end. La slice può essere piccola, ma deve essere realmente esercitabile.

Esempio

Invece di «rifare l'anagrafica», si può migrare «ricerca paziente per identificativo e apertura scheda». La slice contiene nuova UI, Patient Identity API, accesso EMPI, ACL verso il legacy per i casi non ancora migrati, autorizzazioni e telemetria. Quando è stabile, si passa alla capacità successiva.

Criteri per scegliere la prima slice

  • Confine funzionale comprensibile e testabile.

  • Valore reale per gli utenti ma raggio di impatto gestibile.

  • Dipendenze legacy identificabili.

  • Possibilità di misurare differenze e rollback.

  • Capacità che aiuta a creare foundation riutilizzabili senza trasformarsi in un progetto infrastrutturale infinito.

Definition of Done di una slice di migrazione

  • Owner del dato dichiarato.

  • Contratti API/eventi versionati.

  • Security e audit verificati.

  • Correlation/trace id propagati.

  • Test funzionali, contract test e smoke E2E.

  • Modalità Shadow/Dual Run se necessaria.

  • Runbook di rollback e metrica di successo.

  • Piano di rimozione della corrispondente funzione legacy.

Il vantaggio organizzativo

La vertical slice costringe a verificare subito l'interazione tra architettura e realtà operativa. Evita che un team produca un dominio elegante ma inutilizzabile perché mancano mapping legacy, permessi, dati o integrazioni.

Relazione con Strangler Fig

La vertical slice definisce cosa consegnare; lo Strangler Fig definisce come spostare progressivamente quella capacità dal vecchio al nuovo. Insieme formano un approccio incrementale molto più controllabile del Big Bang.