

# SEC11-BP04 Revisioni manuali del codice
<a name="sec_appsec_manual_code_reviews"></a>

Esegui una revisione manuale del codice del software che produci. Attraverso questo processo puoi assicurarti che chi ha scritto il codice non sia l'unica persona a controllarne la qualità.

**Risultato desiderato:** l'aggiunta di una fase di revisione manuale del codice durante lo sviluppo migliora la qualità del software scritto, permette di affinare le competenze dei membri meno esperti del team e fornisce un'opportunità per identificare i punti in cui può essere usata l'automazione. Le revisioni manuali del codice possono essere supportate da strumenti e test automatici. 

**Anti-pattern comuni:**
+  Non viene eseguita alcuna revisione del codice prima dell'implementazione. 
+  La scrittura e la revisione del codice vengono effettuate dalla stessa persona. 
+  Non viene usata l'automazione per semplificare o orchestrare le revisioni del codice. 
+  Gli sviluppatori non ricevono formazione sulla sicurezza dell'applicazione prima di eseguire la revisione del codice. 

**Vantaggi dell'adozione di questa best practice:**
+  Migliore qualità del codice. 
+  Maggiore coerenza dello sviluppo del codice attraverso il riutilizzo di approcci comuni. 
+  Riduzione del numero di problemi riscontrati durante i test di penetrazione e nelle fasi successive. 
+  Migliore circolazione delle informazioni all'interno del team. 

 **Livello di rischio associato alla mancata adozione di questa best practice:** medio 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 La fase di revisione deve essere implementata come parte del flusso complessivo di gestione del codice. Le specifiche dipendono dall'approccio usato per la diramazione, le richieste pull e l'unione. Puoi usare AWS CodeCommit o soluzioni di terze parti come GitHub, GitLab o Bitbucket. Qualunque sia il metodo usato, è importante verificare che i processi richiedano la revisione del codice prima che venga implementato in un ambiente di produzione. L'uso di strumenti come il [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) può semplificare l'orchestrazione del processo di revisione del codice. 

### Passaggi dell'implementazione
<a name="implementation-steps-required-field"></a>
+  Implementa una fase di revisione manuale come parte del flusso di gestione del codice ed esegui la revisione prima di continuare. 
+  Prendi in considerazione il [Amazon CodeGuru Reviewer](https://aws.amazon.com/codeguru/) per la gestione e la semplificazione delle revisioni del codice. 
+  Implementa un flusso di approvazione che richieda il completamento di una revisione prima che il codice possa passare alla fase successiva. 
+  Verifica che sia stato definito un processo per identificare i problemi riscontrati durante le revisioni manuali del codice che potrebbero essere rilevati automaticamente. 
+  Integra la fase di revisione manuale del codice in modo che sia allineata alla procedure di sviluppo del codice. 

## Risorse
<a name="resources-required-field"></a>

 **Best practice correlate:**
+  [SEC11-BP02 Automazione dei test lungo il ciclo di vita di sviluppo e test](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documenti correlati:**
+  [Uso di richieste pull in repository AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/pull-requests.html) 
+  [Uso di modelli per le regole di approvazione in AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/approval-rule-templates.html) 
+  [GitHub: About pull requests](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) 
+  [Automazione delle revisioni del codice con il Amazon CodeGuru Reviewer ](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/) 
+  [Automazione del rilevamento di bug e vulnerabilità della sicurezza in pipeline CI/CD usando l'interfaccia della riga di comando del Amazon CodeGuru Reviewer](https://aws.amazon.com/blogs/devops/automating-detection-of-security-vulnerabilities-and-bugs-in-ci-cd-pipelines-using-amazon-codeguru-reviewer-cli/) 

 **Video correlati:**
+  [Miglioramento continuo della qualità del codice con Amazon CodeGuru](https://www.youtube.com/watch?v=iX1i35H1OVw) 

 **Esempi correlati:** 
+  [Workshop sulla sicurezza per gli sviluppatori](https://catalog.workshops.aws/sec4devs) 