Batas waktu untuk rilis adalah besok, kolega Anda akhirnya menyelesaikan tugasnya yang penting untuk rilis ini, manajer proyek berdiri di atas bahu Anda dan menekan Anda untuk akhirnya membuat build dan Anda melihat cacat pada kode kolega Anda selama peninjauan. Bukan yang kritis, tetapi sesuatu yang Anda tidak akan lepaskan jika bukan karena rilis besok. Dan untuk membuat segalanya lebih buruk, Anda memiliki pekerjaan Anda sendiri, Anda harus menyelesaikan secepatnya. Jadi apa yang kamu lakukan? Apakah Anda mengajukan keberatan meskipun ada tekanan atau Anda membiarkannya saja?
Salah satu cara yang saya temukan adalah untuk sementara menggabungkan komit ini pada cabang yang berbeda dan meninggalkan ulasan untuk nanti. Ini berfungsi jika masalahnya hanya kosmetik dan jika itu satu-satunya yang masih menunggu tinjauan kode. Namun, apakah ada cara yang lebih efisien untuk menangani ini? Misalnya, akankah Anda merekomendasikan komitmen satu orang untuk hanya meninjau dan menguji kode?
sumber
Jawaban:
Jawabannya di sini adalah berkomunikasi.
Jika masalah bukan penghenti acara, lanjutkan dengan rilis. Menginformasikan QA, dan pengguna Anda tentang masalah dan berkomitmen untuk tanggal tindak lanjut di mana masalah akan ditambal. Ini hanya menjadi risiko lain untuk produksi.
Jika ini adalah show stopper (artinya ini akan berdampak negatif pada bottom line atau kesehatan seseorang) komunikasikan hal ini ke atas rantai bahwa rekomendasi Anda adalah untuk menunda rilis, dan beri tahu alasannya. Kemudian kembalilah bersama dev dan cari tahu berapa lama waktu yang diperlukan untuk memperbaiki masalah ini, dan beri tahu manajemen bahwa Anda perlu sejumlah X menit / jam / hari.
Peluangnya adalah manajemen tidak akan senang dengan show stopper ini di akhir pertandingan, tetapi tidak ingin itu dirilis untuk produksi.
Berkomunikasi, dan biarkan manajemen menelepon.
sumber
Jangan hanya mengomunikasikan masalahnya, dokumentasikan saja
Perhatian besar saya dengan jawaban lain sejauh ini: Apa pun yang Anda katakan di sepanjang baris ini kepada manajer proyek khas yang menghadapi tenggat waktu dekat kemungkinan akan diabaikan atau dilupakan. Kemudian, Anda masih bisa berada di hook untuk mengkomunikasikan risiko secara tidak memadai , jika terjadi kesalahan.
Biarkan manajer proyek tahu tentang masalah yang Anda temukan, dan beri tahu dia bahwa Anda akan mendokumentasikannya . Anda harus bisa menunjukkan uji tuntas Anda.
Tempat mendokumentasikan dan siapa yang akan diceritakan tergantung pada lingkungan kerja Anda, tetapi pasti termasuk atasan Anda.
Identifikasi Risiko dan Dampak
Anda menyebutkan masalahnya bukan yang kritis tetapi tidak benar-benar mendefinisikan apa artinya itu. Menentukan hal itu adalah langkah Anda selanjutnya.
Lakukan dengan cepat analisis risiko dan dampak mengidentifikasi masalah, seberapa besar kemungkinannya menyebabkan masalah (risiko) dan beratnya konsekuensi jika risiko tersebut membuahkan hasil (dampak). Gunakan istilah yang terdefinisi dengan baik (yang seharusnya diketahui oleh manajer proyek Anda) seperti yang ditemukan di tautan di atas, tetapi juga berikan deskripsi yang mendukung analisis Anda.
Dokumentasi Anda juga harus mencakup tindakan yang Anda rekomendasikan. Ya , tidak masalah untuk menyampaikan kekhawatiran dan masih merekomendasikan untuk melanjutkan rilis. Itu benar untuk mengidentifikasi risiko .
Kapan rilis Anda berikutnya?
Jika, setelah menyelesaikan analisis risiko / dampak Anda, Anda masih ragu tentang apa yang harus direkomendasikan, pertimbangkan jadwal rilis Anda. Beberapa kode tidak sempurna boleh dilepaskan jika Anda bisa berharap untuk memasukkan perbaikan dalam dua minggu.
Jika ada kemungkinan bahwa memperbaiki masalah Anda akan menjadi "kehilangan prioritas" (yaitu, diabaikan demi peningkatan mengkilap berikutnya) maka itu adalah satu lagi alasan untuk mendokumentasikan masalah sesegera mungkin setelah Anda menemukannya: jika efektif "dimulai jam ”pada masalah ini.
sumber
Dalam hal ini, cukup beri tahu semua orang dan biarkan mereka yang memutuskan. Itu mungkin bukan bug pertama yang Anda lepaskan.
Batas waktu adalah besok, tetapi Anda menemukan diri Anda dalam situasi ini:
Ini mungkin pengecualian, jadi jangan membuat perubahan drastis pada proses Anda hanya karena satu bug lolos. Yang harus Anda lakukan adalah menerapkan beberapa langkah, sehingga Anda tidak membuat build pada menit terakhir. Mudah-mudahan, Anda membuat build pada frekuensi yang cukup teratur untuk memberi Anda keyakinan itu akan berhasil. Itu masih bukan alasan yang cukup baik untuk menjalankannya di menit terakhir. Memiliki hal-hal yang diuji dengan baik adalah bagian lain untuk meningkatkan kepercayaan diri.
Sampaikan skenario ini kepada siapa pun yang memimpin hal ini.
Meskipun ini tidak menjawab apa yang harus dilakukan dengan masalah menit terakhir ini, ini memang menawarkan cara untuk memastikan Anda dapat menangani mereka di masa depan. Terutama ketika ada tekanan untuk melepaskan, Anda ingin memiliki cara untuk menangani hal-hal dengan cara yang dipikirkan dan tidak didorong oleh emosi.
sumber
Jika ada tenggat waktu, dan manajer Anda tepat di belakang Anda melihat dari balik bahu Anda, Anda menyuruhnya pergi. Dia pergi atau kamu pergi. Jelaskan kepadanya bahwa dipaksa untuk meninjau di bawah tekanan, Anda mungkin juga tidak meninjau kode.
Dalam situasi seperti ini, Anda dapat yakin bahwa beberapa bug kritis akan melalui.
Anda mungkin berada dalam situasi yang beruntung, seperti mengirimkan ke App Store Apple, tempat Anda memiliki beberapa hari untuk menarik versi baru. Tetapi jika kode Anda dikirimkan ke pelanggan, itu adalah resep untuk bencana. Lain kali saya berharap manajer Anda merencanakan lebih baik.
sumber
Jawaban lain fokus pada masalah manajer Anda yang mencoba membengkokkan proses kualitas Anda.
Namun, yang saya pikir Anda tanyakan adalah bagaimana menghadapi fakta bahwa tinjauan kode membutuhkan setidaknya 2 orang, dan karena itu menyebabkan penundaan yang signifikan. Misalnya, jika tugas membutuhkan waktu 2 jam untuk diimplementasikan dan 2 jam untuk meninjau, seringkali ada jeda yang panjang antara kedua kegiatan. Secara real time tugas mungkin membutuhkan 2 atau 3 hari untuk selesai.
Ini adalah masalah klasik dari throughput vs latensi. Dalam mesin penghasil perangkat lunak (manusia), saklar konteks itu mahal, jadi mencegah pekerjaan seseorang untuk segera melakukan tinjauan tidak boleh menjadi praktik yang umum.
Berikut adalah beberapa tips untuk mengurangi masalah:
sumber