Atividade: Revisar o Código
Finalidade
- Verificar a implementação.
|
Função:
Revisor Técnico
|
Freqüência: A cada iteração |
Etapas
|
Artefatos de Entrada:
|
Artefatos Resultantes:
|
Mentores de Ferramentas:
|
Detalhes de Detalhamento do Fluxo de Trabalho::
|
Finalidade |
Recomendações gerais para cada revisão. |
Quando você está criando um software de alta qualidade, a revisão da implementação é
um complemento de outros mecanismos de qualidade, como compilação, integração e teste. Antes
de revisar a implementação, compile-a e utilize ferramentas, como os verificadores de
regras de código, a fim de capturar o máximo de erros possível. Considere o uso de
ferramentas que permitam a visualização do código. Os erros adicionais também podem ser
detectados e eliminados antes da revisão da implementação, se o código for executado
utilizando ferramentas de detecção de erros de tempo de execução.
Os benefícios de revisar a implementação são:
- Impor e estimular um estilo de codificação comum para o projeto. A revisão de
código é uma maneira eficaz de os membros obedecerem ao Guia de Programação. Para
assegurar isso, é mais importante revisar os resultados de todos os autores e
implementadores do que revisar todos os arquivos de código-fonte.
- Localizar erros que os testes automatizados não detectam. As revisões de
implementação capturam erros diferentes daqueles encontrados durante o teste.
- Compartilhar o conhecimento entre as pessoas e transferi-lo das mais experientes
para as menos experientes.
Existem várias técnicas que podem ser utilizadas para revisar a implementação. Siga um
destes procedimentos:
- Inspeção. Uma técnica de avaliação formal em que a implementação é
examinada detalhadamente. As inspeções são consideradas a técnica de revisão mais
produtiva. No entanto, essa técnica requer treinamento e preparação.
- Travessia. Uma técnica de avaliação em que o autor da implementação conduz
um ou mais revisores pela implementação. Os revisores fazem perguntas e comentários sobre
técnica, estilo, erros possíveis, violação dos padrões de codificação, e assim por diante.
- Leitura de código. Uma ou duas pessoas lêem o código. Quando os revisores
estiverem prontos, eles poderão se reunir e apresentar seus comentários e perguntas. No
entanto, a reunião pode ser omitida e os revisores podem apresentar seus comentários e
perguntas para o autor em um formulário por escrito. A leitura de código é recomendada
para verificar pequenas modificações e como uma "verificação de
sanidade".
Os requisitos de qualificação dessa função são semelhantes aos da Função:
Implementador; quem desempenha essa função, em
geral, é considerado um especialista na linguagem de programação utilizada para o código
que está sendo revisado. Na maioria dos projetos, este papel é desempenhado por
programadores sênior que fazem parte da equipe de implementação.
Consulte também Diretrizes: Revisões.
Finalidade |
Estabelecer os pontos de verificação para revisar a implementação. |
Esta seção fornece alguns pontos de verificação gerais para a revisão da
implementação, apenas como exemplos do que deve ser procurado em uma revisão.
O Guia de Programação deve ser a principal fonte de informações sobre a qualidade do código.
Geral
- O código obedece ao Guia de Programação?
- A documentação do código é automática?
É possível compreender o código por meio da leitura?
- Todos os erros detectados pela verificação das regras de código e/ou pelas ferramentas de detecção de erros em tempo de execução foram abordados?
Comentários
- Os comentários estão atualizados?
- Os comentários são claros e corretos?
- Os comentários são fáceis de serem modificados, caso o código seja alterado?
- Os comentários se concentram em explicar por quê, e não como?
- Todas as surpresas, casos excepcionais e erros de artifício são comentados?
- A finalidade de cada operação é comentada?
- Os outros fatos relevantes sobre cada operação são comentados?
Código fonte
- Cada operação tem um nome que descreve o que ela faz?
- Os parâmetros têm nomes descritivos?
- O percurso normal em cada operação é claramente distinguível dos outros percursos excepcionais?
- A operação é muito longa e pode ser simplificada extraindo-se as declarações relacionadas em operações privadas?
- A operação é muito longa e pode ser simplificada reduzindo o número de pontos de
decisão? Um ponto de decisão é uma instrução em que o código pode seguir por caminhos
diferentes, por exemplo, as instruçõesif-, else-, and-,
while- e case-.
- O aninhamento de loops é minimizado?
- As variáveis estão nomeadas adequadamente?
- O código é simples e evita soluções "engenhosas"?
Finalidade |
Documentar os resultados da revisão.
Assegurar que os defeitos identificados foram documentados.
|
Após cada reunião de revisão, deve-se documentar os resultados da reunião em um
Registro de Revisão. Os defeitos também devem ser
documentados em Controles de Mudanças (e,
conseqüentemente, designados a alguém para que os corrija).
| |
|