Modernizzare applicazioni Legacy è una sfida che per molte aziende non è più possibile ritardare. Tuttavia è difficile capire da dove iniziare, e come scongiurare interruzioni di servizi o perdita di dati e fare una corretta previsione dei costi di un’App Modernization.
Due sono gli aspetti cruciali di questo processo e sono, la definizione della nuova infrastruttura IT in cloud e l’adozione di codice e framework adatti alla nuova infrastruttura.
Nel fare le prime valutazioni di App Modernization, qualsiasi sia l’infrastruttura target (AWS, GCP, Microsoft Azure, o un ibrido), ci si imbatte ben presto nel modello delle 7R. Si tratta di un elenco riassuntivo di attività complesse, che se svolte secondo una precisa strategia, permettono alle aziende di rinnovare software e offerte senza soluzione di continuità. Questa guida fornirà un’illustrazione delle strategie di migrazione in Cloud nel percorso di App Modernization, illustrando i pro e i contro di ogni possibile passo. La finalità di questa guida è quella di permettere una prima valutazione del percorso verso un software moderno e un’infrastruttura altamente scalabile.
Come in ogni decisione strategica aziendale che vada ad incidere in maniera rilevante, è doveroso iniziare da una “fotografia” della situazione di partenza. Nel caso di una modernizzazione di sistemi obsoleti, con un Audit dell’Infrastruttura IT e dell’applicativo è possibile identificare:
Solo dopo aver eseguito l’audit, è possibile sviluppare una strategia che supporti al meglio gli obiettivi aziendali.
Tutte le strategie di App Modernization aggiungono vari gradi di vantaggi e valore, ma optare per un approccio con una visione complessiva migliora le probabilità di successo rispetto a sforzi di modernizzazione ad hoc o frammentari. Imboccare quindi la strada più idonea per modernizzare i sistemi legacy aziendali è uno step fondamentale per la migrazione al Cloud nella maniera più efficiente, ma consente anche di prevenire ed evitare “incidenti di percorso” che potrebbero far lievitare tempi e costi in un secondo momento.
Un buon piano di modernizzazione delle applicazioni richiede di bilanciare i vantaggi, i rischi e l’idoneità di aspetti specifici, oltre che il ruolo di Clienti, utenti finali, e altre parti interessate. Di seguito abbiamo raccolto le classiche 7 strategie di modernizzazione delle applicazioni, note anche come le 7 R:
Una prima, semplice, strategia di App Modernization è il trasferimento dell’Host, cioè il trasferimento dell’applicativo dal locale al Cloud effettuando modifiche minime alla struttura.
Il Re-Hosting, detto anche Lift & Shift, viene utilizzato principalmente per migrare rapidamente applicazioni legacy su larga scala; questo processo non è solo un punto di arrivo, ma spesso è il primo fondamentale passo per successivi interventi. Infatti, a seguito dell’operazione di Re-Hosting sul Cloud, l’infrastruttura IT risulta più facile da ottimizzare e riprogettare.
Il Re-Platforming consiste nello spostare un’applicazione legacy nel Cloud effettuando anche un certo livello di ottimizzazione così che funzioni in modo ottimale nel Cloud senza riscrivere la sua architettura di base. Così come nel Re-Hosting quindi, non si apportano stravolgimenti alla struttura.
Il processo di Re-Platforming viene usato generalmente quando è necessario apportare al codice minime variazioni, quelle che servono per garantire che nella nuova piattaforma cloud l’applicazione abbia le stesse funzionalità; per questo il trasferimento di piattaforma viene anche detto Lift & Reshape.
Il Re-Factoring consiste nella riscrittura, parziale o totale, di un’applicazione per conformarla ai nuovi standard, funzionalità e casi d’uso del cloud computing. La strategia di App Modernization tramite Re-Factoring può richiedere molto tempo e denaro. Tuttavia, è anche il percorso più efficace e durevole per sfruttare i più recenti vantaggi del cloud.
La strategia di riscrittura del codice, detta anche Re-Architecting, viene utilizzata per rendere compatibili al meglio le applicazioni sulle piattaforme cloud, ma anche nel caso in cui si vogliano aggiungere nuove funzionalità all’app senza rischiare che possano interferire con quelle principali del software.
La strada del Re-Purchasing mira a sostituire una soluzione locale con un’alternativa basata sul cloud, spesso con una soluzione Software-as-a-Service (SaaS). La strategia di Sostituzione consiste quindi nel rimpiazzare applicazioni e dati locali con un prodotto cloud native già pronto, senza alcuna responsabilità infrastrutturale o di manutenzione (il processo è infatti anche noto come Drop and Shop).
Sostituire un sistema legacy esistente con uno cloud è l’ideale per risparmiare sui costi relativi allo sviluppo IT o per migrare in cloud applicazioni e dati che risultano difficili da trasferire.
Con una strategia di rilocalizzazione si migra l’infrastruttura nell’ambiente cloud senza la necessità di un nuovo hardware, di modifiche nelle operazioni esistenti o di riscrittura delle applicazioni.
Questo scenario di modernizzazione di app è specifico per la migrazione di infrastrutture su VMware Cloud di AWS (Amazon Web Services). È una via percorribile per le strutture che utilizzano VMware come data center on-premise per spostare carichi di lavoro sul Cloud senza avere interruzioni di servizio.
Non sempre è possibile, o auspicabile, modernizzare le applicazioni legacy migrandole sul Cloud, per svariate ragioni: problemi di conformità e fattibilità, ma anche di sicurezza. La strategia di conservazione consiste nel mantenere dei carichi di lavoro in locale, con un piano per rivederli in seguito per ulteriori decisioni (per questo è anche detta Re-Visit).
Il Retain di sistemi legacy diviene una strada percorribile quando si hanno applicazioni che non possono essere migrate, o nel caso in cui bisogna rispettare rigide politiche sulla trasmissione dei dati e sulla privacy, ma anche come strategia di temporeggiamento per future valutazioni.
Fin qui abbiamo visto processi di modifica o spostamento di App Legacy sul Cloud. A volte però può essere necessario semplicemente disattivare o rimuovere applicazioni che non sono più necessarie. È in pratica una di strategia di alleggerimento dell’App per farla performare meglio.
Tuttavia, non è una via da prendere con leggerezza, poiché bisogna attentamente valutare quali applicazioni ritirare: potrebbero avere ripercussioni non (ancora) note su altre funzionalità.
Intraprendere e completare un percorso di Application Modernization, non è semplice.
Come abbiamo detto richiede innanzitutto un Audit o una fase preliminare di approfondita valutazione.
Per portare a termine tutte le attività necessarie e quindi tutto il percorso di modernizzazione, sono necessarie diverse figure e specializzazioni che lavorino in team e che gestiscano tutti gli aspetti tecnologici e operativi.
Inoltre, sono necessarie figure specializzate nella progettazione, nell’allestimento e nella gestione della nuova infrastruttura cloud, come sviluppatori specializzati nei framework adatti.
Per tutte queste ragioni le aziende si rivolgono a partner specializzati, che sono in grado di affiancarle per portare a termine con successo il percorso di Application Modernization.
Bottega52 è un partner ideale per la modernizzazione degli applicativi aziendali, e si distingue per:
La modernizzazione di applicazioni legacy non si esaurisce con il compito di un partner specializzato in tecnologia cloud come Bottega52. Una volta completato il processo e messo l’applicativo in opera, l’infrastruttura cloud necessita di una corretta operatività e manutenzione. Bottega52 è anche un Cloud Service Provider in grado di gestire l’intero ciclo di vita dei prodotti digitali, e affiancare il Cliente con la gestione completa dell’infrastruttura IT.
Esternalizzando il reparto IT cloud il cliente può dedicare il team interno all’evoluzione e al miglioramento degli applicativi, affidando a Bottega52 l’intera gestione dell’infrastruttura, secondo SLA concordati e con assistenza 24/7 enterprise grade.