Dilemma dalam Kualitas Software

Apakah bisa dimaklumi apabila kita menghasilkan software dengan predikat "good enough (cukup/lumayan baik)"? Jawaban atas pertanyaan ini adalah (harus): "ya," karena perusahaan-perusahaan software besar melakukannya (hal ini) setiap hari. Mereka membuat software dengan bug yang sudah diketahui dan me-rilis-nya ke para pengguna akhir secara masif. Mereka menyadari bahwa beberapa fungsi dan fitur yang ada dalam versi 1.0 mungkin bukanlah kualitas yang tertinggi dan merencanakan untuk perbaikan dalam versi 2.0. Mereka melakukan ini dan tahu bahwa beberapa pelanggan akan mengeluh, tetapi mereka juga menyadari bahwa time-to-market dapat mengalahkan kualitas yang lebih baik asalkan produk yang dirilis adalah berpredikat “cukup baik.”

Apa sebenarnya yang dimaksud dengan "cukup baik"? Software yang cukup baik memberikan fungsi dan fitur berkualitas tinggi yang diinginkan pengguna, tetapi pada saat yang sama juga memberikan fungsi dan fitur khusus lainnya yang kurang atau tidak jelas atau yang mengandung bug yang sudah diketahui. Vendor software berharap bahwa sebagian besar pengguna akan mengabaikan bug karena mereka sangat senang dengan fungsi aplikasi lainnya.
Ide seperti ini mungkin cocok dengan banyak orang. Tetapi ada baiknya kita lihat beberapa argumen yang kontra dan menentang ide "good enough (cukup baik)."
Memang benar bahwa "cukup baik" bisa berhasil di beberapa domain aplikasi dan untuk beberapa perusahaan software besar. Selain itu, jika sebuah perusahaan memiliki anggaran pemasaran yang besar dan bisa meyakinkan cukup banyak orang untuk membeli versi 1.0, itu akan berhasil mempengaruhi mereka. 
Memang para pendukung filosofi "good enough" bisa berargumen bahwa akan meningkatkan kualitas dalam versi berikutnya. Dengan menghadirkan versi 1.0 yang "cukup bagus", ini telah menyempitkan pasar. Jika kita bekerja untuk perusahaan kecil, waji berhati-hati dengan filosofi ini. Saat kita me-rilis produk (buggy) yang "cukup baik", kita berisiko merusak reputasi perusahaan kita secara permanen. Kita mungkin saja tidak pernah mendapatkan kesempatan untuk merilis versi 2.0 karena kegaduhan yang buruk dapat menyebabkan penjualan menurun dan perusahaan bisa bangkrut. 
Jika kita bekerja di domain aplikasi tertentu (misalnya, real-time embedded software) atau membuat software aplikasi yang terintegrasi dengan perangkat keras (misalnya, software otomotif, software telekomunikasi), dengan me-rilis software yang mengandung bug dapat dianggap sebagai kelalain dan membuka peluang perusahaan kita dituntut ke pengadilan dan berbiaya mahal . Dalam beberapa kasus, hal ini bahkan bisa merupakan tindak kriminal. Tidak ada satupun yang menginginkan software avionik pesawat yang berpredikat "good enough" (cukup baik)!
Jadi, memang wajib berhati-hati jika kita percaya bahwa filosofi "cukup baik" adalah jalan pintas yang dapat menyelesaikan masalah kualitas software kita. Filosofi ini memang bisa berhasil, tetapi hanya untuk beberapa kasus dan hanya dalam beberapa domain aplikasi tertentu.

--o0o--
Referensi: 
Software Engineering - A Practitioner's Approach - Roger S. Pressman / Bruce R. Maxim

No comments:

Post a Comment