View a markdown version of this page

Fattori di preparazione alla modernizzazione - AWS Guida prescrittiva

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à.

Fattori di preparazione alla modernizzazione

Osserva i seguenti standard e best practice quando modernizzi le tue applicazioni.

Codice

  • Fornisci commenti sul codice che documentano la funzionalità del tuo software e usali per generare documentazione.

  • Segui i processi di gestione e distribuzione del codice che supportano controlli frequenti del codice e la tracciabilità delle richieste di funzionalità.

  • Crea suite di test che includono test unitari, funzionali, prestazionali e dei percorsi critici, con una copertura del codice al 100%.

  • Incoraggia il riutilizzo del codice per fornire funzionalità uguali o simili nella tua codebase.

  • Sviluppa prototipi per convalidare le funzionalità con gli utenti prima di investire nello sviluppo completo del codice.

Compilazione e test

  • Ridefinisci la completezza delle funzionalità in base ai test, per migliorare la qualità e prevenire problemi ricorrenti.

  • Automatizza i test di accettazione.

  • Monitora tutti i test automatizzati e stabilisci un processo per la gestione degli errori.

  • Tieni traccia delle prestazioni in ambienti di produzione e non di produzione, definisci obiettivi a livello di servizio (SLOs) sulla base di test realistici sul traffico e sul carico e offri la possibilità di scalare per soddisfare i requisiti prestazionali.

  • Estrai i dati sensibili dai file di configurazione e fornisci strumenti per automatizzare e monitorare le configurazioni.

Versione

  • Automatizza le implementazioni con il supporto per le dipendenze (ad esempio, le versioni dei database), i test di regressione e il tracciamento.

  • Rilascia il codice nell'ambiente di produzione in modo incrementale, dopo ogni build riuscita.

  • Gestisci i flag di funzionalità (toggle) in modo efficace: supporta la configurazione in fase di esecuzione, monitora l'utilizzo, gestisci i flag durante tutto il ciclo di sviluppo e assegna i proprietari per categoria.

  • Garantisci la tracciabilità nelle tue pipeline di sviluppo, per tenere traccia dei trigger, delle notifiche di errore e del completamento con successo.

  • Esegui processi e test di implementazione automatizzati per aggiornamenti del codice «zero touch» in distribuzione continua.

  • Utilizza metodologie di implementazione blu/green completamente automatizzate e senza tempi di inattività.

  • Assicurati che le modifiche allo schema del database siano implementate in modo coerente in tutti gli ambienti di sviluppo e produzione.

Gestione

  • Crea un runbook DevOps di triage integrato con il tuo sistema di notifica.

  • Assicurati che il tuo sistema di monitoraggio e notifica soddisfi gli obiettivi a livello di servizio (SLOs) e supporti soglie, controlli di integrità, risposte HTTP non standard e risultati imprevisti.

  • Stabilisci processi efficaci di gestione del rischio e disaster recovery.

  • Sviluppa una strategia di rotazione e conservazione dei log che soddisfi i requisiti aziendali e legali.

  • Sviluppa dashboard che monitorino le prestazioni dei prodotti, misurino il successo delle nuove funzionalità e visualizzino avvisi quando le metriche non soddisfano le aspettative.

Ottimizzazione

  • Rivedi e migliora i processi regolarmente, sulla base di misure di prestazioni e qualità.

  • Implementa processi di analisi e prevenzione delle cause principali per evitare che i problemi si ripresentino.

  • Fornisci metriche basate sui dati che registrano lo stato del prodotto e assicurati che tutte le notifiche e le azioni siano basate su queste metriche.

Prontezza

  • Dedica un team interfunzionale (inclusi partner commerciali, sviluppatori, tester e architetti) ai tuoi sforzi di modernizzazione.