O Google tem as melhores práticas de revisão de código de qualquer lugar que eu já vi. Todos os que conheci estão de pleno acordo sobre como fazer revisões de código. O mantra é "revise cedo e frequentemente".
Suponha que você use um processo parecido com o que Graham Lee sugeriu. (Que é um processo que eu já havia usado anteriormente.) O problema é que os revisores estão sendo solicitados a examinar grandes pedaços de código. Isso é muito mais esforço, e é mais difícil conseguir que os revisores o façam. E quando eles fazem isso, é mais difícil fazê-los fazer um trabalho completo. Além disso, quando eles percebem problemas de design, é mais difícil fazer com que os desenvolvedores voltem e refizem todo o código de trabalho para torná-lo melhor. Você ainda captura coisas e ainda é valioso, mas não notará que está perdendo mais de 90% do benefício.
Por outro lado, o Google tem uma revisão de código em cada confirmação antes de poder entrar no controle de origem. Ingenuamente, muitas pessoas pensam que este seria um processo pesado. Mas isso não funciona dessa maneira na prática. É extremamente mais fácil revisar pequenos pedaços de código isoladamente. Quando são encontrados problemas, é muito menos trabalhoso alterar o design, porque você ainda não escreveu um monte de código em torno desse design. O resultado é que é muito mais fácil fazer uma revisão completa do código e muito mais fácil corrigir os problemas alterados.
Se você deseja fazer uma revisão de código como o Google (o que eu realmente recomendo), existe um software para ajudá-lo. O Google lançou sua ferramenta integrada ao Subversion como Rietveld . O Go (o idioma) é desenvolvido com uma versão do Rietveld modificada para uso com o Mercurial. Há uma reescrita para pessoas que usam o git chamado Gerrit . Também vi duas ferramentas comerciais recomendadas para isso, o Crisol e o Review Board .
O único que eu usei é a versão interna do Google do Rietveld, e fiquei muito satisfeito com isso.