Is there a good way to introduce reviews?
Ci sono probabilmente molti buoni modi, a seconda del tuo team e dei benefici che speri di ottenere dalle recensioni, ma qualsiasi approccio avrà alcune caratteristiche comuni:
-
spiega cosa ti aspetti: questa è una nuova procedura per il tuo team, o almeno una modifica al processo esistente, quindi è giusto che il team sappia perché sei istituendo il cambiamento, in che modo ti aspetti che il team ne tragga beneficio e in che modo saprai se funziona.
-
definisci il processo: fai in modo che le persone seguano il processo che desideri seguire per rivedere il codice, discutere le modifiche, ecc. in modo che tutti i membri del team sappiano come per procedere.
-
definisce i criteri: esponi i tipi di modifiche che le persone dovrebbero e non dovrebbero chiamare come se avessero bisogno di miglioramenti. Ad esempio, bug e miglioramenti significativi delle prestazioni sono buoni da segnalare; gli standard di codifica, la leggibilità e i problemi di manutenibilità dovrebbero essere annotati ma non soffermati su; le questioni relative al gusto personale o allo stile dovrebbero essere lasciate in pace.
-
discutere del comportamento: Fai notare che l'obiettivo è migliorare il codice e promuovere una comprensione comune che aiuterà il team a scrivere un codice migliore su tutta la linea, non a mettere in imbarazzo nessuno, a sistemare i punteggi, ecc. Le critiche dovrebbero essere obiettive e costruttive, mai personali. La definizione di alcune regole di base può aiutare ad alleviare i problemi relativi alla revisione del codice.
-
per prima cosa mettiti in prima fila: Sia che tu abbia intenzione di avere recensioni individuali o recensioni di gruppo, è probabilmente una buona idea esaminare i primi come gruppo. La prima recensione dovrebbe essere del tuo codice in modo che gli altri membri del team possano vedere che il processo non è così male e che sei disposto a esaminarlo da solo.
Inizia tenendo una riunione preliminare per spiegare tutto quanto sopra e rispondere alle preoccupazioni dei membri del team. Follow-up con e-mail che documenta il processo.
I sense a large reluctance from the team, because it's just one more thing to do, and conversations can get painful.
Queste sono due preoccupazioni distinte. Se ritieni che le recensioni possano essere utili, è necessario dedicare del tempo al programma per eseguirle. Assicurati che i membri del team capiscano che la revisione è come qualsiasi altra attività, non qualcosa di aggiuntivo che devono fare continuando a completare altre attività con la stessa velocità.
Le riunioni di revisione del gruppo dovrebbero essere guidate da un facilitatore che mantenga la discussione in movimento, limiti la durata della riunione e mantenga le cose costruttive. Questo dovrebbe fare molto per evitare conversazioni dolorose. Nel momento in cui sarai pronto per iniziare le singole revisioni, il team sperabilmente avrà adottato comportamenti che li aiutino a mantenere le cose costruttive da soli.
Dovresti anche rivedere il processo di revisione di volta in volta. Riunisci il team ogni tanto per discutere del processo: come funziona, come potrebbe essere migliorato, quali pratiche dovrebbero essere abbandonate, ecc. Assegna al team il processo e la libertà di provare nuove cose.