Bug atau kutu dalam Software Development merupakan hal biasa, karena developernya adalah manusia, مَحَلُّ الْخَطَاءِ وَالنِّسْيَانِ a.k.a tempatnya salah(jamak) dan lupaa(jamak). Jadi maklum kalo banyak lupa dan banyak salah. Eeaa..
Namun demikian, bug yang kita anggap biasa tersebut bisa menjadi luar biasa kalau tidak di manage dengan baik. Ibarat mati satu tumbuh seribu. Hari ini diclose satu, besoknya ada 10 bug direopen.
Nah, apa saja yang dapat kita lakukan, mari simak poin-poin berikut ini.
Mengantisipasi bug.
Sebenarnya bug itu bisa diantisipasi lho. Salah satu usahanya adalah dengan membuat arsitektur yang baik, standarisasi kode sesuai best practice, memperhatikan dokumentasi dan Design Guide dengan detil dan teliti. Itu semua bisa dilakukan dalam rangka mengantisipasi(lebih tepatnya meminimalisir terjadinya) bug.
Menganalisa penyebab bug.
Butuh pengalaman dan jam terbang yg tinggi untuk bisa menganalisa bug dengan baik. Dalam hal ini yang biasa dilakukan adalah dengan mengecek response dari API, memasang log di tempat yg tepat, cek kompatibilitas, mencegat exception. Intinya skill koding saja belum cukup. Seorang programmer/developer haruslah memiliki kemampuan problem solving yg baik dalam hal ini.
Mengklasifikasikan bug.
Ini termasuk salah satu usaha dalam rangka memberantas bug. Bug dapat dipilah-pilah dan dikelompokkan berdasarkan jenisnya, reproducenya, penyebabnya atau fitur tempat munculnya bug. Hal ini perlu dilakukan agar kita dapat membuat skala proritas, bug-bug mana dulu yang akan dikerjakan berdasarkan effortnya.
Memprioritaskan bug.
Entah mengapa saya lebih suka mengerjakan mulai dari yg gampang-gampang dulu baru kemudian yg susah-susah. Karena yg gampang itu pasti cepat selesai dikerjakan, sehingga jika pait-paite hampir due date dan bug belum habis, itu ya tinggal sisa yg susah-susah. Jadi ketika PM tanya kok belum selesai jawabnya gampang, “sulit bos, he3x”. Jangan terlalu taqlid pada pepatah bersusah-susah dahulu bersenang-senang kemudian.
Jangan terlalu taqlid pada pepatah bersusah-susah dahulu bersenang-senang kemudian
Jangan malah kebalik, karena bug yang sulit itu biasanya memakan waktu, harus googling sana-sini, nyetek overflow, tau-tau ketika hampir due date jebul masih banyak bug yg belum di fix, dyarrr.
Kecuaaliii… jika ada yg critical atau major dan nyolok mata tentu saja harus diprioritaskan karena harus segera release.
Jangan pernah meremehkan bug.
Bagaimanapun juga bug adalah bug(lho piye to ki). Karena bug yang mungkin terlihat remeh dimata developer bisa jadi adalah masalah besar di mata user.
Kadang saya dapat laporan major bug dari QA atau dari user, tapi ternyata penyebabnya hanya karena salah config atau kesalahan sepele lainnya yang tentunya hanya butuh effort kecil.
Namun bisa juga sebaliknya, ada juga bug yang mungkin dianggap sepele oleh user, semisal bug tampilan. Namun ternyata, untuk nge-fix bug tersebut membutuhkan effort yang besar, bahkan harus migrasi library. Wkwkwk.
Memafkan bug.
Diantara bug-bug yg ada pastilah ada yg tidak terlalu mencolok, sifatnya minor, prosentase kejadiannya kecil. Akhirnya dilabeli FNR(Fixes Next Release), sementara dipending lama-lama jadi semenTahun ha3x.
Bersahabat dengan bug.
Yah begitulah kira-kira, karena sesungguhnya kesempurnaan hanyalah milik Allah ta’ala sehingga sudah sewajarnya apabila segala yg ada pada diri makhlukNya penuh dengan kekurangan dan kelemahan. *Duh, melenceng adoh.
Pada akhirnya, marilah kita mencoba bersahabat dengan bug, karena dalam setiap fitur itu terdapat bug, sehingga bug adalah bagian dari fitur dengan kata lain bug adalah fitur ha3x. *menghibur diri.