Un'introduzione alla pipeline di Continuous Delivery che comprende i vantaggi, le best practice e i principali strumenti di CD.
La Continuous Delivery consente ai team di sviluppo di automatizzare il processo che fa avanzare il software attraverso il ciclo di vita di sviluppo; inoltre, può offrire molti vantaggi durante il provisioning di un toolbox integrato, tra cui:
Nel seguente video, Eric Minick fornisce ulteriori informazioni sulla Continuous Delivery:
Di seguito è riportata una serie di best practice da tenere a mente quando si utilizza la Continuous Delivery:
Per sfruttare pienamente i vantaggi della Continuous Delivery, avrai bisogno di altri elementi del framework continuo, ad esempio esplorazione continua, integrazione continua, implementazione continua e release on demand.
Quando utilizzi le fasi della pipeline di Continuous Delivery, è consigliabile suddividerle in lavori separati, ovvero unità di esecuzione all'interno di una fase:
Di seguito sono riportate alcune delle operazioni che la pipeline di Continuous Delivery ti aiuterà a portare a termine:
L'implementazione continua può far parte di una pipeline di Continuous Delivery. Nello specifico, la Continuous Delivery è lo spostamento automatizzato del codice attraverso il ciclo di vita di sviluppo del codice (a volte denominato ciclo di vita di distribuzione); l'implementazione continua è lo spostamento automatizzato di tale codice in produzione, una volta che supera i necessari test automatizzati.
La decisione di rendere l'implementazione continua parte della tua pipeline di distribuzione dipende dalle tue esigenze di business. Se il business necessita che il team di distribuzione rilasci ripetutamente software nuovi o aggiornati in produzione, in modo affidabile o più velocemente possibile, oppure se la soluzione presenta più dipendenze, allora è probabile che l'adozione dell'implementazione continua rappresenti un vantaggio.
Per ulteriori informazioni sulle differenze tra implementazione continua e Continuous Delivery, fai riferimento a questo video:
Uno strumento di Continuous Delivery ti consente di utilizzare strumenti open source per eseguire la build, implementare e gestire le tue applicazioni. Integrando serie di strumenti, potrai creare attività ripetibili e gestibili, non solo per il tuo team di sviluppo ma anche per quello delle operazioni.
Il tuo toolbox può includere i servizi cloud correnti, strumenti open source e di terze parti, ma è opportuno valutare uno strumento di Continuous Delivery che includa le seguenti caratteristiche:
Gli strumenti di Continuous Delivery open source che puoi utilizzare per una solida pipeline di Continuous Delivery includono:
In precedenza, il codice veniva rilasciato una sola volta e poi aggiornato. Quindi, avresti consultato i clienti solo all'inizio e alla fine del processo, per valutare se il software rispondesse alle loro esigenze.
Agile è un nuovo modo di produrre il software in brevi iterazioni tramite una pianificazione di Continuous Delivery; i processi di Continuous Delivery in modalità Agile di oggi ti consentono di rilasciare il codice ai clienti ogni volta che una funzione definita diventa disponibile. Lo sviluppo in modalità Agile e la Continuous Delivery rappresentano le chiavi per fornire le funzionalità ai clienti appena sono pronte per la produzione. Il tuo obiettivo è di rendere ogni funzione pronta per il rilascio nel momento stesso in cui esce dalla pipeline.
Scopri di più sui vantaggi dei principi della modalità Agile.
Negli ultimi vent'anni, lo sviluppo del software ha subito cambiamenti significativi nell'ambito del passaggio dal concetto standard, anche detto a cascata, alla più efficiente metodologia Agile. Per adattarti, è necessario adottare un approccio incentrato sulle modalità Agile, DevOps e Continuous Delivery. Come parte di una pipeline di Continuous Delivery, questi processi specifici consentono release e aggiornamenti software più affidabili e di alta qualità.
Effettuando release di software dalle dimensioni più contenute in modo più rapido tramite lo sviluppo in modalità Agile, potrai concentrarti in modo più efficace sulle singole fasi dello sviluppo del software. Allo stesso tempo, la modalità DevOps consente di rimanere concentrati sulla visione d'insieme e su un cambiamento culturale, mentre le mansioni di sviluppo e le operazioni si riuniscono in un solo team che collabora nell'arco dell'intero ciclo di vita dello sviluppo del software, dalla codifica ai test all'implementazione e al supporto.
Per un approfondimento sul processo DevOps, fai riferimento a “DevOps: An Essential Guide” e al seguente video:
La possibilità di eseguire rapidamente il provisioning di una toolchain integrata dotata di modelli personalizzabili e condivisibili consente di automatizzare le build e i test e di incrementare il controllo della qualità. Puoi farlo con strumenti IBM e con le integrazioni con plug-in open source e di terze parti. I processi e gli strumenti IBM possono aiutarti con una delle iniziative DevOps più impegnative che le organizzazioni affrontano: la creazione e la modernizzazione delle applicazioni nel loro percorso verso il cloud.
Fai un passo avanti:
Inizia oggi stesso con un account IBM Cloud®.
IBM Continuous Delivery è un servizio cloud che facilita il provisioning di toolchain, l'automatizzazione di build e test e il controllo della qualità mediante l'analytics.
La famiglia di prodotti software IBM UrbanCode ti aiuta a distribuire più rapidamente il software sul mercato accelerando la distribuzione delle applicazioni e riducendo i processi manuali.
Crea pipeline CI/CD native di Kubernetes, con massima velocità e flessibilità.