Nafies Luthfi

Life will always feel wonderful if we always think positively.

Mencatat Bug dan Small Improvement dengan Bitbucket Issue

Bismillahirrahmanirrahim.

Misal teman-teman programmer/software developer telah selesai mengerjakan sebuah software (misalkan project untuk user/klien) dan software tersebut dalam masa uji coba, kita cenderung mendapatkan laporan bug terkait software tersebut. Bagaimana cara mencatat laporan tersebut agar mudah diingat/dibuka kembali ketika ingin mengerjakan perbaikannya?

Atau ketika ada permintaan improvement kecil dari user/klien. Bagaimana apa sarana yang digunakan mencatat permintaan tersebut untuk memastikan tidak ada yang terlewat oleh kita (saat dikerjakan)?

Sarana Mencatat Bug Report/Improvement Request

Ada beberapa sarana (catatan) yang mungkin kita andalkan :

  1. “Scroll back” diskusi melalui Chat
  2. Mencari diskusi pada Email
  3. Membuat catatan file .txt atau .odt yang kita buat saat meeting
  4. Catatan tulis tangan saat kita meeting
  5. Pada sebuah Board Trello yang sudah kita siapkan
  6. Atau buat issue pada hosted repo di github/bitbucket/gitlab.

Saya sudah mencoba sarana point 1 s/d 5, dan akhirnya yang paling rutin saya lakukan adalah point 3 karena paling mudah dan cepat. Sedangkan point 6 (saya bayangkan) hanya bisa diterapkan pada sebuah project yang dikerjakan dengan kolaborasi, karena keterlibatan banyak orang dan pasti ada project leader dalam project tersebut. Dan sarana itu juga lengkap dengan fitur “penugasan”, maka akan sangat membantu dalam pembagian tanggung jawab pada project yang dikerjakan secara kolaborasi.

Yap, selama ini saya mengandalkan file-file .txt yang saya buat saat meeting/chat dengan klien, dan kembali membuka file-file tersebut untuk mengingat hal-hal yang harus saya kerjakan. Setiap item yang sudah dikerjakan, saya tambahkan tanda (done) disampingnya. Seperti ini.

Notes on txt file

Tradisionil ya? Hehe..

Setidaknya ini usaha saya agar tidak lalai terhadap pekerjaan yang harus saya kerjakan. Untuk minimalisir kata “saya lupa” (yang sering sekali menjadi perkara).

Menggunakan Bitbucket Issue

Baru-baru ini, saya menyadari, bahwa sarana point 6 di atas juga bisa digunakan untuk project yang dikerjakan sendiri (misal oleh seorang freelancer atau seorang single fighter dalam sebuah instansi). Coba teman-teman lihat ini.

Bitbucket issue on feature request

Disitu kita bisa lihat, catatan txt saat meeting dengan klien (yang saya buat di atas), setiap item bisa kita input menjadi sebuah issue di repo bitbucket. Kalau sudah diinput seluruhnya (hasil meeting tadi), maka di bitbucket issue kita bisa lihat :

  • Mana item yang sudah dikerjakan,
  • Mana yang belum dikerjakan,
  • Mana yang prioritasnya tinggi,
  • Sifat issue (bug atau improvement atau lainnya)
  • Kapan issue dibuat
  • Kapan solved/update terakhir (ketahuan jika ada yang sudah lama tidak di-follow-up)
  • Siapa yang bertugas (kalau sendirian ya tentu nama kita di situ :D )

Mantap ya, banyak manfaat yang kita dapatkan. Kemudian jika kita lihat detail salah satu issue seperti di bawah ini.

Bitbucket issue detail

Maka kita bisa melihat :

  1. Siapa yang buat issue
  2. Ada komentar (kalau perlu mencatat detailnya)
  3. Kalau statusnya closed kelihatan siapa yang mengerjakan.
  4. Commit-commit yang berkaitan dengan issue ini, jika direferensikan pada commit message.

Lebih keren, kan ya, dari pada mengandalkan catatan yang di file txt? Menurut saya, iya. :D

Input Issue di Bitbucket

Pada saat kita klik Create Issue pada Bitbucket, kita akan mendapatkan formulir seperti ini:

Bitbucket create new Issue

Berikut keterangannya :

  1. Title adalah judul issue, deskripsi singkat tentang masalah/item pekerjaan
  2. Description adalah penjelasan tentang masalah/item pekerjaan secara detail, agar mudah dipahami oleh orang yang akan ditugasi, deskripsi dapat ditulis dengan format Markdown dan dapat kita review terlebih dahulu.
  3. Assignee adalah petugas yang bertanggung jawab terhadap issue ini, baik developer atau penanggung jawab (PIC).
  4. Kind adalah jenis issue. Bisa berupa Bug, Enhancement, Proposal, atau Task
  5. Priority adalah prioritas atau tingkat urgensi masalah yang dilaporkan.
  6. Attachment adalah lampiran file pendukung untuk masalah tersebut, misalnya screenshot software atau lainnya.

Dengan pengisian yang lengkap dan jelas pada formulir ini, maka masalah yang dilaporkan akan mudah dipahami oleh penanggung jawab, atau bahkan oleh kita sendiri (untuk memastikan kita tidak lupa).

Manfaat History Issue Bitbucket

Ketika semua catatan hasil meeting dan laporan temuan bug dicatat pada fitur Issue private repo Bitbucket kita, otomatis semua catatan akan tersimpan kan ya? Ini sangat bermanfaat agar kita dapat :

  1. “Trace back” apa saja yang telah dikerjakan
  2. Mengetahui beberapa banyak bug yang kita tangani
  3. Mengetahui berapa banyak improvement yang diminta oleh User/Klien
  4. Review kapan kita menyelesaikan issue yang mana
  5. Review siapa yang menyelesaikan issue yang mana
  6. Evaluasi dari titik ketika project kita anggap selesai sampai project benar-benar selesai.

Kesimpulan

Baik, kita ambil kesimpulan dari artikel ini, yaitu jika kita menggunakan fitur bitbucket issue untuk mencatat item-item pekerjaan terkait bug dan small improvement dalam sebuah project, kita mendapatkan beberapa manfaat :

  1. Catatan laporan problem terpusat di satu tempat
  2. Catatan permintaan improvement (feature request) terpusat di satu tempat
  3. Memilah mana item pekerjaan yang sudah dan belum dikerjakan
  4. Memilah mana item pekerjaan yang harus dikerjakan duluan sesuai prioritasnya
  5. Evaluasi seberapa banyak bug yang ditemukan oleh user/klien
  6. Evaluasi seberapa banyak small improvement yang diminta oleh user/klien
  7. Minimalisir hilang catatan dan kata “saya lupa”.

Satu catatan dari saya untuk pemanfaatan sarana ini (dari sudut pandang freelancer). Sarana ini hanya cocok untuk mencatat laporan bug dan improvement kecil untuk sebuah project, kurang cocok jika digunakan untuk mencatat fitur-fitur utama project atau pembagian tugas sejak awal project.

Karena jika digunakan sejak awal project, banyak waktu akan habis untuk menulis issue ini. Kecuali ada pertimbangan yang mungkin belum terpikir oleh saya.

Tentunya manfaat-manfaat tersebut di atas bersifat subyektif berdasarkan opini saya pribadi. Jika teman-teman memiliki opini lain, silakan disampaikan pada komentar, agar saya mendapatkan pencerahan baru dari teman-teman.

Terima kasih atas waktunya, semoga tulisan ini menjadi manfaat untuk kita semua. Aamiin..