Superare un deadlock di Java 8 per aprire la strada al futuro

Quando un installer legacy ha bloccato la modernizzazione, Migrato ha utilizzato IBM Bob per tracciare un percorso più lineare verso i futuri aggiornamenti di Java.

Vista aerea di una strada deserta immersa in un rigoglioso paesaggio forestale
Quando il percorso di aggiornamento è diventato il problema

Per molte organizzazioni, le sfide della modernizzazione emergono in luoghi inaspettati. Per Migrato, un’azienda software con sede nei Paesi Bassi che aiuta le organizzazioni ad analizzare, inventariare, ripulire e migrare contenuti non strutturati, l’ostacolo non era rappresentato da una grande applicazione o da un processo aziendale. Era un installer software.

La suite software MICC (Migrato Intelligent Content Classifier) di Migrato si basava su un installer di dieci anni fa scritto in Java 8. L’installer svolgeva un ruolo circoscritto ma critico: installare e aggiornare le applicazioni della suite MICC. Ma, poiché dipendeva da Java 8, Migrato non poteva utilizzarlo per sostituire il runtime Java in modo pulito. Il meccanismo progettato per distribuire gli aggiornamenti era diventato il primo ostacolo nel più ampio percorso di modernizzazione della piattaforma Java di Migrato.

Il MICC Manager e l’installer lavoravano insieme per gestire le licenze, le connessioni ai server, l’accesso alle applicazioni e gli aggiornamenti software. Aggiornare manualmente gli ambienti dei clienti avrebbe aumentato il lavoro operativo e reso più difficile coordinare gli aggiornamenti. Con un team di sviluppo di sei persone, la cui esperienza era concentrata su Java e Python, Migrato voleva eliminare la dipendenza dal runtime mantenendo al contempo il comportamento esistente dell’installer e l’esperienza dei clienti. Cercava un modo pratico per creare un percorso verso la futura modernizzazione senza compromettere l’esperienza che i clienti già conoscevano.

3 giorni


per completare una migrazione dell’installer da Java 8 a C++ che si prevedeva avrebbe richiesto diverse settimane

<1 giorno


per pianificare la conversione e generare l’implementazione iniziale in C++ con IBM Bob

No Java Virtual Machine


necessaria al funzionamento dell’installer, creando un percorso di distribuzione indipendente per i futuri aggiornamenti di Java

IBM Bob ci ha aiutato ad accelerare una migrazione complessa, mantenendo la validazione e la supervisione ingegneristica al centro del processo. Creando un percorso di distribuzione indipendente, abbiamo rimosso un ostacolo fondamentale alla modernizzazione e gettato basi concrete per i futuri aggiornamenti.
Oscar Dubbeldam CEO Migrato
Creare un percorso di aggiornamento indipendente

Anziché considerare l’installer come un motivo per riscrivere l’intera suite MICC, Migrato si è concentrata sulla rimozione del primo ostacolo che si frapponeva ai futuri aggiornamenti di Java. Ricostruendo l’installer in C++, l’azienda ha creato un’applicazione nativa che non richiede più una macchina virtuale Java per avviarsi, consentendo al resto della codebase MICC di rimanere in Java. Questo approccio ha preservato l’esperienza utente esistente, creando al contempo una base concreta per una più ampia modernizzazione della piattaforma; i clienti hanno potuto continuare a gestire gli aggiornamenti attraverso la familiare esperienza del MICC Manager, mentre Migrato modernizzava l’installer sottostante.

Lavorando con IBM Bob, il team ha seguito un approccio basato su pianificazione, implementazione e convalida. L’installer esistente ha costituito il punto di riferimento per la migrazione, aiutando gli sviluppatori a preservare i comportamenti consolidati durante la ricostruzione dell’applicazione in C++. IBM Bob ha analizzato il codice Java, proposto la struttura del progetto C++, mappato le dipendenze e generato la nuova implementazione dopo che gli sviluppatori avevano esaminato e approvato l’approccio progettuale.

Il team ha poi convalidato il nuovo installer confrontandone il comportamento con quello dell’applicazione originale. Gli sviluppatori hanno esaminato l’implementazione generata, verificato le funzionalità sensibili dal punto di vista della sicurezza e riutilizzato i test esistenti per verificare la compatibilità. Quando i test hanno rilevato un problema di sincronizzazione tra l’installer e il MICC Manager, il team ha utilizzato IBM Bob per contribuire a individuare la causa del problema, modificare l’implementazione e verificare che i test delle interfacce continuassero a essere superati. Durante tutto il progetto, gli sviluppatori hanno mantenuto la responsabilità delle decisioni architetturali, della scelta delle dipendenze e della validazione.

Rendere più semplici i futuri aggiornamenti

Migrato ha trasformato un’attività che si prevedeva avrebbe richiesto diverse settimane in un progetto di tre giorni. Utilizzando IBM Bob, uno sviluppatore ha completato la pianificazione e la generazione del codice in meno di una giornata, mentre la revisione, i test e la validazione dell’integrazione hanno portato a tre giorni il tempo complessivo necessario per la migrazione. L’approccio ha permesso al team di sviluppo di sei persone di Migrato di completare una migrazione in C++ con cui non aveva familiarità, mantenendo al contempo la responsabilità dell’architettura, della revisione della sicurezza e della validazione finale.

Il risultato è stato un installer funzionante che ha preservato il comportamento dell’applicazione Java originale, operando però in modo indipendente dal runtime Java. Poiché l’installer non dipende più dall’ambiente che è progettato per aggiornare, può distribuire componenti basati su Java e aggiornamenti del runtime inclusi nei pacchetti senza richiedere prima un aggiornamento separato del runtime. I clienti possono continuare a gestire gli aggiornamenti attraverso la familiare esperienza del MICC Manager, mentre l’installer si occupa delle attività di distribuzione sottostanti.

Quello che era iniziato come una sfida legata a un installer legacy si è trasformato in un’opportunità per accelerare la modernizzazione futura. Avendo rimosso il collo di bottiglia nella distribuzione, Migrato dispone ora di un percorso concreto per portare avanti la propria strategia di modernizzazione di Java, mantenendo al contempo l’esperienza che i clienti già conoscono.

Informazioni su Migrato

Fondata nel 2014 e con sede a Strijen, nei Paesi Bassi, Migrato aiuta le organizzazioni ad analizzare, inventariare, ripulire e migrare contenuti non strutturati, tra cui documenti, PDF, documenti scansionati, e-mail e messaggi di chat. Attraverso soluzioni sviluppate internamente, l’azienda trasforma le informazioni non strutturate in insight fruibili che creano valore per i dipendenti e per i processi aziendali.

Componente della soluzione IBM Bob
Crea un percorso di aggiornamento pratico con IBM Bob

Scopri come IBM può aiutare la tua organizzazione a rimuovere gli ostacoli alla modernizzazione e a creare un percorso concreto verso i futuri aggiornamenti.

  1. Maggiori informazioni
  2. Avvia una versione di prova gratuita di 30 giorni
Nota legale

© Copyright IBM Corporation. Agosto 2026.

IBM, il logo IBM e IBM® Bob sono marchi registrati di IBM Corp. in molte giurisdizioni in tutto il mondo.

Gli esempi presentati sono solo illustrativi. I risultati effettivi variano in base alle configurazioni e alle condizioni del cliente e, pertanto, non è possibile fornire risultati attesi generici.