Dallo sviluppo all’implementazione: tecnologie e strumenti per servizi di qualità, veloci e vicini a cittadini e imprese
Come velocizzare e rendere più efficiente la creazione e la successiva erogazione dei servizi da parte delle Amministrazioni Pubbliche? Come valorizzare il grande patrimonio di dati che oggi abbiamo a disposizione? È indispensabile rinnovare le metodologie e gli strumenti di sviluppo e di implementazione delle soluzioni che, per ottenere il massimo dai dati, devono essere supportate da infrastrutture adeguate
22 Settembre 2021
Dobbiamo digitalizzare la PA per renderla sempre più resiliente e capace di rispondere in tempo reale sia a eventi esterni e imprevedibili (come nel caso della pandemia) sia alle mutate esigenze di cittadini e imprese. Ma soprattutto per sostenere la ripartenza, come ci ricorda il PNRR che mette la digitalizzazione della PA all’interno della prima Componente (Digitalizzazione, innovazione e sicurezza nella PA) della Missione 1 (Digitalizzazione, innovazione, competitività, cultura e turismo).
Ma come velocizzare e rendere più efficiente la creazione e la successiva erogazione dei servizi da parte delle Amministrazioni Pubbliche? Come valorizzare il grande patrimonio di dati che oggi abbiamo a disposizione? In questo contesto è indispensabile rinnovare le metodologie e gli strumenti di sviluppo e di implementazione delle soluzioni che, per ottenere il massimo dai dati, devono essere supportate da infrastrutture adeguate.
Un esempio? Con il ricorso allo smart working, molte amministrazioni hanno dovuto estendere all’80-90% dei dipendenti applicazioni in precedenza utilizzate, in via sperimentale, da poche decine di lavoratori, facendo emergere l’esigenza della scalabilità e dell’agilità delle applicazioni e delle infrastrutture. Questi temi resteranno attuali anche nel cosiddetto “new normal”, come conseguenza della crescente abitudine e propensione dei cittadini a ricorrere ai servizi online e alle app digitali per relazionarsi con le amministrazioni. La PA deve avere quindi la capacità di gestire picchi di utilizzo evitando disservizi.
Metodologia DevOps: una scelta per servizi di qualità, veloci e vicini a cittadini e imprese
La logica DevOps[1], adottata dalle organizzazioni più dinamiche e innovative per la sua capacità di dare un impulso all’innovazione e di aumentare la produttività, può rappresentare un punto di forza anche per le amministrazioni centrali e locali. Al tempo stesso è indispensabile un’architettura basata sui dati capace di accelerare l’intera pipeline CI/CD (abbreviazione dei termini inglesi Continuous Integration/Continuous Delivery). Gli sviluppatori devono poter creare ambienti di sviluppo in logica self-service, contando su servizi PaaS (Platform as a Service) e IaaS (Infrastructure as a Service), senza dover aspettare giorni o settimane perché qualcuno li predisponga.
Perché aumentare la velocità di deploy e come farlo con l’aiuto dei container
Migliorare i tempi di distribuzione (deploy), ossia il tempo che intercorre tra l’invio di nuovo codice in produzione e il momento in cui gli utenti possono utilizzarlo, consente di:
- disporre più velocemente di nuove funzionalità in produzione;
- ridurre i tempi di interruzione, grazie all’invio più rapido delle correzioni dei bug;
- aumentare la sicurezza su quanto inviato grazie alla possibilità di invii più frequenti.
L’esigenza di velocità e agilità, sentita anche nella PA, può essere ottenuta ricorrendo a un’architettura leggera e flessibile, prevalentemente basata su cloud e senza il bagaglio di infrastrutture complesse e proprietarie. La scelta del cloud è considerata ormai strategica e irrinunciabile per la PA, con l’obiettivo di cogliere i benefici in termini di flessibilità, riduzione dei tempi di delivery delle soluzioni e di risparmio dei costi. Il paradigma “Cloud-First” – uno dei principi cardine del Piano Triennale per l’Informatica nella Pubblica Amministrazione 2019-2021 – è stato inserito tra i pilastri del progetto di digitalizzazione della PA a cui è dedicata la Missione 1 del PNRR ed è recentissima (7 settembre) la presentazione della “Strategia Cloud Italia” da parte del Ministro Vittorio Colao.
In questo contesto, un importante contributo può venire dai container, tecnologia sempre più adottata con l’obiettivo di aumentare l’efficienza della distribuzione delle applicazioni. A differenza delle macchine virtuali tradizionali che realizzano la virtualizzazione dell’infrastruttura informatica, i container rendono possibile la virtualizzazione delle applicazioni software, grazie all’utilizzo del sistema operativo host, anziché fornire il proprio; ne conseguono ridotte risorse di elaborazione e facilità e velocità di installazione. È così possibile la distribuzione in cluster, con container individuali, che racchiudono componenti singoli di applicazioni complesse rendendo in tal modo possibile l’aggiornamento dei singoli componenti senza la necessità di modificare l’intera applicazione.
I container cambiano il modo di progettare, sviluppare, compilare, distribuire, gestire le applicazioni e aiutano a:
- migliorare la sicurezza, l’accesso ai dati e alle applicazioni legacy;
- capitalizzare sugli investimenti esistenti nell’infrastruttura on-premise;
- collegare i data center tradizionali al cloud ibrido;
- eseguire applicazioni native cloud e distribuire applicazioni non native per il cloud;
- scalare grazie a una piattaforma container aperta e ottimizzata per il cloud ibrido, che rappresenta il modello più diffuso anche nella PA.
Pure Storage come partner per l’erogazione di servizi a valore per il cittadino
Se puntare sulla metodologia DevOps, sul fast deploy e sulla gestione integrata delle infrastrutture nel Data Center è, quindi, una scelta ideale per le amministrazioni che vogliono erogare servizi a valore per il cittadino, Pure Storage offre tecnologie e strumenti che supportano proprio tale scelta.
Uno strumento come Pure Data-Centric Architecture di Pure Storage, grazie alla tecnologia core all-flash su cui si basa, velocizza e semplifica la metodologia DevOps e accelera la pipeline CI/CD che consiste nel portare continuamente nuovo codice nell’applicazione e distribuirlo in produzione.
Una piattaforma di orchestrazione di container aperta basata su Kubernetes, risultato di un accordo fra Pure Storage con RedHat (OpenShift), offre una base pronta per la produzione e semplifica i deployment, rendendo più facile e rapido eseguire e gestire i carichi di lavoro, gestire le applicazioni containerizzate, spostarle da cloud a cloud, integrare componenti in cloud e on premise. Le funzionalità dei container sono inoltre potenziate grazie a sistemi di storage flessibili e affidabili e data services avanzati a livello dell’intera organizzazione, come ad esempio Storage-as-a-Service supportati dalla velocità all-flash di Pure Storage. L’integrazione pre-configurata con Docker, Kubernetes e i principali sistemi consente inoltre di controllare la pipeline CI/CD e aumentare la produttività di sviluppo e rilascio.
[1] Il termine DevOps nasce dalla contrazione delle parole inglesi Development (sviluppo) e Operation (messa in produzione). Presuppone una metodologia di sviluppo del software che si basa sul lavoro di team di sviluppo interfunzionali, quindi sulla comunicazione e collaborazione tra sviluppatori e addetti alle operation dell’IT. Prevede un approccio che consente di accelerare i processi che consentono di passare dallo sviluppo al deployment, permette di creare servizi IT più efficaci e di valore per il business; aiuta le aziende nella gestione dei rilasci di servizi e applicazioni, permette di standardizzare gli ambienti di sviluppo per metterli a disposizione di realtà che vogliono contare su sistemi flessibili e controllabili.