Fattori di prontezza 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 prontezza alla modernizzazione

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

Codice

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

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

  • Crea suite di test che includono test di unità, funzionali, prestazioni e percorsi critici, con copertura del codice al 100%.

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

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

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 dei guasti in atto.

  • Monitora le prestazioni in ambienti di produzione e non di produzione, definisci gli SLO (Service Level Objective) in base a test realistici di traffico e carico e offri la possibilità di scalare per soddisfare i requisiti di prestazioni.

  • Estrarre i dati sensibili dai file di configurazione e fornire strumenti che automatizzano e monitorano le configurazioni.

Rilascio

  • Automatizza le distribuzioni con il supporto per le dipendenze (ad esempio, rilasci del database), test di regressione e monitoraggio.

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

  • Gestisci efficacemente i flag di funzionalità (commutatori): supporta la configurazione runtime, monitora l'utilizzo, mantieni i flag durante tutto il ciclo di sviluppo e assegna i proprietari per categoria.

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

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

  • Utilizza metodologie di distribuzione blu/green completamente automatizzate a tempo di inattività zero.

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

Operazione

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

  • Assicurati che il sistema di monitoraggio e notifica soddisfi gli obiettivi a livello di servizio (SLO) e supporti soglie, controlli dello stato, 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 monitorano le prestazioni del prodotto, misurano il successo delle nuove funzionalità e visualizzano avvisi quando le metriche non soddisfano le aspettative.

Ottimizzazione

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

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

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

PRONTA

  • Dedica un team interfunzionale (inclusi partner commerciali, sviluppatori, tester e architetti) alle tue attività di modernizzazione.