Questo contenuto è obsoleto. Questa versione di Framework Well-Architected è ora disponibile all'indirizzo: https://docs.aws.amazon.com/it_it/wellarchitected/2022-03-31/framework/operational-excellence.html

OPS 5: In che modo riduci i difetti, favorisci la correzione e migliori il flusso nella produzione?

Adotta prassi che migliorino il flusso delle modifiche nella produzione, che consentano il refactoring e il feedback veloce su qualità e correzione di errori. Tali prassi accelerano l'ingresso in produzione delle modifiche vantaggiose, limitano i problemi distribuiti e consentono una rapida identificazione e risoluzione dei problemi introdotti attraverso le attività di distribuzione.

Risorse

CI/CD for Serverless Applications on AWS
Design with Ops in Mind
AWS Developer Tools

Best practice:

Piano di miglioramento

Utilizzo del controllo delle versioni

  • Utilizzo del controllo delle versioni: Mantieni gli asset in repository con controllo delle versioni. In questo modo si supporta il monitoraggio delle modifiche, la distribuzione di nuove versioni, il rilevamento delle modifiche apportate alle versioni esistenti e il ripristino delle versioni precedenti, ad esempio il rollback a uno stato corretto noto in caso di errore. Integra nelle tue procedure le funzionalità di controllo delle versioni dei sistemi di gestione delle configurazioni.
    Introduction to AWS CodeCommit
    What is AWS CodeCommit?
  • Test e convalida delle modifiche

  • Test e convalida delle modifiche: È necessario testare le modifiche e convalidare i risultati in tutte le fasi del ciclo di vita, ad esempio sviluppo, test e produzione. Utilizza i risultati dei test per confermare le nuove funzionalità e ridurre il rischio e l'impatto delle distribuzioni non riuscite. Automatizza i test e la convalida per assicurare la coerenza della revisione, ridurre gli errori causati dai processi manuali e ridurre il livello di impegno richiesto.
    What is AWS CodeBuild?
    Local build support for AWS CodeBuild
  • Utilizzo di sistemi di gestione delle configurazioni

  • Utilizzo di sistemi di gestione delle configurazioni: Utilizza i sistemi di gestione delle configurazioni per tenere traccia e implementare le modifiche, ridurre gli errori causati dai processi manuali e ridurre il livello di impegno richiesto.
    Infrastructure configuration management
    AWS Config
    What is AWS Config?
    Introduction to AWS CloudFormation
    What is AWS CloudFormation?
    AWS OpsWorks
    What is AWS OpsWorks?
    Introduction to AWS Elastic Beanstalk
    What is AWS Elastic Beanstalk?
  • Utilizzo di sistemi di gestione della creazione e distribuzione

  • Utilizzo di sistemi di gestione della creazione e distribuzione: Utilizza sistemi di gestione della creazione e distribuzione per tenere traccia e implementare le modifiche, ridurre gli errori causati dai processi manuali e ridurre il livello di impegno richiesto. Automatizza completamente la pipeline di integrazione e distribuzione dal check-in del codice fino alle fasi di creazione, test, distribuzione e convalida. In questo modo è possibile ridurre il lead time, aumentare la frequenza delle modifiche e ridurre il livello di impegno richiesto.
    What is AWS CodeBuild?
    Continuous integration best practices for software development
    Slalom: CI/CD for serverless applications on AWS
    Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
    What is AWS CodeDeploy?
  • Esecuzione della gestione delle patch

  • Gestione delle patch: Applica patch ai sistemi per correggere gli errori, ottenere le funzionalità o le capacità desiderate e assicurare la conformità alle policy di governance e ai requisiti di supporto del vendor. Nei sistemi immutabili, distribuisci con il set di patch appropriato per raggiungere il risultato desiderato. Automatizza il meccanismo di gestione delle patch per ridurre il tempo necessario per applicare le patch, ridurre gli errori causati dai processi manuali e il livello di impegno richiesto per applicare le patch.
    AWS Systems Manager Patch Manager
  • Condivisione degli standard di progettazione

  • Condivisione degli standard di progettazione: Condividi le best practice esistenti, gli standard di progettazione, gli elenchi di controllo, le procedure operative e i requisiti su linee guida e governance tra i team per ridurre la complessità e sfruttare al massimo i vantaggi derivanti dalle attività di sviluppo. Assicurati che siano state predisposte procedure per richiedere modifiche, aggiunte ed eccezioni agli standard di progettazione a supporto del miglioramento e dell'innovazione continua. Verifica che i team siano a conoscenza del contenuto pubblicato affinché possano avvalersene e limitare ripetizioni e sprechi di energie.
    Delegating access to your AWS environment
    Share an AWS CodeCommit repository
    Easy authorization of AWS Lambda functions
    Sharing an AMI with specific AWS accounts
    Speed template sharing with an AWS CloudFormation designer URL
    Using AWS Lambda with Amazon SNS
  • Implementazione di prassi per migliorare la qualità del codice

  • Implementazione di prassi per migliorare la qualità del codice: Implementa prassi per migliorare la qualità del codice e ridurre al minimo i difetti e il rischio che vengano distribuiti, ad esempio sviluppo basato su test, programmazione in coppia, revisioni del codice e adozione di standard.
  • Utilizzo di più ambienti

  • Utilizzo di più ambienti: Fornisci agli sviluppatori ambienti sandbox con controlli minimi per abilitare la sperimentazione. Fornisci ambienti di sviluppo individuali per abilitare il lavoro in parallelo, incrementando l'agilità dello sviluppo. Implementa controlli più rigorosi negli ambienti che si avvicinano alla produzione per offrire agli sviluppatori la libertà necessaria per l'innovazione. Utilizza l'approccio Infrastructure-as-Code e sistemi di gestione delle configurazioni per distribuire ambienti configurati in modo coerente con i controlli presenti in produzione per assicurare che i sistemi funzionino nel modo previsto quando vengono distribuiti. Quando gli ambienti non vengono utilizzati, disattivali per evitare costi associati alle risorse inattive, ad esempio i sistemi di sviluppo nelle ore serali e nei fine settimana. Distribuisci ambienti equivalenti alla produzione quando esegui i test di carico per ottenere risultati validi.
    What is AWS CloudFormation?
    How do I stop and start Amazon EC2 instances at regular intervals using AWS Lambda?
  • Applicazione di modifiche frequenti, minime e reversibili

  • Applicazione di modifiche frequenti, minime e reversibili: Le modifiche frequenti, minime e reversibili riducono la portata e l'impatto di una modifica. Questo semplifica la risoluzione dei problemi, consente tempi di correzione più rapidi e permette di eseguire il rollback di una modifica. Inoltre, aggiunge più rapidamente valore al business.
  • Automazione completa dell'integrazione e della distribuzione

  • Utilizzo di sistemi di gestione della creazione e distribuzione: Utilizza sistemi di gestione della creazione e distribuzione per tenere traccia e implementare le modifiche, ridurre gli errori causati dai processi manuali e ridurre il livello di impegno richiesto. Automatizza completamente la pipeline di integrazione e distribuzione dal check-in del codice fino alle fasi di creazione, test, distribuzione e convalida. In questo modo è possibile ridurre il lead time, aumentare la frequenza delle modifiche e ridurre il livello di impegno richiesto.
    What is AWS CodeBuild?
    Continuous integration best practices for software development
    Slalom: CI/CD for serverless applications on AWS
    Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
    What is AWS CodeDeploy?