Il problema invisibile

apr 4, 2024 | Application Modernization Il problema invisibile

Sul Wall Street Journal è stato pubblicato ad inizio mese di marzo un interessante articolo su quello che viene considerato il problema invisibile di ben 1,52 trilioni di dollari legati al debito tecnico causato dal software obsoleto non più aggiornato ma ancora ampiamente in uso. 

Wall_street_Journal_article

Wall_street Journal_article_title

https://www.wsj.com/tech/personal-tech/the-invisible-1-52-trillion-problem-clunky-old-software-f5cbba27?st=771bqsqerbufpqn&reflink=desktopwebshare_permalink

L’articolo mette in evidenza come, nonostante l’affannarsi di molte aziende a realizzare a ritmi sfrenati nuovi software con sempre più avanzate tecnologie, in realtà si tende a sottovalutare o, peggio, a non considerare, il rischio che si nasconde nelle varie stratificazioni di software realizzati in passato e non concepiti per l’uso attuale.

Mentre i dispositivi hardware ricevono un'attenzione costante per quanto riguarda gli aggiornamenti e le innovazioni, spesso il software che li alimenta viene trascurato: il codice obsoleto si accumula nel tempo, creando un terreno fertile per vulnerabilità e rischi per la sicurezza informatica.

Nonostante il debito tecnico che si accumula vada a sovraccaricare i bilanci tecnologici, spesso non viene visto neanche come una minaccia incombente. Secondo il rapporto del 2022 (https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2022-report/) citato nell’articolo del WSJ, questo debito tecnico richiederebbe 1,52 trilioni di dollari per essere risolto e costa agli Stati Uniti 2,41 trilioni di dollari all'anno in termini di cybersicurezza e fallimenti operativi, progetti di sviluppo falliti e manutenzione di sistemi obsoleti.

Il vecchio software che non è stato aggiornato e controllato comporta pericoli paragonabili a quelli derivanti dall’invecchiamento delle infrastrutture fisiche, è come lasciare una porta sul retro socchiusa in un edificio altrimenti sicuro.

Anche la stessa intelligenza artificiale che viene utilizzata sempre più spesso per sviluppare il software, facilitando e quindi ottimizzando il lavoro dei programmatori, al contempo può portare ad un aumento del debito tecnico proprio perché ci si affida al software generato in maniera automatica e veloce ma non si presta attenzione all’ottimizzazione del codice per renderlo sicuro ed efficiente.

Inoltre, c’è da considerare che proprio quelle organizzazioni a cui facciamo più affidamento, cioè quelle bancarie e finanziare oppure quelle del settore pubblico, hanno il debito tecnico più elevato, perché hanno molti sistemi che si basano ancora sul Cobol che per le sue caratteristiche ha permesso alle applicazioni sviluppate in tale linguaggio di arrivare fino ai giorni nostri.

La trasformazione digitale però è un processo che non si può arrestare, e di conseguenza, la riduzione del debito tecnico deve essere agevolata e potenziata il più possibile se non si vuole porre un freno allo sviluppo e alla produttività.

Per le aziende, quindi, diventa fondamentale poter quantificare esattamente quale sia il debito tecnico del proprio parco applicativo per poi agire di conseguenza ed investire sul piano di azione migliore.

La Software Intelligence di CAST Highlight consente in maniera rapida ed efficace di analizzare interi portfoli applicativi dal punto di vista della sicurezza opensource, della predisposizione al Cloud, della Software Health e dell’impatto Green. Analizza il debito tecnico di un portfolio di applicazioni e fornisce una prioritizzazione automatica degli interventi di rimedio.

Visualizzare il debito tecnico per affrontarlo meglio.

Nelle dashboards di CAST HL è disponibile il Portfolio Advisor che consente di visualizzare e navigare il Debito Tecnico delle applicazioni per capire come è strutturato.

CAST_Highlight_Portfolio_advisor

ll Portfolio Advisor per il Technical Debt permette di navigare e fare drill-down in quattro livelli di aggregazione identificando le 5 applicazioni principali su cui concentrarsi per ogni segmento di dati. I livelli di aggregazione di riferiscono a:

Software Health: Software Resiliency, Software Agility, Software Elegance. La dimensione di ciascun segmento è determinata dalla quantità di Debito Tecnico calcolato rispetto ad un determinato fattore.

Priorità: alta, media, bassa.

Tecnologia: Java, Python, COBOL, ecc.

Code Insights: la dimensione è determinata dalla quantità di Debito tecnico calcolato relativamente ad una determinata regola.

La stessa vista è disponibile anche a livello di singola applicazione.

Una volta individuate le applicazioni con maggiore debito tecnico o quelle più critiche è possibile eseguire una analisi più approfondita mediante CAST Imaging sia per approfondire la conoscenza della applicazione a scopo di modernizzazione sia per ottenere una misura del debito tecnico OMG secondo l'ISO 5055 .

Tramite la Health e la Engineering Dashboard di CAST è possibile quantificare il debito tecnico secondo la standard ISO 5055:

CAST_IMaging_Health_Dashboarde visualizzare tutte le occorrenze nel codice che concorrono al debito tecnico:

CAST_Imaging_Debito_tecnico

verificando l’evoluzione del Debito Tecnico in base alle possibili remediation messe in atto e le rispettive metriche di riferimento.

CAST_Imaging_azioni_di_rimedio

Per le applicazioni che richiedono delle modifiche strutturali o di cui si è persa la conoscenza, perché prive di documentazione o perché sviluppate con tecnologie del passato, il reverse engineering effettuato da CAST Imaging, permette di comprendere automaticamente lo stack tecnologico, così come tutte le interdipendenze tra i componenti del codice, i layer applicativi, i framework, le tecnologie, i database. CAST Imaging è in grado di creare blueprint architetturali accurati e zoomabili di tutte le strutture di database, i componenti di codice e le loro interdipendenze fin nei minimi dettagli. Identifica tecnologie e framework obsoleti che sono buoni candidati per la disattivazione.

CAST_Imaging

L’integrazione con OpenAI consente anche di ricostruire una documentazione perduta e di comprendere i dettagli del codice in maniera veloce ed automatica.

CAST_Imaging_Open_AIIn conclusione, il problema del software obsoleto e del debito tecnico rappresenta una minaccia significativa per la sicurezza informatica e l'economia globale. Ignorare questa sfida potrebbe avere conseguenze disastrose, sia a livello finanziario che sociale. È fondamentale agire ora, investendo nelle migliori pratiche di sicurezza informatica e promuovendo una cultura di aggiornamento e manutenzione del software. La Software Intelligence di CAST permette di far emergere e di comprendere il debito tecnico presente nei sistemi IT e, allo stesso tempo, fornisce un valido supporto per accelerare la trasformazione che non può essere più rimandata.