Vecchio software: il salvatore e il flagello dell'IT

Alcune aziende, come Apple, sembrano pensare che le versioni precedenti del loro software semplicemente svaniscano dal mondo quando vengono rilasciate nuove versioni. Non solo non è vero oggi, non è  mai  stato vero.

I mainframe che eseguono app Cobol mission-critical persistono fino ad oggi nelle principali aziende e governi. Gli schermi verdi AS / 400 sono ancora in uso in gran numero. I sistemi point-of-sale basati su Windows XP sono ovunque. Un antico Commodore Amiga gestisce ancora il riscaldamento e l'aria condizionata per un sistema scolastico. I sistemi DOS sono ancora in uso in tutto il mondo. Dubito che vedremo l'eradicazione di Windows XP entro i prossimi 30 anni.

Per quanto vorremmo agitare una bacchetta magica e avere tutto magicamente aggiornato all'ultima versione senza problemi o problemi, non succederà. Ignorare questa realtà significativa dal punto di vista del fornitore o del cliente non fa bene a nessuno - molto spesso, ci dipinge negli angoli.

Chiunque abbia trascorso abbastanza tempo nell'IT ha familiarità con il fenomeno che si manifesta come una serie di problemi minori individuali che formano un blocco stradale collettivo attraverso un percorso apparentemente semplice. Un esempio comune potrebbe essere la mancata corrispondenza tra il browser attualmente in uso e l'interfaccia utente di amministrazione basata sul Web a cui stai tentando di accedere, in cui il client non ha la versione corretta di Flash installata o necessita di plug-in aggiornati in ordine per funzionare o, nei casi peggiori, in cui l'interfaccia utente Web si rifiuta di funzionare a meno che non sia in esecuzione una versione precedente del browser.

Se tutto ciò che vuoi fare è modificare un'impostazione minore che dovrebbe richiedere circa un minuto, i 10 o 20 minuti di download e aggiornamenti necessari per arrivarci possono essere esasperanti. Dover costruire un'intera VM con un vecchio software per arrivarci è infinitamente peggio.

Poi ci sono il numero sfortunato di soluzioni hardware e software di fascia media e aziendale che dipendono da pacchetti client ormai antichi per eseguire qualsiasi gestione o amministrazione. Idealmente, sono disponibili aggiornamenti del firmware che alleggeriscono queste restrizioni, ma certamente non è sempre così.

Esistono molte infrastrutture in cui i componenti critici hanno almeno diversi anni e funzionano perfettamente, ma sono stati trascurati o "fuori uso" dal produttore. In alcuni casi possono essere mantenuti solo tramite un box Windows XP che esegue IE6 e Java 5. In molti casi sono strumenti costosi e specifici del settore come apparecchiature di produzione, sistemi di controllo ambientale, sistemi di sicurezza o altre soluzioni che non sono facilmente o sostituito a buon mercato.

Non è raro vedere vecchi sistemi Windows XP, Windows 2000 e persino Windows NT che eseguono software di controllo della produzione. Il software in genere viene eseguito solo con tali versioni o richiede un software di accompagnamento con limitazioni analoghe.

Tutti sanno che questa è una responsabilità, ma l'aggiornamento del sistema potrebbe essere impossibile a parte un aggiornamento all'ingrosso estremamente costoso di un'intera linea di produzione, oppure potrebbe costare decine o centinaia di migliaia di dollari da spendere in licenze software. Di fronte alla scelta tra la manutenzione di alcuni sistemi più vecchi o la sostituzione di hardware e software perfettamente funzionanti, i contatori di fagioli sceglieranno quasi sicuramente il primo. Ergo, quella scatola di Windows 2000 viene "riparata" regolarmente.

Il pericolo entra in gioco quando i fornitori di software smettono di rendere disponibili le versioni precedenti del software. Non parlo necessariamente di sistemi operativi, ma di altri elementi fondamentali. Quando un fornitore di software estrae vecchie versioni dai suoi siti di download, costringe gli amministratori che tentano di ricostruire un vecchio sistema a cercare quei pacchetti altrove, di solito da fonti non del tutto affidabili. Col passare del tempo, questo problema peggiora. Se le versioni precedenti sono esaurite, sarebbe molto più sicuro per un fornitore fornire download verificabili e completamente non supportati di tali versioni piuttosto che rimuoverle completamente e costringere le persone a ricorrere a fonti discutibili.

Un altro problema sono le restrizioni di sicurezza troppo zelanti che bloccano efficacemente il funzionamento di determinati strumenti. Java 7 e Java 8 bloccano i certificati SSL non attendibili, ad esempio, quindi se stai tentando di accedere a un'app di gestione interna basata su Java tramite browser con un certificato autofirmato, dovrai saltare attraverso una serie di cerchi per ottenere Là. A volte l'unica opzione è il downgrade della tua versione di Java, che in genere rovina altre app. Sei dannato se lo fai e dannato se non lo fai.

Fare affidamento su sistemi obsoleti porta naturalmente a procedure di manutenzione e amministrazione sempre più difficili e pericolose, ma in molti casi tale pericolo è il risultato artificiale e inutile dei fornitori che limitano l'accesso alle versioni software precedenti. Nessuno vuole mantenere per sempre il software più vecchio e ci sono certamente dei rischi per la sicurezza da considerare, ma la durata incredibilmente breve di alcuni software alla fine porta a più problemi, non meno.