

# SEC11-BP04 Análises manuais de código
<a name="sec_appsec_manual_code_reviews"></a>

Realize uma análise manual do código do software que você produz. Esse processo ajuda a verificar se a pessoa que escreveu o código não é a única que está conferindo a qualidade dele.

**Resultado desejado:** a inclusão de uma etapa de análise de código manual durante o desenvolvimento melhora a qualidade do software que está sendo criado, ajuda a melhorar as habilidades de membros menos experientes da equipe e oferece uma oportunidade de identificar locais onde a automação pode ser usada. É possível oferecer compatibilidade com as análises de código manuais com ferramentas e testes automatizados. 

**Antipadrões comuns:**
+  Não realizar análises de código antes da implantação. 
+  Ter a mesma pessoa para escrever e analisar o código. 
+  Não utilizar a automação para auxiliar ou orquestrar as análises de código. 
+  Não treinar os criadores em segurança de aplicações antes de analisarem o código. 

**Benefícios do estabelecimento desta prática recomendada:**
+  Código de melhor qualidade. 
+  Maior consistência do desenvolvimento do código por meio da reutilização de abordagens comuns. 
+  Redução no número de problemas descobertos durante o teste de penetração e em estágios posteriores. 
+  Maior transferência de conhecimentos na equipe. 

 **Nível de exposição a riscos se esta prática recomendada não for estabelecida:** médio 

## Orientações para a implementação
<a name="implementation-guidance"></a>

 A etapa de análise deve ser implementada como parte do fluxo de gerenciamento de código geral. Os detalhes dependem da abordagem utilizada para ramificação, solicitações de pull e mesclagem. Você pode utilizar o AWS CodeCommit ou soluções de terceiros, como GitHub, GitLab ou Bitbucket. Seja qual for o método utilizado, é importante verificar se seus processos precisam de análise de código antes da implantação em um ambiente de produção. O uso de ferramentas, como o [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html), pode facilitar a orquestração do processo de análise do código. 

### Etapas da implementação
<a name="implementation-steps-required-field"></a>
+  Implementar uma etapa de análise manual como parte do fluxo de gerenciamento de código e realizar essa análise antes de prosseguir. 
+  Considerar o [Amazon CodeGuru Reviewer](https://aws.amazon.com/codeguru/) para gerenciar e auxiliar nas análises de código. 
+  Implementar um fluxo de aprovação que exija a realização de uma análise de código antes de avançá-lo para o próximo estágio. 
+  Verificar se há um processo para identificar problemas encontrados durante as análises de código manuais que possam ser detectados automaticamente. 
+  Integrar a etapa de análise de código manual de forma que se alinhe às suas práticas de desenvolvimento de código. 

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

 **Práticas recomendadas relacionadas:**
+  [SEC11-BP02 Automatizar o teste durante o ciclo de vida de desenvolvimento e lançamento](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documentos relacionados:**
+  [Trabalhar com solicitações de pull em repositórios do AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/pull-requests.html) 
+  [Trabalhar com modelos de regra de aprovação no AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/approval-rule-templates.html) 
+  [Sobre solicitações de pull no GitHub](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) 
+  [Análises de código automatizadas com o Amazon CodeGuru Reviewer](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/) 
+  [Automatizar a detecção de vulnerabilidades de segurança e bugs em pipelines de CI/CD com o uso da CLI do 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/) 

 **Vídeos relacionados:**
+  [Melhoria contínua da qualidade do código com o Amazon CodeGuru](https://www.youtube.com/watch?v=iX1i35H1OVw) 

 **Exemplos relacionados:** 
+  Workshop [Segurança para desenvolvedores](https://catalog.workshops.aws/sec4devs) 