La trasformazione digitale è un tema in agenda per tutte le organizzazioni di qualunque dimensione.
Un approccio per realizzarla può essere la reingegnerizzazione di tutti i software che non presentano caratteristiche in linea con tecnologie e metodologie in uso; una soluzione che richiede un’allocazione di risorse molto significativa e un piano che in aziende strutturate può avere durata pluriennale. Nella valutazione di scenari di trasformazione è sicuramente necessario porre particolare attenzione ai sistemi critici per il business, ovvero quelli che generano ricavi o che supportano i processi aziendali, che anche se legacy sono di vitale importanza per i risultati e la continuità operativa.
Reingegnerizzare un software comporta la necessità di analizzare e valutare una serie di aspetti, tra cui:
- la complessità dell’applicazione
- la compatibilità con il successivo quadro di riferimento
- i tempi necessari e le opportune competenze
Le soluzioni basate su mainframe sono ancora piuttosto diffuse e centrali nella gestione di processi aziendali critici: nella valutazione di scenari di trasformazione è evidente che siano i primi sistemi verso cui si rivolge l’attenzione. A suggerirlo ci sono anche diversi fattori di natura non tecnologica, come i costi e la capacità di supportare processi agili. Nella migrazione, tuttavia vanno considerati con molta attenzione anche i rischi, in termini di continuità di servizio e di know-how legato a competenze specifiche, le esigenze aziendali e i risultati operativi previsti negli anni.
Un approccio alternativo è di tipo evolutivo dell’architettura software aziendale, ovvero attraverso un processo costante e graduale nel tempo.
In questa ottica, anche i mainframe, correttamente inseriti nello scenario di evoluzione, potranno continuare a mantenere il proprio ruolo all’interno dell’architettura fino a quando si deciderà di sostituirli in favore di altri sistemi, una sostituzione che potrebbe anche non verificarsi senza che questo pregiudichi il valore del parco applicativo aziendale e la coerenza del disegno complessivo.
Una strategia a supporto dell’approccio evolutivo è il digital decoupling con cui è possibile ottenere benefici nel breve termine e porre le basi per una trasformazione progressiva ed efficace.
Digital Decoupling: cos’è?
Come suggerisce il nome, il disaccoppiamento digitale interviene sui meccanismi di comunicazione tra i differenti sistemi e canali dell’architettura software aziendale per promuovere il disaccoppiamento delle varie componenti. Tradizionalmente i prodotti digitali accedono direttamente ai servizi esposti dai sistemi in architettura, creando un accoppiamento sia dal punto di vista delle interfacce che computazionale. Architetture distribuite come le SOA aggiungono un livello di disaccoppiamento ma non risolvono il problema, infatti:
- accoppiamento delle interfacce. I servizi esposti dalla SOA sono quelli messi a disposizione dai vari sistemi disponibili, ogni variazione al contratto di interfaccia ha effetto sull’intera filiera e richiede un aggiornamento di tutte le componenti software
- accoppiamento computazionale. Ogni chiamata ai servizi esposti, al netto di politiche di cache, insiste sui sistemi di origine dei dati e, anche in presenza di meccanismi di chiamata asincroni, la velocità con cui i fruitori ricevono le risposte è direttamente correlata alla velocità dei sistemi che espongono i servizi
Il digital decoupling punta ad eliminare questi livelli di accoppiamento attraverso l’utilizzo di piattaforme specializzate che hanno lo scopo di immagazzinare e distribuire i dati provenienti dai vari sistemi produttori, il cambio di paradigma è sostanziale spostando la centralità dal servizio al dato, attraverso piattaforme per l’analisi e/o la distribuzione delle informazioni contenute nei sistemi sorgente.
Produttore e consumatore dei dati in questo scenario non sono più collegati direttamente né dal punto di vista funzionale né computazionale permettendo ad entrambi di evolvere indipendentemente e garantendo al consumatore continuità di erogazione anche in caso i sistemi sorgente dovessero avere disservizi temporanei.
Grazie a questo approccio, i singoli componenti software possono essere valutati in modo indipendente, con una pianificazione degli interventi graduale e meno onerosa: alcuni elementi vengono sostituiti, altri vengono migrati, altri ancora vengono riqualificati. I rimanenti, se ce ne sono, possono essere lasciati nella forma preesistente, grazie al corretto assessment del patrimonio software e del suo sviluppo.
In questo modo la migrazione è morbida, produce effetti già nel breve termine e ottimizza il risultato finale.
In sostanza, il disaccoppiamento consente ai sistemi meno recenti di funzionare in parallelo con le nuove tecnologie, in modo che le organizzazioni possano continuare a estrarre valore dall’IT legacy, ottenendo al contempo agilità e riducendo il debito tecnico.
Il digital decoupling: la strategia e i suoi abilitatori
Le principali azioni che si possono introdurre per un mainframe offloading efficace con il digital decoupling sono: disaccoppiamento di canali digitali e back end, offloading dei dati, valutazione delle applicazioni off-the-shelf e composizione dei team di lavoro.
Vediamole in dettaglio.
Disaccoppiamento di canali digitali e back-end
Il disaccoppiamento offre a vari canali flessibilità nella realizzazione dell’offerta, riduzione delle dipendenze e del tempo necessario per portare sul mercato nuove soluzioni per i propri clienti. Nell’architettura di decoupling è centrale lo strato di business integration, che offre l’indipendenza dai sistemi di back-end (inclusi quelli legacy) e permette la realizzazione rapida e flessibile di servizi specializzati per i canali digitali.
È questa la logica del data hub, che offre un catalogo di servizi riutilizzabili, l’aggregazione di dati e la realizzazione di servizi a partire da repository e back-end legacy. I servizi sono esposti (eventualmente anche a terze parti) tramite le opportune API.
I risultati pratici del disaccoppiamento tramite data hub sono notevoli: non solo riduzione dei costi e accelerazione del time to market, ma anche migliore visibilità operativa e maggiore produttività dei team.
Numerosi i casi citati in letteratura: ad esempio, la MIT Sloan School of Management cita il caso di una compagnia assicurativa che dopo il decoupling ha visto una riduzione dei costi di gestione del 60% e un aumento del 350% delle vendite incrementali di polizze.
Offloading dei dati
Oltre che sul software e sui criteri di accoppiamento, si può operare anche direttamente sui dati. La prima operazione che si può introdurre nel mainframe offloading è spostare i dati gestiti dal mainframe su piattaforme analitiche, applicando logiche di verifica sull’aggiornamento dei medesimi (timestamp, indicatori di stato, trigger o change data capture) per rispondere alle necessità del business in termini di report e analisi dei dati. Un sistema molto diffuso è sfruttare il change data capture (CDC) per inviare i dati verso un message broker da cui la piattaforma di analytics potrà prelevarli, manipolarli e salvarli per gli usi richiesti dal business.
Valutazione delle applicazioni off-the-shelf
I risultati dell’assessment iniziale possono evidenziare la presenza di un numero significativo di applicazioni custom realizzate nel tempo, in questo caso è conveniente approfondire il loro utilizzo sia dal punto di vista funzionale che dei processi aziendali per comprendere se è possibile sostituire tali componenti software con prodotti o soluzioni “as a service”. Questo tipo di approfondimento allunga sicuramente i tempi di assessment ma permette di operare scelte che sul medio e lungo periodo possono portare ad una significativa riduzione dei costi operativi, è inoltre un approfondimento che all’interno dell’approccio proposto non ha un effetto complessivo sulla strategia e sul piano di evoluzione dell’architettura.
Ripensamento della struttura dei team
Il cambiamento nella struttura dei sistemi IT è più efficace quando è combinato con un cambiamento nella struttura dei team. Questo è un cambiamento di carattere organizzativo e culturale, quindi possibile solo in presenza di un allineamento a tutti i livelli della struttura aziendale ma che può fare una differenza sostanziale nell’efficacia delle azioni descritte. Storicamente l’organizzazione dei gruppi di lavoro ha seguito criteri legati alla specializzazione delle professioni con l’accentramento di tutte le decisioni su un gruppo ristretto di persone, i modelli che si stanno affermando negli ultimi anni mirano a una maggiore responsabilizzazione delle persone e decentralizzazione di molte decisioni su team con competenze eterogenee (cross-functional team) organizzati rispetto a singoli sottoprodotti della filiera aziendale. Il leadership team in questa configurazione può così concentrarsi sugli aspetti a maggior valore aggiunto (strategia ed indirizzo) supportato da un team di governance che si occupa di definire il quadro di regole comuni da rispettare.
Conclusioni
La valutazione complessiva di un ammodernamento è ovviamente influenzata da quantità e complessità delle soluzioni legacy in azienda. Se questi sistemi sono molti e funzionanti, la trasformazione digitale può sembrare troppo rischiosa e onerosa, ritardando l’attuazione di un piano necessario per rimanere competitivi.
L’utilizzo di una strategia come il digital decoupling permette di pianificare nel tempo interventi parziali e di continuare a sfruttare i sistemi legacy fino a quando necessario, ma garantendo il raggiungimento di obiettivi fondamentali di trasformazione come la velocità nella realizzazione di nuove iniziative e l’introduzione di tecnologie moderne.