Lihatlah bagaimana facebook melakukannya dengan aplikasi mereka sendiri, yang disebut phabricator: http://phabricator.org/
Mereka pada dasarnya berkomitmen pada basis per masalah, dan untuk setiap masalah, kode ditampilkan, yang harus ditinjau oleh seseorang. Kode tidak masuk ke repositori utama mereka sampai peninjau mengatakan tidak apa-apa untuk melakukannya.
Saya kira itu membuatnya lebih menyenangkan.
Juga, mungkin sebuah kode harus diberikan kepada dua orang: satu yang melakukannya dan satu yang mengulasnya.
Meskipun mungkin rekan tim Anda tidak percaya pada ulasan ini.
Secara pribadi, karena kurangnya pengulas, saya menggunakan unit test untuk fungsi tingkat yang lebih rendah dan "tes petugas kebersihan" untuk semua yang lain: tes petugas kebersihan disebut seperti itu, karena bahkan petugas kebersihan harus dapat memahami kode Anda.
Saya biasanya menghapus beberapa bagian kecil, seperti tanda kurung blok / fungsi, notasi visibilitas, kadang-kadang bahkan mengetik, dan menunjukkannya kepada manajer, pakar domain, teman, siapa pun yang meminta kode: "Inikah yang Anda inginkan?"
Juga, pergi ke sana secara pribadi dan tidak pergi sampai pemeriksaan selesai dapat membantu.
Atau, jika Anda tidak setuju dengan tim, atau mereka tidak setuju dengan Anda, Anda tahu, "jika Anda dapat 'mengubah perusahaan, ganti perusahaan" ...
Anda memiliki sejumlah masalah untuk diatasi - Anda harus memenangkan hati dan pikiran dan Anda harus memastikan bahwa waktu tersedia untuk ulasan kode.
Bagian kedua mungkin paling mudah - Anda setuju (secara kolektif dan harus memasukkan manajemen) bahwa hal pertama yang dilakukan dev setiap pagi adalah ulasan kode mereka - ini sederhana, dapat dimengerti, efektif dan memberi Anda tongkat yang jelas dan bagus untuk mengalahkan orang-orang dengan jika mereka tidak patuh. Lebih baik, Anda tidak mengganggu apa pun, Anda tidak meminta mereka untuk berhenti bekerja pada kode mereka, Anda tidak meminta orang untuk memasukkan sesuatu ke dalam daftar tugas mereka ...
Bagian pertama adalah masalah sebenarnya - para peserta dalam proses peninjauan harus melihatnya sebagai memiliki nilai jika tidak mereka tidak akan pernah melakukan tinjauan kode (yang dianggap tidak memiliki nilai) ketika mereka bisa menulis kode atau memperbaiki bug (yang pasti lebih penting ...?).
Jika Anda dapat menggabungkan keduanya - pertama memastikan bahwa semua orang percaya (atau memahami) bahwa ada nilai dalam ulasan kode - paling dasar itu berarti lebih sedikit bug yang berarti lebih banyak kode baru yang biasanya lebih menyenangkan - dan kemudian mengatur kedua hal-hal sehingga ada ruang yang jelas dalam jadwal untuk review kode yang harus dilakukan maka semoga hal-hal baik akan terjadi ... itu akan menjadi bagian dari budaya.
Setelah menjadi bagian dari budaya, mungkin tidak perlu lagi mengatakan "hal pertama setiap hari" - tetapi setelah mengatakan bahwa saya pikir itu cocok dengan pola yang mungkin diinginkan seorang dev.
sumber
Di sebagian besar perusahaan tempat saya bekerja, Anda memiliki 3 hari untuk menyelesaikan ulasan. Tidak dapat diterima untuk tidak melakukan ulasan. Itu bagian dari pekerjaan Anda. Jika Anda tidak melakukan tinjauan yang layak tepat waktu, hal itu memengaruhi penilaian kinerja Anda. Dan ya, ulasan sepertinya selalu terjadi pada saat yang paling tidak tepat. Sayang sekali, pelajari waktu untuk memasukkan ulasan dalam perkiraan Anda. Bagaimanapun, jika manajemen benar-benar percaya bahwa tinjauan itu penting (mis. Mereka mengamanatkan bahwa semua kode ditinjau) maka mereka akan mendorong kebijakan serupa. Selain itu, jika orang tidak menyelesaikan ulasan dalam waktu yang ditentukan, itu berlaku sebagai penerimaan mereka terhadap materi.
sumber
Pertimbangkan untuk menggunakan alat seperti Papan Tinjauan . Ini sangat membantu, terutama untuk ulasan panjang.
Anda dapat mengunggah perbedaan Anda dan menunggu hingga peninjau selesai ulasannya. Jika Anda memiliki ulasan terbuka yang mencegah Anda melanjutkan pekerjaan Anda, Anda dapat melaporkan ini selama rapat harian Anda (tim Anda ingin fitur-fitur baru diperiksa sehingga mereka dapat diuji sesegera mungkin, bukan?).
sumber
Beberapa poin untuk ditambahkan yang tidak ada dalam jawaban lain.
Kode yang akan ditinjau harus diperiksa
Tugas pemblokiran diprioritaskan, oleh karena itu tinjauan kode harus diprioritaskan daripada pekerjaan lain (tetapi berusaha untuk tidak memutus aliran Anda). Sebagai pengembang, Anda harus meminta orang lain untuk meninjau kode Anda (karena Anda ingin membuatnya lebih baik). Dalam pengetahuan itu, Anda harus segera melakukan tinjauan untuk orang lain.
Pertanyaan yang lebih sulit adalah kapan dan bagaimana melakukan review kode dengan baik.
Aturan yang telah bekerja untuk kami pada saat itu adalah bahwa kode bersama harus ditinjau karena memiliki dampak yang lebih luas sedangkan dalam kode untuk satu aplikasi (terutama mengingat kami menggunakan pengembangan yang digerakkan pengujian) itu kurang penting.
sumber