In pole position nell’era digitale con un’esperienza cliente migliore. Date impulso alle innovazioni e portate più agilità nella vostra azienda. Consolidate il successo del vostro business futuro modernizzando le applicazioni obsolete.
Testo: Nadia Yépez Ccanto, Immagini: Swisscom
9 febbraio 2024
La modernizzazione delle applicazioni ormai obsolete può essere dettata anche da altre esigenze. Ad esempio la mancanza di competenze per la gestione e l’ulteriore sviluppo di applicazioni complesse basate su tecnologie superate, l’esigenza di ottimizzare i costi o l’introduzione di nuove disposizioni in materia di protezione dei dati, compliance e sicurezza.
La modernizzazione delle applicazioni esistenti offre diversi vantaggi a vari livelli. Innanzitutto è possibile automatizzare i processi di lavoro e aumentare così l’efficienza e l’agilità dell’azienda. L’automatizzazione può anche accelerare il processo di sviluppo e messa a disposizione, riducendo i tempi di implementazione e approvazione delle correzioni e delle nuove funzionalità. In particolare si aumenta il grado di compatibilità con i sistemi periferici, agevolando il passaggio al cloud e gettando le basi per l’utilizzo di microservizi.
Quali sono i principali aspetti da osservare per la modernizzazione delle app? Per aggiornare le applicazioni in maniera efficace, vantaggiosa e sostenibile, è importante tenere conto dei fattori seguenti:
Ogni software ha tantissime sfaccettature, dai costi all’architettura, dagli aspetti operativi a quelli legati alla sicurezza. Per una modernizzazione efficace è quindi necessario coinvolgere tutti gli attori chiave, con le loro competenze e conoscenze specifiche.
Mettere sul tappeto diverse prospettive è tanto importante quanto sviluppare una visione a tutto tondo. L’obiettivo è conciliare i requisiti delle applicazioni, le esigenze dei vari stakeholder e le sfide che l’azienda deve affrontare. Business owner, app owner, operations manager, responsabili tecnici e altri stakeholder: ognuno contribuisce condividendo le proprie competenze. È essenziale anche coinvolgere figure che forniscano un feedback dalla prospettiva degli utenti finali per ottimizzare l’esperienza di utilizzo.
I seguenti passaggi possono aiutare a velocizzare il time to market senza compromettere la qualità o la continuità del servizio:
Partite dall’innovazione: l’implementazione di funzioni innovative sotto forma di MVP nel public cloud e l’integrazione dell’applicazione nel sistema preesistente creano un ambiente ibrido per le fasi successive. Per aumentare l’efficienza operativa e accelerare il processo di sviluppo e messa a disposizione vengono adottati approcci ad es. di tipo Agile, DevOps o Lean.
Proseguite con l’automatizzazione: a questo punto di tratta di individuare il potenziale di automatizzazione. L’obiettivo è puntare su automatizzazioni che si traducano rapidamente in vantaggi. Un esempio può essere l’introduzione dell’IaC (Infrastructure as Code) come soluzione per l’infrastruttura, oppure l’allestimento di una CI/CD pipeline (Continuous Integration / Continuous Delivery) nel processo di sviluppo e deployment. Spesso anche il test delle applicazioni rivela un importante potenziale.
Passate ai microservizi: svincolare i componenti dai vecchi sistemi può essere un’operazione molto onerosa. Inoltre, l’introduzione di nuove funzionalità è rallentata dal fatto che i singoli componenti sono strettamente interconnessi tra loro. In questi casi può essere utile sfruttare i microservizi. Non bisogna cercare di cambiare tutto di punto in bianco. Per garantire la qualità e la continuità del servizio è meglio iniziare a piccoli passi nel cloud, svincolando man mano i vari componenti.
Per utilizzare efficacemente il public cloud nel progetto di modernizzazione, è bene osservare i punti seguenti:
In un progetto di modernizzazione delle app, la sicurezza è un fattore da considerare fin dalle prime fasi. Le applicazioni che devono essere ripensate e migliorate per soddisfare i requisiti attuali sono esposte a nuove minacce, ancora più sofisticate. La security deve quindi essere un elemento cardine in ogni fase del progetto – in modo che le nuove applicazioni risultino non solo più efficienti e flessibili, ma anche sicure.