Application Modernization

I vantaggi dell’approccio cloud-native per la tua applicazione legacy.

I temi della modernizzazione

La 12factor rappresenta per noi la metodologia chiave per affrontare la modernizzazione di una applicazione. Come suggerisce il nome, essa stila 12 principi operativi per portare a termine con successo la realizzazione di una applicazione moderna. I temi affrontati possono essere raggruppati in quattro aree.

  • Infrastruttura

    I container e dalla loro orchestrazione (Docker e Kubernetes) rappresenta forse il più importante passo verso una applicazione moderna.

  • Processi

    Per poter sfruttare appieno i vantaggi della nuova infrastruttura un fattore critico è l’adozione delle pratiche DevOps e l’aderenza a metodologie Agili.

  • Architettura

    I microservices sono uno stile architetturale che affronta lo sviluppo di una singola applicazione come una suite di servizi modulari ed indipendenti.

  • Comunicazione

    L’utilizzo di servizi modulari ed autocontenuti consente di basare tutta la comunicazione su API leggere e agnostiche dal punto di vista tecnologico.

Cloud Migration

La fase di migrazione è cruciale nel percorso di modernizzazione di una applicazione o servizio e la corretta strategia andrà a determinare il rapporto costi/benefici più adatto in ogni occasione.

Rehosting

La soluzione più rapida e meno dispendiosa in termini di risorse è il Rehosting. L’applicazione legacy verrà presa dalla precedente infrastruttura on-premise o cloud e migrata ad una nuova, senza o con pochissime modifiche alla sua base di codice.

Questo permette di non interferire in questa fase con il workflow dell’applicazione già in opera, garantendo continuità ma con lo svantaggio di non consentire l’accesso al pieno potenziale di un approccio cloud-native completo (flessibilità e scalabilità in primis). Il Rehosting è la strategia migliore quando si stia cercando di abbattere immediatamente i costi di una infrastruttura on-premise o si ha solamente la necessità aumentare la resilienza della propria applicazione o servizio. In aggiunta, molto spesso le applicazioni possono essere rifattorizzate rapidamente una volta in Cloud e quindi il Rehosting diventa un fondamentale primo passo per il futuro sviluppo di pratiche cloud-native.

Replatforming

Il Replatforming si colloca in una via di mezzo fra il Rehosting e il totale Refactoring. L’applicazione legacy sarà soggetta a delle modifiche limitate ma che consentiranno di avvalersi significativamente dei vantaggi dell’approccio cloud-native.

Il Replatforming si rivela la strategia ottimale quando si stia cercando non solo di abbattere i costi delle infrastrutture on-premise, ma anche di trarre vantaggio dalle caratteristiche delle infrastrutture Cloud per automatizzare alcuni task e ridurre alcuni costi di gestione.

Refactoring

L’ultima e più estesa strategia consiste in un completo Refactoring dell’applicazione legacy. Quest’ultima verrà riarchitettata (completamente o in forma parziale a seconda delle necessità e risorse) per sfruttare appieno l’ambiente Cloud tenendone ben presente le caratteristiche peculiari. Nel Refactoring verranno introdotti dei framework cloud-native (come ad esempio GKE) per una efficienza migliore e delle alte performance.

Il Refactoring non si limita a migrare una applicazione legacy da una infrastruttura on-premise al Cloud, ma rappresenta un vero e propio cambio di prospettiva. Sebbene avventurarsi in un rifacimento totale di una applicazione o servizio funzionante può sembrare rischioso, l’approccio cloud-native ti consente di eseguire questo passaggio in maniera sicura, controllata e graduale.

Perché modernizzare una applicazione Legacy

  • Ti permette di non sprecare risorse

    Avventurarsi in un rifacimento totale di una applicazione o servizio funzionante è rischioso. I vantaggi dell’approccio Cloud-Native possono essere implementati gradualmente nella tua applicazione già in opera, con step confinati e mirati.

  • Nuova vita nella tua applicazione legacy

    La tua applicazione o servizio, grazie a questo tipo di intervento, può uscire dalla sua obsolescenza e tornare a essere competitivo nel mercato moderno grazie alla scalabilità e resilienza offerte dall’approccio Cloud-Native.

  • Abbattere rapidamente i costi di gestione e infrastruttura

    Applicazioni legacy spesso hanno associati notevoli costi di gestione e manutenzione di infrastrutture on-premise. Con i giusti accorgimenti un processo di modernizzazione è in grado di abbattere rapidamente questi costi.

La giusta strategia per la tua applicazione legacy

Modernizzare una applicazione significa intraprendere la strada che porta all’adozione dell’approccio cloud-native, giovando dei grandi vantaggi che porta con se: scalabilità, resilienza, flessibilità. Questo percorso non deve necessariamente essere di brusca rottura con i processi già in opera, la giusta strategia può garantire infatti un passaggio efficace e senza interruzioni.

Non tutte le applicazioni o servizi legacy infatti devono essere sostituiti in toto. Molto spesso bastano alcuni interventi mirati per restituire un prodotto alla sua competitività e per cominciare a sfruttare i vantaggi dell’infrastruttura Cloud.

La Application Modernization è un processo iterativo che ti consente di portare la tua applicazione in Cloud in più step e seguendo strade diverse a seconda delle necessità, introducendo i benefici dell’approccio Cloud-Native progressivamente e in maniera mirata secondo i tuoi obiettivi, riducendo al minimo lo spreco di lavoro già eseguito ed il time-to-market.

Application Modernization: vantaggi del Cloud senza sprechi.
New call-to-action

Le nostre tecnologie

Development
Angular
Docker
Drupal
Go
Node
PHP
React
Symfony
Typescript
Vue
Cloud Native
Containerd
Helm
Kubernetes
Prometheus
Cloud vendors
GCP
AWS
Alibaba Cloud

Application Modernization in opera

Zambon
Drupal, Google Cloud Platform, Alibaba Cloud

Il nuovo ecosistema web dei siti Zambon è Cloud-native e si avvantaggia di una struttura modulare dei contenuti: un unico Design System per la costruzione e la gestione di molteplici siti.