segunda-feira, 21 de outubro de 2013

O que é o Code Review?

A revisão de código, inspeção estática de código, ou Code Review, é a verificação do código-fonte de um sistema de forma sistemática, mesmo que o sistema ainda esteja em desenvolvimento. O objetivo desta atividade é encontrar e arrumar erros antecipando ao máximo a fase inicial do ciclo de vida da aplicação, enquanto aumenta a qualidade do software e amadurece a habilidade do desenvolvedor.


A revisão pode ocorrer de algumas maneiras como:

  • Programação em Par - onde dois programadores utilizam a mesma estação de trabalho. Enquanto um programa, o outro passa algumas sugestões sobre como resolver o problema, enquanto verifica a qualidade como a solução está sendo implementada. O código já é construído sob a revisão de um par.
  • Análises Informais - quando a equipe troca código entre os desenvolvedores para realizar análises informais no código de outro desenvolvedor, ou a análise é feita por um profissional mais experiente dentro da equipe (como um arquiteto de sistemas). Neste caso, quaisquer inconformidades são informadas diretamente ao autor do código-fonte, sem nenhuma documentação formal.
  • Análises Formais - onde existe uma atividade formal dentro do processo de desenvolvimento. A revisão do código-fonte é realizada por outro desenvolvedor dentro da equipe, ou por um profissional mais experiente (como a Análise Informal). De forma resumida, a diferença é que esta análise precisa acontecer dentro do processo e precisa ser documentada.
  • Ferramentas de Code Review - ferramentas procuram de maneira automática erros comumente encontrados no código-fonte
Existe um consenso comum equivocado, onde a aprovação do usuário é suficiente para garantir a qualidade do projeto. A figura abaixo tenta ilustrar que isso não é bem verdade. Ainda mais que o usuário irá executar o fluxo básico de alguns casos de uso e não fará um teste exaustivo no sistema. Sem contar que itens como manutenibilidade e confiabilidade não são facilmente identificados com testes funcionais. 

Esta imagem exemplifica o porquê é errado achar que a validação do usuário é suficiente para garantir a qualidade do código-fonte

Nenhum comentário:

Postar um comentário