Riuscire a velocizzare il rilascio delle applicazioni software diventa cruciale nello scenario attuale, dove l’evoluzione delle aspettative dei consumatori nel campo dei servizi digitali e la conseguente necessità d’accesso a dati e dispositivi fanno da padroni.

Nell’evoluzione digitale del mondo retail, la creazione dei fondamentali valori di fiducia, relazione e fedeltà non può prescindere dall’impiego di applicazioni di altissima qualità a supporto dei clienti, sia per quanto riguarda le interazioni dirette, realizzate online, sia quelle indirette, mediate dal personale aziendale. Si tratta di un obiettivo importante che richiede maggiore flessibilità e rapidità nel tradurre nuovi progetti e iniziative nel software che serve a garantirne il supporto. La velocità nel rilascio delle applicazioni, in particolare, è un fattore chiave per il time-to-market e il successo nei nuovi business.


Gli ingredienti chiave per velocizzare il rilascio delle applicazioni

Per velocizzare il rilascio delle applicazioni occorre implementare i metodi e le tecniche già collaudate presso software house e aziende che hanno fatto della dinamicità applicativa e della progettualità digitale le componenti di forza del loro business. Tra i metodi più gettonati per gestire i progetti c’èagile”, che consente di sviluppare congiuntamente, in modo incrementale, sia i requisiti funzionali sia il codice software. Ci sono quindi i processi di CI/CD (Continuous Integration e Continuous Delivery) per automatizzare le fasi di sviluppo, di test e delivery del software; le metodologie DevOps (sintesi di development e operation) e DevSecOps (che aggiunge la security) per standardizzare i processi e porre in una catena di montaggio tutte le fasi per sviluppo, test e messa in produzione. Questo in un ciclo ininterrotto, che comprende la raccolta dei feedback utente ed il loro reinserimento all’inizio del ciclo per i necessari upgrade.

Sul fronte delle architetture software lo sviluppo a microservizi semplifica le grandi applicazioni trasformandole in collezioni di servizi indipendenti e più veloci da aggiornare e modificare nel tempo. Nell’ambito del deploy l’utilizzo dei container e dell’orchestratore Kubernetes consente più agilità nel caricare e spostare le applicazioni da un server all’altro sia on premise che in cloud, per rispondere alle differenti esigenze di continuità, prestazione o di riduzione dei costi operativi.

L’insieme di metodi, tecnologie e tool consente di velocizzare il rilascio delle applicazioni per rispondere con prontezza alle nuove necessità degli utenti interni e dei consumatori. A questo proposito, diventa cruciale selezionare un partner adeguato che accompagni l’azienda nella scelta dell’upgrade più adatto alle proprie esigenze.


Case study su aziende retail che hanno velocizzato il rilascio delle applicazioni

La catena retail brasiliana Havan, con circa 150 negozi, aveva la necessità di potenziare l’infrastruttura applicativa in vista di un’espansione della rete di vendita pianificata per l’anno successivo. L’esigenza riguardava, da una parte, poter rendere più rapidi i deploy delle applicazioni, dall’altra, recuperare l’efficienza del team interno (circa 200 persone impiegate negli Havan Labs) dedicato allo sviluppo/aggiornamento sia delle applicazioni di gestione acquisti e logistica sia di quelle per l’interazione online e in store con i clienti. Lo scopo era introdurre automazioni nei processi di sviluppo e deploy per eliminare i procedimenti manuali, onerosi sia per i tempi sia come causa dei problemi di qualità. L’adozione iniziale delle metodologie DevOps e CI/CD non aveva risolto ritardi di delivery causati dalla cattiva integrazione tra le piattaforme a supporto dei differenti processi di approvazione e di test.

La soluzione è stata trovata in Red Hat OpenShift, adottando un approccio DevOps più maturo, integrato con i container e la piattaforma di orchestration Kubernetes. Come risultato, Havan ha avuto una riduzione dei tempi di delivery delle applicazioni da una media di sei settimane a soli tre giorni, traendo ulteriori benefici sui fronti della qualità del codice e dell’ambiente di lavoro. Quest’ultimo aspetto era ritenuto importante per trattenere in azienda il personale tecnico di talento.

Il team IT ha potuto standardizzare i workflow di sviluppo, creare i test per certificare differenti ambienti di produzione. Oggi può creare e fare deploy di applicazioni e aggiornamenti con più frequenza e usare il provisioning in self-service per velocizzare il rilascio di applicazioni a supporto dei nuovi progetti.

Un altro caso è quello di Slovenska Sporitelna, società bancaria parte di Erste Group Bank AG con circa 2,2 milioni di clienti, sollecitata, al pari di tanti altri istituti del mercato bancario retail europeo, ad essere più veloce nell’offrire nuove funzionalità applicative. La banca aveva già adottato l’approccio di sviluppo a microservizi e la metodologia DevOps, ma è con la migrazione su Red Hat OpenShift e l’automazione dei processi attraverso Red Hat Ansible Automation Platform che è riuscita a ridurre sensibilmente i tempi del provisioning di risorse e dei delivery applicativi, a vantaggio della competitività dei suoi prodotti. Il tempo medio necessario per il rilascio delle applicazioni si è ridotto da tre mesi a un solo mese.

Visti i buoni risultati ottenuti con le prime migrazioni, la banca prevede di portare ulteriori servizi sulla piattaforma OpenShift (ad oggi l’istituto utilizza circa 500 applicazioni in 10 differenti ambienti operativi), con lo scopo di ridurre i tempi di sviluppo di nuove funzioni e migliorare la customer experience.