Il costo della manutenzione dei sistemi legacy ha colpito notevolmente nelle prime settimane della pandemia da COVID-19. Sono stati i governatori del New Jersey, del Kansas e del Connecticut a lanciare l’allarme, dovendo resistere ad un numero senza precedenti di richieste di disoccupazione. Tutti questi Stati, infatti, hanno dovuto affrontare lo stesso problema: i programmi informatici degli anni ‘70 erano come “schiacciati” dal volume delle applicazioni e non si riusciva a trovare un numero sufficiente di persone con competenze COBOL per aggiornarli.

Sebbene una pandemia sia una circostanza insolita, i dirigenti IT dei servizi finanziari, dell’industria manifatturiera, delle compagnie aeree e di altri settori possono comprendere molto bene le preoccupazioni dei governatori riguardo ai costi di manutenzione dei sistemi legacy. Un software obsoleto può rappresentare una minaccia crescente per le aziende che sono circondate da concorrenti appena nati sul web. Allora perché molte organizzazioni rimandano il compito di modernizzare i dati legacy?

Uno dei motivi è la paura dell’ignoto. Molte applicazioni legacy sono scarsamente documentate e sono state sviluppate da programmatori che ormai hanno lasciato l’azienda. Nessuno sa come funzionano o quali interdipendenze esistono tra loro e altri programmi. La modifica di questi sistemi potrebbe creare un effetto a cascata che lascia l’organizzazione in una posizione peggiore rispetto a quella precedente.

Un’altra ragione per cui si rimanda la modernizzazione dei sistemi legacy è la tendenza a lasciar perdere. Se il software sta facendo il suo lavoro, perché spendere soldi e tempo per sostituirlo? Inoltre, in un periodo in cui i budget sono limitati, le organizzazioni sono restie a finanziare nuove iniziative per aggiornare programmi che non ritengono possano aggiungere valore all’azienda. Tuttavia, è importante effettuare questi aggiornamenti, anche se critici, per diversi motivi.

Onere di manutenzione

Il costo della manutenzione dei sistemi legacy può, nel tempo, ostacolare l’innovazione. Un sondaggio Deloitte del 2018 ha rilevato che l’impresa media spende il 57% del proprio budget IT per supportare le operazioni aziendali e solo il 16% per promuovere l’innovazione. Allo stesso tempo, trovare persone con competenze necessarie per supportare software scritti in linguaggi obsoleti come COBOL diventa sempre più difficile e costoso ogni anno che passa.

Mentre altri linguaggi più vecchi, come il Perl e il linguaggio assembly, possono ancora sostenere sistemi obsoleti, COBOL (un linguaggio che risale agli anni ’50) rappresenta un ostacolo importante nella modernizzazione del legacy. Un rapporto Reuters del 2017 ha stimato vi fossero 220 miliardi di righe di COBOL ancora in uso e una buona parte di quel codice è incorporato nelle agenzie statali degli Stati Uniti. Per capire meglio questo problema, possiamo considerare che un programmatore COBOL medio ha tra i 45 ed i 55 anni.

Inoltre,  nel 2018, Forrester ha riferito che le aziende avevano perso il 23% della loro forza lavoro nei cinque anni precedenti e che il 63% di quei posti di lavoro sarebbe rimasto vacante in futuro. La diminuzione della forza lavoro ha persino spinto IBM a lanciare un corso online gratuito di COBOL l’anno scorso.

Il costo della manutenzione dei sistemi legacy si ripercuote anche in altri modi. Per esempio:

  • Limita la capacità delle organizzazioni di estendere e migliorare le proprie applicazioni rivolte ai clienti con interfacce mobili e self-service.
  • Le modifiche spesso non possono essere adattate facilmente ai modelli aziendali che utilizzano sistemi legacy. Tuttavia, per continuare a generare profitto nell’attuale contesto aziendale, potrebbero essere necessari molti cambiamenti.
  • Le limitazioni nella capacità hardware, nella memoria e nello storage possono far sì che le applicazioni più vecchie si indeboliscano in presenza di volumi di transazione crescenti.

La soluzione al costo della manutenzione dei sistemi legacy è la modernizzazione, ma le preoccupazioni sui costi possono impedire ai CIO di affrontare grandi progetti di modernizzazione. Un recente sondaggio condotto da Dell Boomi, fornitore di integrazione software, ha rilevato che il motivo principale per cui i progetti di modernizzazione delle risorse aziendali falliscono è che l’organizzazione non riesce a stimare accuratamente i costi.

Tuttavia, anche il mantenimento delle piattaforme legacy comporta costi che crescono nel tempo. Trovare persone in grado di programmare con il vecchio codice diventa ogni anno più difficile e costoso e i migliori sviluppatori di oggi sono poco interessati a lavorare su piattaforme obsolete.

I vecchi flussi di lavoro codificati nel software non possono essere facilmente ottimizzati, il che comporta un calo della produttività. 

“Uno dei principali segnali che indicano che la tecnologia di un’azienda è più dannosa che utile è la diminuzione della produttività”, ha dichiarato Tirena Dingeldein del sito di software peer review online Capterra in un’intervista a CIO.com.

Oltre il costo

La modernizzazione dei dati legacy non è solo una questione monetaria. Le organizzazioni devono valutare i rischi aziendali legati alla manutenzione di piattaforme che non possono adattarsi facilmente ai cambiamenti del panorama aziendale. Devono considerare le implicazioni che derivano dall’incapacità di integrare nuove tecnologie, come lo streaming dei dati, il distributed ledger o l’intelligenza artificiale. E se il software legacy si guasta, quali potrebbero essere le conseguenze per l’azienda?

La buona notizia è che oggi ci sono moltissime opzioni di modernizzazione e i loro costi sono diminuiti. Ad esempio, gli strumenti di analisi della complessità aziendale possono identificare le interdipendenze nel vecchio codice e ridurre il rischio di danni. Un’altra considerazione è il refactoring, una tecnica in rapida evoluzione per alterare la struttura interna del software senza modificarne il comportamento esterno, in modo che continui a funzionare anche mentre viene modificato.

Molte applicazioni legacy possono essere digitalizzate o racchiuse in contenitori software per ottenere vantaggi in termini di portabilità e scalabilità. Esistono anche molte opzioni per dotare i vecchi programmi di interfacce per programmi applicativi, integrabili in alternative più moderne, basate sul cloud.

Forse la domanda più importante che le aziende dovrebbero porsi riguardo alla modernizzazione è se possono permettersi di non farlo. Nei mercati ricchi di concorrenza cloud-native, la risposta potrebbe essere ovvia.

 

Non perderti, ogni mese, gli approfondimenti sulle ultime novità in campo digital! Se vuoi sapere di più, visita la sezione “Blog“ sulla nostra pagina!