Applicazioni legacy strettamente integrate, fornitori diversi, anni di sviluppo stratificato, nessuna documentazione. È una situazione che chi gestisce sistemi legacy conosce bene: il codice funziona, ma nessuno sa più davvero come. E quando qualcosa cambia, ricostruire il perché diventa un lavoro lungo, costoso e poco prevedibile.
In questo articolo raccontiamo come un importante player IT italiano ha affrontato questo problema con ReCode, la piattaforma AI sviluppata da Make IT che utilizza il reverse engineering per modernizzare il software legacy. Vedremo in particolare cosa significa oggi poter generare documentazione strutturata a partire da una codebase complessa senza affrontare mesi di analisi manuale.

Software legacy e knowledge loss: perché la documentazione scompare nel tempo
Ogni organizzazione costruisce nel tempo un patrimonio di conoscenza fatto di procedure, regole operative, eccezioni, integrazioni e processi.
Una parte viene formalizzata in documenti e manuali. Un'altra rimane nella memoria delle persone che hanno progettato o gestito i sistemi. Ma esiste spesso una terza area, meno evidente e più difficile da governare: la conoscenza nascosta nel software.
Nel corso degli anni le applicazioni aziendali accumulano regole di business, controlli, automatismi e logiche operative che riflettono il modo in cui l'organizzazione lavora realmente. Quando la documentazione non viene aggiornata, o le persone che hanno sviluppato il sistema non sono più disponibili, il codice diventa l'unica fonte affidabile per comprendere come certi processi funzionino davvero.
Il problema emerge spesso nei momenti di cambiamento: un passaggio di consegne tra fornitori, una fusione aziendale, la presa in carico di un sistema esistente, un progetto di modernizzazione.
In questi casi non si tratta soltanto di documentare un'applicazione. Si tratta di recuperare e rendere accessibile una parte della memoria operativa dell'organizzazione.
Il problema della documentazione nei sistemi enterprise legacy
Storicamente la ricostruzione della conoscenza applicativa è sempre stata un'attività fortemente manuale.
Analisti e sviluppatori devono analizzare il codice, identificare le dipendenze, seguire i flussi applicativi e ricostruire le regole di business implementate nel tempo. Un lavoro che richiede competenze specialistiche e che può durare settimane o mesi a seconda della complessità del sistema.
Questo non è solo un problema tecnico: incide direttamente sulla capacità dell’organizzazione di comprendere, governare e modificare i propri processi.
C'è poi un secondo problema, spesso sottovalutato: l'eterogeneità. Quando la documentazione viene prodotta da persone diverse, in momenti diversi e con obiettivi differenti, il risultato è frammentato. Alcune aree sono descritte in modo dettagliato, altre quasi ignorate. Costruire una visione coerente del sistema diventa un lavoro ulteriore.
Per questo molte organizzazioni rinunciano ad avere documentazione realmente aggiornata, limitandosi ad analisi puntuali quando emerge una necessità specifica. Un approccio reattivo che, nel tempo, aumenta il debito di conoscenza.
ReCode: dalla codebase alla conoscenza accessibile
Per affrontare questo problema Make IT ha sviluppato ReCode, una piattaforma che combina analisi strutturale del software e modelli di Intelligenza Artificiale per ricostruire la conoscenza contenuta nelle applicazioni legacy.
Il punto di partenza è semplice: il codice non è solo istruzioni per una macchina. È il registro più preciso e aggiornato di come un'organizzazione ha scelto di gestire i propri processi. Contiene decisioni, eccezioni, integrazioni e regole operative che spesso non esistono da nessun'altra parte.
Il problema è che questo registro è scritto in un linguaggio che richiede tempo e competenze specifiche per essere interpretato.
Questo livello di analisi oggi può essere automatizzato: ReCode analizza la struttura della codebase, identifica componenti e dipendenze, ricostruisce i flussi applicativi e permette di interrogare il comportamento del software attraverso domande in linguaggio naturale.
La documentazione diventa il risultato di un processo continuo di estrazione della conoscenza, non un'attività separata da svolgere manualmente a valle dello sviluppo.
Caso reale: generare la documentazione per tre applicazioni PHP legacy con ReCode
Un importante player IT italiano ci ha coinvolto nella presa in carico di tre applicazioni PHP sviluppate nel corso degli anni da fornitori differenti.
La situazione era comune a molte realtà enterprise: sistemi pienamente operativi, ma documentazione incompleta e conoscenza frammentata.
L'obiettivo non era semplicemente comprendere l'architettura tecnica delle applicazioni. Era recuperare rapidamente una visione chiara dei processi implementati, delle logiche di business e delle integrazioni presenti nei sistemi.
Fase 1 – Analisi della codebase e mappatura del sistema legacy
La prima attività consiste nell'analizzare la codebase per ottenere una visione d'insieme: componenti principali, dipendenze, integrazioni con sistemi esterni, relazioni tra moduli.
Il risultato è una mappa che consente di comprendere rapidamente come il sistema è organizzato e quali sono le aree funzionali principali, riducendo il tempo necessario per orientarsi e comprendere strutturalmente codebase complesse.
Fase 2 – Ricostruzione dei processi applicativi e delle regole di business
Una volta acquisita la visione generale, è possibile approfondire i singoli processi con domande mirate. Ad esempio:
"Come funziona il flusso di scarico delle PEC?" "Quali controlli vengono eseguiti durante una prenotazione?" "Dove vengono applicate le regole di validazione degli ordini?"
ReCode individua il codice rilevante, ricostruisce il comportamento applicativo e genera un documento strutturato che descrive il funzionamento del processo in modo comprensibile sia per figure tecniche sia per figure funzionali.
La generazione di un singolo documento richiede in media 10 minuti, a seconda della complessità del flusso analizzato.
Il risultato è una descrizione del comportamento del sistema — regole di business, casi d’eccezione e integrazioni — espressa in un linguaggio che può essere utilizzato sia per l’analisi tecnica sia per la comprensione e gestione dei processi aziendali.
Il risultato finale
Un'attività inizialmente stimata in diverse settimane di lavoro è stata completata in dieci giorni effettivi, producendo una libreria documentale omogenea, strutturata e consultabile.
Il team ha potuto prendere in carico i sistemi con una comprensione approfondita del loro funzionamento, senza dipendere da chi li aveva sviluppati in precedenza.
Il software legacy come asset di conoscenza aziendale
Quando si parla di software legacy, il problema raramente è il codice in sé.
Più spesso la criticità è il modo in cui le organizzazioni si relazionano ai propri sistemi nel tempo: applicazioni che continuano a funzionare ma che diventano progressivamente più difficili da comprendere, modificare e trasferire. Non perché siano obsolete, ma perché la conoscenza che contengono non è più accessibile.
L’Intelligenza Artificiale non elimina la complessità dei sistemi legacy, ma riduce la distanza tra il codice e la comprensione di ciò che rappresenta.
Il punto non è documentare meglio il software, ma permettere all’organizzazione di tornare in possesso del proprio know-how e renderlo nuovamente utilizzabile come base concreta nel lavoro di tutti i giorni.
Hai sistemi legacy da documentare o una presa in carico imminente? Parliamone

