Che cos'è la gestione delle release?

La gestione delle release garantisce che, con l'evolversi delle esigenze, si evolvano anche i servizi di distribuzione: pianificazione delle attività, assegnazione delle risorse e gestione delle consegne.

Gestione delle release è un termine IT utilizzato frequentemente in diversi settori. Nella sua forma più semplice, la gestione delle release può essere descritta come la supervisione dello sviluppo, dei test, della distribuzione e del supporto coinvolti nella progettazione e nella pubblicazione di software. La gestione delle release integra obiettivi e pianificazione strategica a lungo termine, nonché i singoli passaggi tattici seguiti per raggiungere tali obiettivi.

Molte aziende stanno portando la gestione delle release a un livello perfino superiore, oltre il processo tecnico di distribuzione IT di prodotti e funzionalità, fino alla gestione dell'adozione, delle modifiche ai processi aziendali e ad altri fattori interni correlati al roll out.

La gestione delle release svolge un ruolo chiave nella Libreria infrastruttura IT (ITIL). Chiamata anche gestione release e installazione, è uno dei processi principali della sezione Transizione dei servizi di ITIL. La gestione delle release in ITIL è incentrata principalmente sulla qualità e sull'esperienza del cliente per la distribuzione di prodotti e servizi, promuovendo al contempo pratiche aziendali economicamente convenienti. In termini ITIL, la gestione delle release riguarda le modifiche e i miglioramenti a prodotti o servizi esistenti.

ITIL rappresenta forse il framework più affidabile e ampiamente utilizzato per la governance tecnologica. In questo contesto, la gestione delle release garantisce che i team di sviluppo e operativi possano coordinarsi, condividendo conoscenze e risorse pertinenti. In questo modo possono condurre più progetti contemporaneamente con efficacia, fornendo un approccio strutturato per ideare, impiegare, testare e introdurre nuove versioni di componenti o servizi.

Quando diversi team di progetto apportano cambiamenti all'ambiente di produzione, devono essere in grado di coordinarsi in modo efficace. La gestione delle release è atta ad allineare i team a processi, criteri e linee guida unificati per ogni fase della release. Lo scopo è garantire che tutti i coinvolti siano pienamente consapevoli di quali risorse sono disponibili, di come vengono utilizzate e di quali team stanno apportando quali cambiamenti, e garantire che per eventuali cambiamenti successivi si segua una procedura definita e standardizzata. Tale sequenza è chiamata processo di gestione delle release.

Durante il processo di gestione delle release si passa per sei fasi essenziali, descritte di seguito.

Grafico che mostra i diversi aspetti della gestione delle release.

Richiesta

Il primo passo nella gestione delle release consiste nel riconoscere la necessità di nuove funzioni o modifiche a funzioni o servizi consolidati. Le richieste di cambiamento passano attraverso canali prestabiliti e vengono valutate in base a esigenze, fattibilità, costi e altri criteri. Vale la pena notare che non tutte le richieste di cambiamento verranno approvate: le vincitrici passano alla fase di pianificazione.

Pianificazione

La fase di pianificazione include la creazione e la configurazione del sistema di gestione delle release. Pertanto, è probabile che a questa fase sia necessario dedicare più tempo.

In questa fase l'azienda definisce la struttura della release. Una struttura definita con precisione fornirà al team una roadmap da seguire durante le fasi successive e spingerà la release fino alla distribuzione e oltre. Il piano per la release può essere un elenco di controllo, che illustra in dettaglio le azioni e le attività da completare in ordine cronologico, così come i team o le persone responsabili di ciascuna di esse. Detto questo, per molte aziende i workflow digitali dettagliati forniscono la direzione più chiara, garantendo che tutti lavorino per raggiungere obiettivi comuni e che i requisiti essenziali vengano soddisfatti.

I piani efficaci per le release includono solitamente compiti cardine, responsabilità, tempistiche stimate, scadenze e una chiara visione panoramica sul progetto nel suo complesso. I team possono fare riferimento al piano della release durante l'intero processo. La creazione di un sistema di gestione delle release ripetibile e utilizzabile per più release consente di accelerare i processi futuri e coordinare meglio gli sforzi, in tutta l'azienda.

Progettazione e sviluppo

Dopo la fase di approvazione, ideazione e pianificazione, si entra nel vivo dello sviluppo. Per progettare e sviluppare il prodotto, componente o funzione è necessario risolvere eventuali problemi e convertire i requisiti stabiliti del progetto in software. Questa fase si sovrappone parzialmente alla fase successiva.

Test e revisione

Durante la fase di progettazione e sviluppo, il prodotto passa all'ambiente di test reale. Man mano che i vari test funzionali e non funzionali rivelano problemi e bug nel software, la release viene torna indietro per essere revisionata. Per la maggior parte delle release saranno necessarie più iterazioni: la release passa da una fase all'altra in un processo iterativo fino a quando non viene certificata per la revisione finale.

Revisione finale

Prima della distribuzione, la release deve essere sottoposta a una revisione finale, che prende in considerazione tutte le nuove informazioni o i nuovi dati acquisiti durante la fase di test. Il team QA analizzerà e ispezionerà il prodotto finale per garantire che soddisfi gli standard e i requisiti stabiliti nella fase di pianificazione. Sebbene sia possibile che nella distribuzione rimangano alcuni bug, la revisione finale dovrebbe fornire ai team informazioni sufficienti per poter gestire eventuali problemi durante o dopo il lancio del prodotto.

Distribuzione

Con l'approvazione finale del proprietario del progetto, il prodotto viene inviato in produzione e può essere rilasciato all'utente finale. È necessario rilasciare contemporaneamente anche gli eventuali materiali didattici supplementari, tra cui notifiche di cambiamento, guide operative e risorse di formazione necessarie. Assicurati di personalizzare queste risorse non solo per l'utente finale, ma anche per i team di supporto aziendale che potrebbero dover rispondere alle domande degli utenti o fornire assistenza con la risoluzione dei problemi.

La fase di distribuzione rappresenta il culmine del processo di gestione delle release, che tuttavia non termina al momento del lancio. I team dovranno condurre dei follow-up per accedere alla release, identificare eventuali colli di bottiglia o ostacoli e migliorare il processo per i prodotti futuri.

È necessario tenere presente che aziende di varie dimensioni seguiranno probabilmente un processo end-to-end molto simile, che prevede sostanzialmente le stesse fasi. Tuttavia, la versione del processo di gestione delle release per le organizzazioni più piccole con un numero inferiore di progetti è molto meno complessa rispetto a quella delle aziende più grandi. Quando un'azienda scala le release per adattarle alla crescita mentre team e reparti si estendono per includere più persone, anche la gestione delle release si estende, richiedendo strumenti di supporto più avanzati.

Le organizzazioni che hanno completamente adottato l'automazione possono considerare la gestione delle release un processo non necessario e obsoleto. Ma anche se le metodologie come Agile possono aumentare la velocità di distribuzione del software, non risolvono i problemi dei team in silo e dei processi di consegna inefficienti. La gestione delle release aiuta a mantenere tutti allineati e a osservare il quadro generale. Ciò avviene riducendo i rischi, ottimizzando l'efficienza della distribuzione e offrendo un maggior valore ai e alle clienti.

Riduzione del rischio

I requisiti standardizzati e i criteri di governance che possono essere ripetuti in più progetti contribuiscono a eliminare molti dei rischi associati alla release dei prodotti. I/le responsabili delle release possono adattare i singoli processi per soddisfare meglio le esigenze di release specifiche, quindi scalarli man mano che l'azienda cresce.

Ottimizzazione dell'efficienza della distribuzione

Allineando il focus sull'aumento del valore positivo, la riduzione del valore negativo e il miglioramento dei tempi di sviluppo e rilascio, la gestione delle release fornisce un percorso chiaro per migliorare l'efficienza della distribuzione software.

Aumento del valore per la clientela

Integrando il feedback dei/delle clienti e utilizzando un processo iterativo di sviluppo e test, la gestione delle release offre alle aziende l'opportunità di aumentare continuamente il valore offerto all'utente finale.

La gestione delle release fornisce un servizio prezioso anche nell'ambito della metodologia DevOps. Come per il metodo Agile, l'automazione e la decentralizzazione di DevOps potrebbero sembrare obsoleti. Tuttavia, nonostante ciò che DevOps offre in termini di distribuzione rapida e sviluppo simultaneo dei prodotti, vi sarà sempre la necessità di coordinare i team pertinenti, allineare le priorità aziendali, standardizzare i processi e garantire prodotti di alta qualità.

Coordinandosi con i/le responsabili DevOps, i/le responsabili delle release devono monitorare l'integrazione continua e garantire che il valore positivo per la clientela venga migliorato, che bug e altri problemi vengano affrontati in modo rapido ed efficace e che le nuove funzionalità si integrino correttamente nel processo di gestione delle release stabilito.

Come affermato in precedenza, la gestione delle release allinea i team con obiettivi comuni allo scopo di migliorare la qualità dei prodotti e l'esperienza clienti. Tenendo presente questo aspetto, è possibile valutare il successo delle iniziative di gestione delle release utilizzando i seguenti indicatori:

Distribuzione allineata con gli obiettivi di tempistiche

La release è stata pubblicata entro la scadenza stabilita? Le singole attività sono state completate in tempo?

Distribuzione avvenuta rispettando i limiti di budget

Il progetto è stato completato rispettando il budget?

Gli utenti correnti non sono stati interessati dai problemi

Gli utenti correnti hanno potuto continuare a utilizzare il prodotto o il servizio senza interruzioni negative?

Soddisfazione di utenti nuovi e correnti

La release ha migliorato in generale l'esperienza dell'utente finale?

ServiceNow Release Management unisce la potenza dell'automazione avanzata al processo di gestione delle release. Automatizza le approvazioni e la governance per ridurre i colli di bottiglia e far progredire lo sviluppo, valuta i rischi e individua i conflitti per ridurre gli errori nelle modifiche, utilizza framework automatizzati per migliorare il coordinamento tra DevOps e IT e utilizza inoltre la funzione integrata di punteggio del successo delle modifiche per valutare e approvare automaticamente le modifiche a basso rischio. Grazie al workbench Change Advisory Board è presente una posizione dedicata per incontrare altri decisori e discutere e approvare i cambiamenti più complessi.

La gestione delle release consente alla tua azienda di coordinare le modifiche e le release del software con un'attenzione particolare alla clientela, mantenendo l'allineamento con le priorità aziendali. ServiceNow porta la gestione delle release a un livello superiore, automatizzando le operazioni e i passaggi essenziali e fornendo risorse e strumenti necessari per ottimizzare i processi. Scopri di più su ServiceNow Release Management.

Introduzione a Change and Release Management

ServiceNow® Change and Release Management riduce al minimo gli errori di modifiche e accelera la gestione del cambiamento.