Bagaimana Anda menangani tumpukan masalah yang terus tumbuh untuk diselesaikan "kapan saja"?

15

Kami menggunakan JIRA untuk melacak masalah dalam proyek perangkat lunak kami. Satu efek yang kami perhatikan adalah bahwa kami sering membuat masalah baru tetapi kami belum tahu kapan / jika masalahnya akan diperbaiki sama sekali. Jadi kami menemukan tonggak 'Masa Depan Jauh' palsu tempat masalah tersebut ditugaskan.

Seperti yang terjadi, tumpukan masalah yang ditugaskan untuk tonggak sejarah ini terus tumbuh sepanjang waktu sehingga tampaknya ini bukan pendekatan yang baik. Ada begitu banyak dari mereka sekarang sehingga menjadi cukup banyak pekerjaan untuk meninjau semuanya untuk validitas. Beberapa dari mereka menjadi tidak valid karena komponen yang terkait dengan Anda dihapus. Beberapa dari mereka digandakan oleh masalah lain. Beberapa dari mereka memiliki deskripsi yang diutarakan dengan buruk sehingga tidak ada yang benar-benar tahu apa yang mereka bicarakan lagi.

Bagaimana tim pengembangan perangkat lunak lain menangani masalah yang valid, tetapi mungkin tidak dapat diperbaiki kapan saja. Apakah Anda repot-repot merekamnya? Apakah Anda menugaskan mereka untuk versi yang direncanakan berikutnya dan kemudian melihatnya lagi ketika rilis berikutnya mendekati? Sesuatu yang lain

Frerich Raabe
sumber
1
Sepertinya Anda berbicara tentang tempat kerja saya, sangat mengganggu. Semoga beruntung dengan itu, saya melobi untuk sementara waktu sekarang dan mendapatkan lambat untuk tidak ada kemajuan pada titik itu. Manajemen tampaknya tidak mau repot sampai kami memiliki begitu banyak sampah sehingga kami tidak bisa lagi melakukannya.
deadalnix
Mengapa harus diperbaiki? Jika tidak penting dan tidak pernah diperbaiki maka itu sempurna.
B Tujuh

Jawaban:

11

Ini adalah bug kontak pertama yang baik untuk diperbaiki bagi pengembang baru yang baru saja bergabung dengan perusahaan Anda. Atau bagi pengembang junior untuk mengeluarkan pengetahuan mereka tentang sistem.

Jika tidak, Anda dapat menandai mereka "tidak akan memperbaiki" jika mereka tidak cukup serius untuk membenarkan waktu yang diperlukan untuk memperbaikinya.

Sardathrion - Pasang kembali Monica
sumber
3
+1 Untuk tidak akan diperbaiki, ini bisa menjadi masalah sosial dan juga masalah teknis. Terkadang Anda hanya perlu mengatakan TIDAK. Jika Anda terus memperbaiki bug, terutama fitur sepele atau berlebihan permintaan harapan orang akan meningkat dan mereka akan terus meminta lebih banyak.
Keyo
4
Memiliki programmer junior memperbaiki bug adalah ide yang buruk, sayangnya ini adalah praktik yang tersebar luas di industri. Cara paling efektif untuk memperbaiki bug adalah membiarkan pengembang yang memperkenalkannya memperbaikinya.
Trasplazio Garzuglio
6
@MarcoDinacci - Tergantung pada apa yang Anda masukkan ke "hemat biaya". Dengan tampilan jangka pendek Anda benar. Tetapi jika proyek berlangsung lama, memberikan tugas 'memperbaiki bug' kepada programmer junior dapat dilihat sebagai investasi.
mouviciel
2
@ mouviciel Saya pikir ada cara yang lebih baik dan lebih merangsang untuk melatih programmer junior daripada membiarkan mereka bekerja pada bug tetapi saya setuju bahwa ini adalah cara untuk mempelajari basis kode. Masalah lain dengan pendekatan ini adalah bahwa pengembang senior mungkin akhirnya hanya menulis kode tidak peduli untuk memperkenalkan bug karena ada pengembang junior yang akan memperbaikinya.
Trasplazio Garzuglio
3
@ MarscoDinacci, izinkan saya mengatakannya secara berbeda: jika pengembang senior membutuhkan proses eksternal untuk memaksa mereka menghasilkan karya berkualitas, tim memiliki masalah mendasar. IMHO, pengembang mana pun yang baik - tetapi terutama manula - harus memiliki motivasi internal untuk kualitas. Jika motivasi itu kurang dalam opini pemimpin tim, proyek hampir pasti akan gagal, dengan satu atau lain cara, dan tidak ada jumlah proses yang dapat membantunya.
Péter Török
11

Anda harus memperbaiki bug hanya jika aplikasi lebih berharga tanpa bug.

Jika bidang teks tidak selaras dan butuh tiga hari untuk memperbaikinya, maka biayanya mungkin terlalu tinggi dan Anda harus meninggalkannya. Sebaliknya, jika pengguna tidak bisa menulis sama sekali ke dalam bidang teks maka Anda harus memperbaikinya, dan dengan cepat.

Secara umum lebih mudah untuk memperbaiki masalah segera setelah ditemukan. Jika Anda membiarkan waktu berlalu, pengembang mungkin lupa bagaimana bagian dari kode itu bekerja dan memperbaiki bug akan memakan waktu lebih lama dan karenanya akan lebih mahal.

Beberapa perusahaan tidak menulis baris kode baru jika masih ada bug yang tertunda. Yang lain tidak repot sampai tahap pengujian sebelum pengiriman.

Di perusahaan Anda, Anda jelas membiarkan banyak waktu berlalu sebelum memperbaiki bug baru sehingga mereka menumpuk. Juga buruk bagi moral tim untuk melihat daftar bug yang sangat besar.

Saya sarankan Anda menghabiskan waktu sehari hanya untuk memilah bug yang ada, memutuskan bug yang layak diperbaiki dan bug yang tidak diperbaiki dan menugaskan bug yang diperbaiki ke anggota tim yang ada dengan tujuan menyelesaikan masalah sebelum tonggak berikutnya. .

Trasplazio Garzuglio
sumber
6

Dalam pelacakan masalah kami, ada status "pembatasan waktu". Jika suatu masalah berumur beberapa bulan atau bahkan bertahun-tahun, dan tidak ada klien yang mendesak atau memperbaiki masalah tersebut, maka status ini digunakan sebagai status akhir. Ini tidak dilakukan secara otomatis, tetapi secara manual, setiap kali manajer meminta kami untuk membersihkan masalah terbuka. Selama proses ini, ada kemungkinan bahwa beberapa masalah telah diperbaiki karena mudah diperbaiki dan / atau relatif penting (meskipun tidak didesak atau diperbaiki).

pengguna281377
sumber
1
Ini adalah strategi yang bagus - mengetahui bug yang telah mengganggu Anda selama bertahun-tahun mungkin akan tersapu selamanya sehingga menjadi motivator yang hebat untuk menanganinya.
Steve Jackson
2

Saya tidak menggunakan JIRA, saya punya fogbugz di tempat kerja tetapi saya yakin ini berlaku untuk sebagian besar pelacak bug. Ketika menulis ini saya menyadari bahwa cara saya bekerja lebih gesit daripada air terjun, tenggat waktu tidak konkret bagi saya dan yang penting adalah prioritas.

  • Jika bos Anda peduli tentang terlalu banyak tiket yang dibuka, jangan membuat yang sepele di tempat pertama. Anda harus prgamatic dan tidak menambahkan fitur / perbaikan apa pun yang tidak memiliki manfaat. Jika itu akan membuat hidup Anda lebih mudah untuk memoles beberapa kode atau mengubah UI maka tentu saja, tambahkan. Jangan hanya bekerja untuk diri sendiri dengan mencoba memperbaiki kekurangan kecil pada produk, tidak ada yang sempurna.
  • Masukkan bug / fitur yang tidak penting dalam tonggak saat ini tetapi di bawah prioritas rendah. Jika lebih banyak keluhan / permintaan disebutkan tentang masalah ini maka Anda dapat meningkatkan prioritas.
  • Tutup / pecahkan apa yang bisa Anda perbaiki, tidak dapat diperbanyak, digandakan, dll. Beberapa bug terlalu sepele untuk diperbaiki atau itu adalah permintaan fitur yang akan memakan waktu terlalu lama. Terkadang Anda hanya perlu memberi tahu orang yang meminta perbaikan / fitur ini "Tidak, Maaf, kami tidak punya waktu".
  • Prioritaskan bug seperti yang diperlukan dan minta daftar tiket Anda diurutkan berdasarkan prioritas dan tonggak sejarah.
  • Jika mereka tidak akan membuat tonggak sejarah maka memindahkan mereka ke tonggak sejarah masa depan.
  • Jika tiket tergantung pada tiket lain yang sedang diselesaikan maka tandai sebagai diblokir atau mengatur tiket menjadi hierarki sehingga jelas bahwa tiket-x dan tiket-y terkait.
  • Jika tiket membutuhkan umpan balik dari seseorang yang memberikannya kepada orang itu.

Pada akhirnya Anda akan selalu memiliki banyak tiket prioritas rendah, tetapi poin di atas akan membantu Anda meminimalkan itu.

Keyo
sumber
2

Kami menggunakan JIRA, dan memiliki status resolusi tambahan yang disebut Suspended- jika fitur / bug adalah sesuatu yang kami harus menyerah untuk sementara waktu, itu akan diselesaikan sebagai Ditangguhkan. Dengan cara itu tidak dicampuradukkan dengan daftar masalah yang sedang aktif yang harus kita perhatikan, atau daftar masalah yang diselesaikan yang kita tahu telah ditangani oleh satistfactory, dan itu masih ada di database.

Daftar masalah yang ditangguhkan adalah sesuatu yang saya ulas secara berkala (tapi tidak terlalu sering) untuk dibuka kembali seperlunya.

Jason S
sumber
1

Tidak yakin dengan terminologi JIRA yang benar, tetapi pertimbangkan untuk menetapkan tanggal kedaluwarsa pada setiap "tiket". Jika belum ditingkatkan, berdasarkan kebutuhan fitur atau tingkat keparahan bug, untuk implementasi dalam jangka waktu tertentu, mungkin itu tidak terlalu penting sejak awal. Ini akan membantu menjaga tumpukan terpangkas secara otomatis. Saya sering mendapatkan tiket berdasarkan "bukankah itu menyenangkan" atau "ini tidak berfungsi dengan sempurna seperti yang saya inginkan". Jika tidak ada yang mendorong cukup untuk itu, atau pengguna yang tidak memiliki cukup kekuatan, itu tidak dilakukan dan saya menutup tiket setelah beberapa bulan.

cdkMoose
sumber