L'AI rende possibile quello che ieri era impagabile.
Usiamo l'AI come strumento per gestire codice legacy: generazione documentazione, comprensione di sistemi non documentati, refactoring assistito, generazione test, supporto a migrazione, scraping di dati da sistemi antichi. Non un magic bullet — uno strumento potente che cambia il rapporto costo-beneficio. Perimetro time-boxed e concordato in anticipo.
Per anni il legacy è stato 'modernizzare o convivere'. Oggi c'è una terza via.
La gestione del software legacy è uno dei problemi più costosi delle aziende italiane. Sistemi business-critical scritti 15-25 anni fa, documentati male o per nulla, ancora in produzione perché sostituirli costa troppo e ferma operations. Le opzioni storiche erano due: modernizzare integralmente (caro, rischioso, lungo) o convivere accettando costi crescenti di manutenzione e rischio operativo.
L'AI cambia il rapporto costo-beneficio di molte attività che prima erano antieconomiche. Generare documentazione tecnica decente di un sistema legacy era prima un progetto da mesi/uomo; oggi un AI ben utilizzato lo fa in giorni. Capire cosa fa un blocco di codice COBOL/AS400/Fortran è una cosa che un AI fa in secondi con accuracy 80-90%. Generare unit test per software senza test è qualcosa che si è sempre voluto fare ma che era inaffrontabile per cost — ora è fattibile.
Non è magic. L'output dell'AI va sempre rivisto e validato. Ma il rapporto fra costo del lavoro umano e qualità dell'output è cambiato. Cose che costavano 50 giorni/uomo oggi costano 5 giorni/uomo + supervisione AI. Su sistemi legacy di un'azienda media, parliamo di centinaia di migliaia di euro di costi recuperabili. È quello che facciamo.
Sei interventi che oggi sono fattibili
Documentation generation
Generazione automatica di documentazione tecnica (function-level, module-level, architetturale) di sistemi non documentati. Output rivedibile, da non considerare definitivo ma da partire.
Code understanding
Per onboarding di nuovi dev su sistemi legacy: AI che spiega cosa fa un blocco di codice, qual è il business intent, quali sono le dipendenze. Tempo onboarding -60%.
Refactor assistance
AI che propone refactor su codice procedurale verso pattern moderni. Estrazione di funzioni, rimozione duplicazione, modernizzazione sintassi. Sempre human-in-the-loop per le scelte.
Test generation
Generazione di unit test per codice esistente senza coverage. AI legge il codice, deduce il comportamento atteso, genera test case con edge case. Permette refactor sicuri.
Migration support
Migrazione da linguaggio/framework legacy a moderno (COBOL→Java, VB6→.NET, AS/400→cloud). L'AI traduce il codice — la responsabilità tecnica della migrazione resta umana.
Intelligent scraping
Estrazione di dati da sistemi senza API moderne: schermate terminale, PDF generati, output proprietari. Riduce drasticamente il costo della migrazione dati.
Come strutturiamo un intervento AI for Legacy
- 1
Fase 1 — Legacy audit (1-2 settimane)
Inventario sistemi legacy: cosa è in produzione, da quanto, criticità business. Stato documentazione: cosa esiste, cosa è aggiornato, cosa manca. Identificazione delle 2-3 priorità di intervento.
- 2
Fase 2 — AI tooling setup (1 settimana)
Selezione tool AI (LLM frontier per ragionamento su codice, modelli specializzati su linguaggi legacy). Setup ambiente sicuro per processing del codice. Calibrazione su sample del codice cliente.
- 3
Fase 3 — Targeted intervention (2-12 settimane)
Esecuzione dell'intervento specifico (doc generation, test generation, ecc.). Output progressivamente rivedibile dal team cliente. Iterazione su feedback.
- 4
Fase 4 — Knowledge transfer (1 settimana)
Trasferimento dei tool e delle pratiche al team interno. Training per autonomia futura. Documentazione del processo.
AI come strumento, non come oracolo
Esistono vendor che vendono "AI legacy modernization" come prodotto magico. Diffidare. La verità è meno entusiasmante e più affidabile: l'AI è uno strumento potente che cambia il rapporto effort/risultato di alcune attività. Va usato consapevolmente. Il nostro approccio integra: (1) review umana di tutto l'output AI prima di committarlo; (2) costo time-boxed: vi diciamo dall'inizio quanto costa lo specifico intervento, no "cost-plus"; (3) integrazione nel vostro processo: l'output dell'AI passa attraverso le vostre code review e i vostri test, non bypass; (4) knowledge transfer al team: a fine progetto sapete usare gli stessi tool autonomamente.
