Le applicazioni mission critical sono essenzialmente i sistemi da cui dipende il business d’impresa. Sebbene al giorno d’oggi sia diventato difficile identificare un singolo servizio o piattaforma di cui si possa fare a meno, è pur vero che alcuni costituiscono ingranaggi chiave dell’impresa, senza i quali ci sarebbe un blocco delle attività e, nel caso peggiore, la perdita dei clienti e la chiusura. Per imprese che operano in settori tradizionali b2b, mission critical coincide in genere con la gestione dei processi di produzione, di supply chain e di delivery. Attività di gestione ordini, fatturazione, relazione con clienti potrebbero non essere impattanti nel breve termine sulle attività aziendali, come invece lo sarebbero in aziende b2c o, peggio ancora, in aziende che operano unicamente su canali di e-commerce. Va da sé che una stessa applicazione o servizio possa essere mission critical per un’azienda e non per un’altra, che per un’azienda di servizi marketing il CRM sia vitale, così come per i sistemi antifrode per chi gestisce sistemi di pagamento. Mission critical è qualsiasi applicazione o sistema il cui malfunzionamento costituisce un problema aziendale, capace di scalare tutte le gerarchie fino al CEO.
Caratteristiche e terminologia dei sistemi mission critical
Le garanzie che le aziende pretendono dalle applicazioni mission critical sono comprese in un insieme più ampio che va sotto il nome di business continuity. Oltre alla continuità di software e sistemi IT è infatti importante considerare ciò che vi ruota attorno: infrastrutture fisiche (l’ufficio, il data center), le persone e la governance aziendale. L’azienda deve poter sopravvivere a disastri che non sono esclusivamente o primariamente collegati con l’IT, caratteristica conosciuta come disaster tolerance oppure essere capace di fare disaster recovery, dove quest’ultimo è il processo per rimettere insieme le risorse necessarie per continuare a condurre il business dopo un danno grave che abbia compromesso un sito primario.
Secondo un decalogo della British Computer Society, un sistema/applicazione mission-critical dev’essere capace:
- di sopravvivere ai guasti tramite capacità di resilienza o di failover (ossia di sostituzione automatica delle risorse guaste);
- di resistere ai cambiamenti (non interrompere i servizi durante un aggiornamento);
- di resistere alle persone (ossia agli errori che inevitabilmente gli umani possono commettere, sfruttando il più possibile l’automazione).
Non deve inoltre utilizzare processi che possano portare a corruzione o perdita di dati critici.
Poiché i requisiti cambiano nel tempo, applicazioni e sistemi mission critical devono possedere capacità specifiche a supporto delle evoluzioni e della scalabilità, minimizzando gli impatti correlati con aggiornamenti e modifiche. Poiché il business vi dipende, ai sistemi mission critical è chiesta l’alta affidabilità. Se per alcune aziende non è necessario raggiungere uptime del 100% su scala 24×365, in altre può essere difficile aprire finestre temporali per aggiornamenti, risolvere errori o fare un backup con logiche tradizionali. Per questo servono caratteristiche di modularità e resilienza inserite nel sistema.
Il data center aziendale tra tradizione e innovazione
Le applicazioni mission critical o “core” sono storicamente state ospitate nel data center aziendale per almeno tre buoni motivi:
- il primo riguarda la capacità di controllo diretta da parte del team IT dei dati e dei servizi essenziali all’azienda;
- il secondo concerne l’esigenza di poterne fruire su base locale senza dover dipendere da fornitori esterni;
- infine c’è il motivo dei costi: le applicazioni core sono in genere quelle più usate in azienda, le più prevedibili nei pattern di utilizzo (almeno laddove questo è fatto da un numero finito di dipendenti e collaboratori) condizioni che permettono di adeguare in modo efficace applicazioni e sistemi ai carichi di lavoro e, sulla scala della media e grande impresa, di ottenere vantaggi economici, almeno laddove ci sono già il data center e il team di persone dedicato alla gestione.
Tra le risorse più innovative oggi disponibili per supportare applicazioni critiche ci sono i sistemi convergenti e iperconvergenti, caratterizzati da unità modulari comprensive di capacità CPU, storage e networking, scalabili nelle potenze e adatti a ospitare macchine virtuali e applicazioni tradizionali in una logica dinamica che permette lo scambio con altri sistemi o con il cloud pubblico. Se da una parte le esigenze di aggiornamento tecnico e formativo per le persone non sono una passeggiata, dall’altro le tecnologie che consentono ai provider di servizi cloud di virtualizzare e gestire in modo automatizzato grandi infrastrutture data center stanno diventando sempre più accessibili all’IT d’impresa.
Software defined architecture (SDA), containerizzazione, orchestrazione permettono alle realtà aziendali di recuperare flessibilità, velocità nei tempi di reazione ad attacchi di sicurezza e guasti, sfruttare servizi in cloud esterni come serbatoio di risorse per il disaster recovery o per evitare il degrado delle performance nelle situazioni in cui si verificano picchi di carico.
Cloud: risorsa matura per il mission critical
I servizi in cloud sono oggi largamente utilizzati a supporto di applicazioni mission critical in particolare per servizi di frontend per l’end user che richiedono continuità di prestazioni e affidabilità. I principali provider mondiali di cloud, Amazon (AWS), Google (GPlatform), Microsoft (Azure), seguiti a distanza da IBM e Oracle dispongono di siti locali e remoti per garantire la continuità dei servizi anche nel caso malaugurato di un disastro. Secondo le ultime rilevazioni dell’Osservatorio Cloud Transformation del Politecnico di Milano, il cloud è un mercato entrato nella fase di piena maturità; anche in Italia dove quest’anno registrerà una crescita del 19% rispetto all’anno precedente, per un valore di circa 2,34 miliardi di euro.
Con modalità diverse, un numero sempre maggiore di applicazioni aziendali è oggi fruibile in cloud traendo vantaggi di flessibilità, di time-to-market, accesso ad elaborazioni analitiche avanzate su big data o di intelligenza artificiale per conoscere meglio i clienti e i mercati di riferimento.
I servizi cloud dei grandi service provider hanno democratizzato l’accesso alle capacità di fault resilience e disaster recovery a vantaggio, in particolare, delle realtà aziendali più piccole, in passato prive di strumenti resilienti e quindi anelli deboli nelle supply chain delle grandi aziende supposte sicure. La disponibilità di applicazioni in cloud Saas gestite dagli stessi fornitori software rende oggi automatica l’applicazione di patch e aggiornamenti vitali per garantire la continuità di funzionamento e la difesa sul fronte della cybersecurity. Il mondo del cloud è in continua evoluzione e in cerca di differenziazioni anche sul fronte del supporto alle applicazioni mission critical.
Importante sottolineare poi l’evoluzione verso modelli che vedono l’integrazione di cloud differenti “visti” dai sistemi informativi aziendali come un unico pool di risorse: oggi in Europa, Gartner e IDC rilevano che la media dei cloud provider utilizzati dalle aziende è di quasi 5 (anche se l’Italia risulta un po’ arretrata su questo trend, visto che gli ultimi dati dell’Osservatorio Cloud Transformation del Politecnico di Milano indicano in meno di 3 i provider utilizzati in media dalle aziende italiane). L’orchestrazione multicloud richiede sicuramente una capacità di governance sostenuta da soluzioni adeguate, ma anche che le applicazioni siano in grado di sfruttare le peculiarità dei diversi cloud.
Applicazioni d’impresa: la sfida della continuità nel cambiamento
L’ERP è per molte realtà aziendali il supporto applicativo mission critical (o, come a volte viene definito, business critical) per eccellenza sul quale s’innestano i processi aziendali più comuni e, nei casi fortunati, anche quelli specifici per settore o sviluppati internamente dall’azienda. L’evoluzione tecnologica va nella direzione di spezzare le componenti software monolitiche fortemente personalizzate del passato in tante componenti agili, funzionalmente differenziate, per realizzare in modo componibile ciò di cui l’azienda ha bisogno.
La personalizzazione ha lasciato il posto alla configurazione: se le applicazioni, o le practice da queste supportate, non rispecchiano i processi aziendali bisogna cercare un modulo più conforme oppure è necessario cambiare i processi aziendali. La standardizzazione è diventato un valore in tutti i processi consolidati, dove serve parlare la stessa lingua con consulenti, partner, fornitori e clienti. Permette inoltre di accelerare l’innovazione laddove le costose personalizzazioni hanno frenato il rinnovamento.
L’architettura delle più moderne applicazioni gestionali mission critical è funzionale all’utilizzo del cloud come piattaforma d’integrazione con applicazioni end-user, tecnologie di machine learning, AI, blockchain e IoT. Il cloud permette di valorizzare i dati operativi aziendali per fare analisi in tempo reale, ampliando le capacità di confronto con i big data.