Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Creazione
Durante la fase di sviluppo di una DevOps strategia, costruisci l'infrastruttura tecnica e coltivi un cambiamento culturale verso la collaborazione, l'automazione e il miglioramento continuo. Questa fase fondamentale prevede l'orchestrazione pratica di strumenti e pipeline. Comprende quanto segue:
-
Configurazione delle toolchain DevOps
-
Creazione di connessioni
-
Creazione di pipeline che guidano lo sviluppo del codice attraverso la distribuzione delle applicazioni
Include non solo l'aspetto tecnico della creazione di software, ma anche il cambiamento della cultura dello sviluppo verso la collaborazione, l'automazione e il miglioramento continuo. Aderendo ai principi di integrazione continua e distribuzione continua (CI/CD), la fase di costruzione mira a semplificare il processo di sviluppo e implementazione, migliorare la qualità del software e accelerare l'implementazione di applicazioni mainframe modernizzate su. AWS
Il diagramma seguente rappresenta le diverse fasi di una pipeline di distribuzione. Ogni fase contiene i passaggi necessari e consigliati da implementare in un percorso di implementazione dei carichi di lavoro mainframe modernizzato.

Le fasi della pipeline di implementazione dei carichi di lavoro mainframe modernizzati includono quanto segue:
-
Fase di origine: i passaggi richiesti sono la configurazione, i manifesti di dipendenza, gli asset statici, l'origine dell'infrastruttura, l'origine del test e l'origine dell'applicazione. Il passaggio consigliato è l'origine del database.
-
Fase di compilazione: i passaggi richiesti sono gli artefatti del pacchetto, i test statici di sicurezza delle applicazioni, il rilevamento dei segreti, la qualità del codice, i test unitari e il codice di compilazione. I passaggi consigliati sono la distinta base del software e l'analisi della composizione del software.
-
Fase di test (beta): i passaggi richiesti sono i test di accettazione e i test di integrazione. I passaggi consigliati sono la distribuzione del software, la distribuzione del database e l'ambiente di avvio.
-
Fase di test (gamma): i passaggi richiesti sono test sintetici, monitoraggio e registrazione, distribuzione del software e ambiente di avvio. Le impostazioni consigliate sono il test dinamico della sicurezza delle applicazioni (DAST), i test di resilienza, i test delle prestazioni e la distribuzione del database.
-
Fase di produzione: i passaggi richiesti sono i test sintetici e l'implementazione progressiva. I passaggi consigliati sono la distribuzione del database e l'approvazione manuale.
Integrazione continua
L'integrazione continua (CI) è una pratica di sviluppo software in cui gli sviluppatori apportano regolarmente piccole modifiche al codice e le integrano in un ramo rilasciabile del repository di codice. Il nuovo codice integrato viene creato, testato e convalidato autonomamente in modo coerente e ripetibile. La CI consente agli sviluppatori di ricevere rapidamente feedback, identificare potenziali problemi nelle prime fasi del ciclo di vita dello sviluppo e risolverli prima che aumentino in complessità e costi.
L'integrazione continua può accelerare e semplificare notevolmente il processo di modernizzazione del mainframe su AWS. I principi della CI si applicano alle seguenti aree:
-
Integrazione frequente del codice: in una pipeline CI, le modifiche al codice vengono integrate frequentemente in un repository condiviso, spesso più volte al giorno. Ciò promuove la collaborazione e garantisce che l'intero team di sviluppo lavori con la maggior parte del up-to-date codice base. CI può anche aiutare a gestire le modifiche al codice e tenere traccia della cronologia delle modifiche. Strumenti basati su Git come AWS CodeCommit GitLab, e GitHub possono aiutare nell'integrazione e nella collaborazione frequenti del codice. Il codice di questi repository git può essere sincronizzato con il mainframe tramite connettori come il connettore Git per OpenText
Changeman ZMF. -
Test automatizzati: CI incoraggia la creazione di suite di test automatizzate per applicazioni mainframe. Ciò garantisce che, man mano che il codice viene rifattorizzato per il cloud, rimanga funzionale e privo di errori. I test automatici possono includere test unitari e test di integrazione. Le applicazioni mainframe possono essere testate unitariamente utilizzando framework come. ZUnit
-
Rilevamento precoce dei problemi: eseguendo test automatici e strumenti statici di analisi del codice ogni volta che viene eseguito il codice, i sistemi CI rilevano e segnalano rapidamente eventuali problemi. Questo aiuta i team di sviluppo a risolvere i problemi nelle prime fasi del ciclo di sviluppo, riducendo il rischio di gravi intoppi durante la migrazione. Strumenti come Veracode possono contribuire al rilevamento precoce dei problemi SonarQube e alla qualità del codice sia per Mainframe COBOL che per il codice Java modernizzato.
-
Feedback rapido: i sistemi CI forniscono agli sviluppatori un feedback rapido sulla qualità del loro codice, il che può portare a un miglioramento continuo del processo di modernizzazione.
Distribuzione continua
La distribuzione continua (CD) avviene dopo l'integrazione continua (CI). In CD, le modifiche al codice che superano la convalida della build vengono automaticamente distribuite in altri ambienti, inclusa la produzione, con un intervento umano minimo. Il CD aiuta a garantire che nuove funzionalità, correzioni e miglioramenti vengano implementati in modo rapido e affidabile. Il CD riduce i tempi di consegna e migliora l'efficienza complessiva del processo di implementazione. Quando si automatizza il processo di distribuzione tramite CD, il sistema gestisce il processo di implementazione delle modifiche ai vari ambienti, dispendioso in termini di tempo e soggetto a errori, mentre i team si concentrano sullo sviluppo e sul perfezionamento del codice.
Il CD facilita la transizione delle applicazioni mainframe modernizzate automatizzando il processo di implementazione. AWS I principi del CD si applicano alle seguenti aree:
-
Implementazioni automatizzate: per ridurre l'intervento manuale e il potenziale di errori umani durante il processo di migrazione, CD automatizza l'implementazione delle modifiche al codice negli ambienti di destinazione. Strumenti come AWS CodeDeploy Jenkins e IBM Urban CodeDeploy possono contribuire alla distribuzione progressiva di artefatti in ambienti diversi (ad esempio, Dev, Test, Prod).
-
Implementazione continua: la differenza tra distribuzione continua e implementazione continua è la presenza di un'approvazione manuale per l'aggiornamento alla produzione. Nella distribuzione continua, la produzione avviene automaticamente senza un'approvazione esplicita.
-
Ciclo di feedback rapido: le implementazioni automatizzate forniscono un feedback rapido sulla disponibilità delle modifiche al codice per l'implementazione. Questo ciclo di feedback garantisce che venga distribuito solo codice accuratamente testato e convalidato.
-
Cicli di rilascio frequenti: utilizzando CD, l'organizzazione può rilasciare nuove funzionalità, miglioramenti e codice modernizzato con maggiore frequenza. Questa agilità aiuta le aziende ad adattarsi alle mutevoli esigenze e a rimanere competitive.
-
Funzionalità di rollback: le pipeline CD dovrebbero includere meccanismi di rollback. In caso di problemi o comportamenti imprevisti nell' AWS ambiente, i team possono utilizzare i meccanismi per ripristinare una versione precedente di un'applicazione.
-
Infrastruttura come codice: il CD può essere combinato con strumenti di infrastruttura come codice (IaC) come AWS CloudFormation HashiCorp Terraform per definire e fornire l'infrastruttura in modo coerente. Il provisioning coerente aiuta a garantire che l' AWS ambiente corrisponda alla configurazione richiesta.