Gerenciamento de Pull Requests
Contexto
Conforme o Relatório de Inconsistências: Gerência de Configuração de Software, existe um padrão de nomenclatura de branches definido no Azure DevOps, mas ele não é seguido por toda a equipe. Além disso, várias solicitações de merge são abertas sem descrição e, às vezes, mescladas sem revisão, o que causa erosão de conhecimento, perda de rastreabilidade e queda da qualidade do código.
Para facilitar a revisão, o entendimento da tarefa e a rastreabilidade, foi criado um template de Pull Request. O objetivo é explicar as alterações sem exigir a descrição detalhada de todo o código alterado, mantendo a velocidade das entregas.
Fluxo de abertura
Template
# Pull Request
## Descrição
Descreva resumidamente o objetivo desta Pull Request.
Exemplo:
> Implementa a filtragem de jogos através do mando de campo.
---
## Motivação
Qual problema esta PR resolve?
---
## Alterações
Exemplo: arquivo x função tal (não precisa detalhar muito)
---
## Checklist (DoD)
> Todos os itens devem ser preenchidos para que a PR seja revisada
- [ ] Código segue os padrões do projeto
- [ ] Testes adicionados/atualizados
- [ ] Todos os testes passaram
- [ ] Não há warnings relevantes
- [ ] Documentação atualizada (quando necessário)
- [ ] PR revisada antes de solicitar review
---
## Observações
Exemplo: bug encontrado registrado na taskXXX
Por que uma DoD em formato de checklist
O template inclui uma breve DoD (Definition of Done), que lista as condições para considerar uma tarefa concluída. Os itens estão em formato de checklist, recomendação de Neal Ford e Mark Richards em Fundamentos da Arquitetura de Software, que parafraseiam Checklist: Como fazer as coisas bem feitas, de Dr. Atul Gawande.
Segundo os autores, checklists fazem grande diferença na eficiência das equipes e são um excelente veículo para garantir que tudo seja coberto. Assim, a DoD ajuda os desenvolvedores a manter um padrão, facilita o entendimento e a revisão do código e contribui para a qualidade.