Saya kira ini adalah situasi umum: Saya menguji beberapa kode, menemukan bug, memperbaikinya, dan melakukan perbaikan bug ke repositori. Dengan anggapan bahwa banyak orang mengerjakan proyek ini, pertama-tama saya harus membuat laporan bug, menugaskannya sendiri, dan merujuknya dalam pesan komit (mis. "Memperbaiki bug #XYZ. Bug itu disebabkan oleh X dan Y. Memperbaikinya dengan Q dan R ")? Atau, saya dapat melewatkan laporan bug dan melakukan dengan pesan seperti "Memperbaiki bug yang menyebabkan A saat B. Bug tersebut disebabkan oleh X dan Y. Memperbaikinya dengan Q dan R".
Apa yang dianggap praktik yang lebih baik?
Jawaban:
Itu tergantung pada siapa pemirsa laporan bug.
Jika hanya dilihat secara internal oleh pengembang, untuk mengetahui apa yang perlu diperbaiki, maka jangan repot-repot. Hanya kebisingan pada saat itu.
Daftar alasan yang tidak lengkap untuk tetap login:
sumber
Menurut saya, itu tergantung apakah produk Anda dirilis dengan bug atau tidak.
Jika itu dirilis dengan bug yang Anda temukan, maka ya, buat laporan bug. Siklus rilis sering kali panjang dan Anda tidak ingin bug Anda dilaporkan sebagai masalah baru saat Anda sudah memperbaikinya.
Jika bug Anda belum terkirim, maka saya tidak akan mengikuti jalur yang sama. Anda sekarang akan meminta orang-orang mencoba membuat ulang bug Anda yang tidak dapat mereka lakukan karena bug tersebut belum dirilis, pada dasarnya membuang waktu mereka.
sumber
Anda harus melakukan ini jika itu adalah bug yang bisa dilaporkan oleh pelanggan. Kasus terburuk: Anda memperbaiki bug, tetapi tidak ada yang tahu. Pelanggan melaporkan bug. Rekan Anda mencoba untuk memperbaiki bug, tetapi tidak dapat memperbanyaknya (karena Anda sudah memperbaikinya). Itu sebabnya Anda ingin catatan bug.
Ini juga berguna jika Anda melakukan tinjauan kode, di mana biasanya kode akan ditulis untuk beberapa tugas dan kemudian ditinjau. Dalam hal ini lebih baik jika bug diperbaiki, yang mungkin memerlukan memasukkan sesuatu ke dalam daftar tugas Anda dan kemudian melakukan semua pekerjaan.
sumber
Ini tergantung pada beberapa faktor.
Pieter B dan Caleth, keduanya memberikan beberapa jawaban:
Ada juga prosedur internal yang harus diikuti, sering kali didukung oleh persyaratan sertifikasi. Untuk sertifikat tertentu, setiap perubahan kode harus dilacak ke catatan dalam pelacak masalah.
Selain itu, kadang-kadang bahkan perbaikan bug yang tampak sepele tidak sepele dan polos seperti yang pertama kali muncul. Jika Anda secara diam-diam bundel perbaikan bug seperti itu untuk pengiriman masalah yang tidak terkait, dan perbaikan bug kemudian ternyata bermasalah, ini akan membuat jauh lebih sulit untuk dilacak, apalagi mengisolasi atau mengembalikan.
sumber
Pertanyaan ini hanya dapat benar-benar dijawab oleh pimpinan proyek Anda, atau siapa pun yang bertanggung jawab atas "proses mencentang".
Tetapi izinkan saya bertanya dengan cara lain: mengapa Anda tidak merekam bug yang Anda tempel?
Satu-satunya alasan yang dapat dipahami yang saya lihat adalah bahwa upaya untuk mengajukan laporan bug, melakukan terhadapnya, dan menutupnya, adalah perintah besarnya lebih besar daripada waktu untuk memperbaiki bug.
Dalam hal ini, masalahnya bukan karena bug itu mudah diperbaiki, tetapi dokumennya terlalu lama. Seharusnya tidak. Bagi saya, overhead untuk membuat tiket Jira menekan
c
, lalu memasukkan ringkasan 1 baris pendek, dan menekanEnter
. Uraiannya bahkan tidak di atas kepala, karena saya dapat memotong & menempelkannya ke pesan komit, bersama dengan nomor masalah. Pada akhirnya,. c <Enter>
dan masalah ditutup. Itu bermuara pada 5 penekanan tombol overhead.Saya tidak tahu tentang Anda, tetapi itu cukup kecil untuk menjadikannya kebijakan dalam proyek-proyek kecil bahkan untuk merekam setiap perbaikan bug dengan cara ini.
Keuntungannya jelas - ada beberapa orang yang dapat dengan mudah bekerja dengan sistem tiket seperti Jira, tetapi tidak dengan kode sumber; ada juga laporan yang dihasilkan dari sistem tiket, tetapi tidak dari sumber. Anda pasti ingin perbaikan bug Anda di sana, untuk mempelajari tentang perkembangan yang mungkin terjadi, seperti masuknya terus-menerus dari perbaikan bug 1-line kecil, yang dapat memberi Anda wawasan tentang masalah proses atau apa pun. Misalnya, mengapa Anda harus sering melakukan perbaikan bug kecil (dengan asumsi itu sering terjadi)? Mungkinkah tes Anda tidak cukup baik? Apakah perbaikan bug adalah perubahan domain, atau kesalahan kode? Dll
sumber
Aturan yang saya ikuti adalah bahwa jika bagian yang sedang Anda kerjakan tidak pernah dirilis dan bahkan belum berjalan dan belum ada pengguna yang melihatnya, perbaiki setiap bug kecil yang Anda lihat dengan cepat dan lanjutkan. Setelah perangkat lunak telah dirilis dan dalam produksi dan beberapa pengguna telah melihatnya, setiap bug yang Anda lihat mendapat laporan bug dan ditinjau.
Saya telah menemukan bahwa apa yang saya pikir bug adalah fitur untuk orang lain. Dengan memperbaiki bug tanpa meninjau bug tersebut, saya mungkin membuat bug alih-alih memperbaikinya. Masukkan laporan bug apa baris yang akan Anda ubah untuk memperbaiki bug dan rencana Anda tentang bagaimana bug itu harus diperbaiki.
Singkatnya: Jika modul ini tidak pernah diproduksi, perbaiki setiap bug yang Anda lihat dengan cepat dan ikuti spesifikasi. Jika modul sudah dalam produksi, laporkan setiap bug sebagai laporan bug untuk ditinjau sebelum diperbaiki.
sumber
Ya .
Ada beberapa jawaban yang telah memaparkan situasi di mana ada baiknya membuat laporan bug. Beberapa jawaban. Dan mereka berbeda.
Satu-satunya jawaban adalah tidak ada yang tahu. Orang yang berbeda, pada waktu yang berbeda , akan memiliki pendapat yang berbeda tentang masalah ini.
Jadi sekarang, ketika menemukan bug, Anda memiliki dua solusi:
Membuat laporan lebih cepat, dan jika tidak ... mengotomatiskannya.
Bagaimana cara mengotomatiskannya? Menganggap pelacak Anda mendukung skrip, buat skrip yang dapat Anda panggil dan yang akan menggunakan pesan komit (judul dan isi) untuk mengirimkan laporan bug dan segera tutup sebagai "diterapkan", dengan revisi komit terkait untuk dilacak.
sumber
Saya akan menyetujui jawaban lain semua menawarkan aturan praktis yang baik dan beberapa bahkan menyentuh pada titik ini, namun saya pikir hanya ada jawaban yang benar-benar yakin di sini.
Tanyakan saja kepada manajer Anda . Baik manajer Anda atau sebagai alternatif memproyeksikan pemimpin atau scrum master dll tergantung pada bagaimana grup Anda disusun.
Ada banyak sistem praktik baik dan buruk yang berbeda, tetapi satu-satunya cara untuk mengetahui Anda melakukan hal yang benar untuk tim Anda adalah dengan bertanya.
Sesuatu di sepanjang baris percakapan koridor satu menit akan dilakukan: "Hei (bos), jika saya memperbaiki bug kecil yang hanya membutuhkan beberapa menit, apakah layak membuat tiket untuk itu atau haruskah saya menyebutkannya dalam pesan komit saya? " dan Anda akan tahu pasti. Semua praktik baik di dunia tidak berguna jika metode itu mengganggu tim dan manajer Anda.
sumber