Quella particolare pratica sembra inefficiente e verosimilmente imbarazzante - chi vuole che i propri errori siano puntati su un intero gruppo di persone. Quindi, se non possono scegliere cosa deve essere rivisto e il codice non è ancora in produzione, è probabile che ciò possa rendere le persone a disagio.
A seconda di quando il codice viene riesaminato, può fare una grande differenza se i commenti di revisione del codice lo fanno nel codice oppure no. Se lo sviluppatore può scegliere e scegliere solo il codice di produzione, è improbabile che i commenti di revisione vengano implementati. È bello avere riunioni in cui gli sviluppatori possono mostrare una tecnica ingegnosa che hanno appreso che altre persone potrebbero essere interessate, ma non è una revisione del codice. Questo è l'allenamento.
Facciamo una revisione del codice di ogni pezzo di codice prima che venga spostato al QA. Ogni pezzo Coinvolge generalmente solo il revisore del codice e lo sviluppatore. Non passa al controllo qualità finché il revisore del codice non lo inoltra formalmente. Quindi lo sviluppatore deve apportare le modifiche. Abbiamo trovato e risolto rapidamente molti problemi che il controllo di qualità potrebbe non aver trovato (trovano anche cose che non vediamo nella revisione del codice). Inoltre, riduce la codifica dei cowboy e identifica rapidamente quelle persone che non stanno ottenendo buoni risultati in modo da poter risolvere i loro problemi e addestrarli o eliminarli prima che danneggino la nostra applicazione. Il tempo di revisione del codice fa parte della nostra stima del tempo quando si pianifica il lavoro in modo da non avere alcun impatto sulla scadenza. In realtà, a lungo termine si risparmia tempo perché prima si trova un problema più è facile da risolvere. Tra l'altro i revisori del codice sono peer non manager e coinvolgiamo persone a tutti i livelli nella revisione del codice.
Personalmente ho insegnato agli sviluppatori meno esperti molte tecniche migliori attraverso la revisione del codice e ho imparato alcune tecniche migliori personalmente rivedendo il codice di altre persone e i loro commenti sul mio codice. Un'ulteriore revisione del codice fa in modo che qualcun altro comprenda il codice che è molto importante per renderlo più gestibile. A volte, il codice funziona, ma le domande della revisione rendono chiaro che ci saranno problemi di mantenimento perché il codice è difficile da capire. Meglio rifattorici in questi casi, mentre è ancora tutto fresco nella tua mente di un anno dopo, quando anche l'autore del codice viene lasciato a grattarsi la testa e si chiede perché il codice fa così e così.