Cos'è la distribuzione continua?

Panoramica

La distribuzione continua è un metodo di sviluppo software in cui le modifiche al codice vengono preparate automaticamente per un rilascio in produzione. Fondamento dello sviluppo moderno di applicazioni, la distribuzione continua estende l'integrazione continua distribuendo tutte le modifiche al codice all'ambiente di testing e/o di produzione dopo la fase di creazione di build. Se è implementata correttamente, gli sviluppatori avranno sempre a disposizione un artefatto di build pronto per la distribuzione che ha già superato un processo di testing standardizzato. 

La distribuzione continua consente agli sviluppatori di automatizzare il testing oltre gli unit test, in modo da verificare l'applicazione degli aggiornamenti su vari livelli prima di renderli disponibili ai clienti. Queste prove possono includere test dell'interfaccia, test di caricamento, test di integrazione, test di affidabilità delle API e così via. In questo modo è più semplice per gli sviluppatori analizzare gli aggiornamenti più approfonditamente e rilevare preventivamente eventuali problemi. Grazie al cloud, automatizzare la creazione e la replica di più di un ambiente a scopo di testing è un'operazione molto semplice e poco costosa, al contrario di quanto avviene in ambienti locali.

Distribuzione continua e Implementazione continua

Con la distribuzione continua, ogni modifica al codice viene applicata a una build, testata e inoltrata in un ambiente di testing non in produzione o temporaneo. Possono essere previste diverse fasi di test in parallelo prima della distribuzione in produzione. La differenza tra distribuzione continua e implementazione continua è la presenza di un'approvazione manuale per l'aggiornamento della produzione. Con l'implementazione continua, la produzione avviene automaticamente, senza un'approvazione esplicita. 

La distribuzione continua automatizza l'intero processo di rilascio del software. Ogni nuova versione inoltrata attiva un flusso di lavoro automatizzato che applica a una build, testa e approva temporaneamente l'aggiornamento. La decisione finale per implementare il nuovo software nell'ambiente di produzione attivo dipende poi dallo sviluppatore.

La distribuzione continua automatizza l'intero processo di rilascio del software. Ogni nuova versione inoltrata attiva un flusso di lavoro automatizzato che applica a una build, testa e approva temporaneamente l'aggiornamento. La decisione finale per implementare il nuovo software nell'ambiente di produzione attivo dipende poi dallo sviluppatore.

Vantaggi della distribuzione continua

La distribuzione continua consente al team di applicare a una build, testare e preparare le modifiche al codice per l'inoltro in produzione in modo più efficiente e veloce.
Questo metodo consente al team di migliorare la produttività liberando gli sviluppatori dalle attività manuali e incoraggiando le pratiche che riducono il numero di errori e bug nel software rilasciato ai clienti.
Il team di sviluppo sarà in grado di rilevare e risolvere i bug prima che si trasformino in problemi gravi, grazie a testing più completi e più frequenti. La distribuzione continua consente di eseguire sul codice il genere di test che, senza un'automatizzazione completa, non sarebbe stato possibile effettuare.
La distribuzione continua consente di rilasciare aggiornamenti in modo più rapido e con maggiore frequenza. Se la distribuzione continua viene implementata correttamente, avrai sempre a disposizione una build temporanea pronta per la distribuzione che ha già passato un processo di testing standardizzato.

Distribuzione continua in AWS

Guarda i nostri video per ulteriori informazioni sulla distribuzione continua e sui vantaggi che offre, nonché su come implementarla mediante AWS CodePipeline e AWS CodeBuild.