Pengujian atau Testing merupakan bagian yang tidak terpisahkan di dalam proses development/pengembangan sebuah produk Software atau perangkat lunak. Development disini secara spesifik merujuk pada proses pengkodean semua logika bisnis ke dalam kode program. Sebagaimana ditekankan di dalam berbagai kesempatan dan tulisan, pengujian sebagai sebuah upaya dalam proses pengendalian kualitas produk adalah untuk memastikan bahwa software yang dihasilkan benar-benar sesuai dengan keinginan atau harapan dari konsumen, yang pada akhirnya layak dipasarkan atau digunakan dalam dunia bisnis yang sebenarnya, dalam kata-kata wikipedia:
“In engineering and manufacturing, quality control and quality engineering are involved in developing systems to ensure products or services are designed and produced to meet or exceed customer requirements.” http://en.wikipedia.org/wiki/Quality_control
Untuk mencapai tujuan di atas, maka tentu saja diperlukan pendekatan yang bersifat lintas-fungsional, dengan melibatkan bidang bisnis dan engineering lainnya. Poin dari pembicaraan ini ialah untuk memasukkan quality control ini di dalam masa pengembangan. Ini berarti, pengujian sebagai salah satu tugas quality control memerlukan sebuah pendekatan praktis bagaimana proses ini dilakukan. Dalam kaitan ini perlu diatur sebuah mekanisme agar seluruh tahap pengujian dilaksanakan sembari melihat watak sebuah proses produksi, dimana timeframe, dan budget menjadi faktor tradeoff yang tidak bisa ditawar. Sebuah praktek yang amat baik untuk dilakukan dalam masa pengembangan sebuah produk ialah manajemen pengujian/testing yang baik.
Berikut adalah sedikit dari beberapa best-practice dalam proses pengujian.
- Menyusun tim yang baik. Apakah menyusun tim yang baik itu:
- Memperhitungkan jumlah tim tester sesuai dengan jumlah produk atau fitur yang dites. Sebaiknya dihindari perbandingan jumlah tester dan produk yang terlalu mencolok. Beberapa produk dengan masa pengembangan yang berdekatan sangat tidak baik, apabila dilakukan hanya oleh satu orang tester, sebagai contoh, karena seorang tester di Departemen QA harus benar-benar fokus kepada setiap detail fitur sebuah produk. Karena ia akan menjadi pintu keluar utama sebuah software dirilis ke klien.
- Mengoptimalkan sistem rolling yang baik, apabila tim tester amat terbatas, sementara kondisi manajemen tidak memungkinkan adanya tambahan tenaga.
- Menyusun jadwal Pengujian dengan baik. Maksudnya:
- Prosedur Pengujian harus dimasukkan dalam jadwal proyek.
- Jadwal Pengujian harus sinkron dengan jadwal pengembangan.
Jadwal Pengujian yang sinkron dengan jadwal pengembangan berarti waktu pengujian tidak bisa diletakkan secara sembarangan tanpa memperhitungkan jadwal pelaksanaan dari pengembangan. Seringkali kita terlalu fokus dengan jadwal pengembangan, tetapi kurang memperhatikan alokasi waktu untuk pengujian ini.
Pada beberapa kasus sering dijumpai sebuah tim proyek tidak bisa atau tidak menentukan jadwal testing ini. Dan ketika tiba pada suatu waktu dimana pengujian harus dilakukan, Tim Pengujian menemukan masalah, melempar list of error ke tim Developer! Sayang mereka telah terikat dengan jadwal di proyek lainnya.
Who kills who! Sementara UAT, user acceptance test, di tempat klien telah di depan mata, maka mau tidak mau developer harus menginterupsi pekerjaannya dan kembali ke produk atau fitur dari produk yang saat itu harus dites oleh tester. Akibatnya, seandainya ditemukan error, dan diperlukan update, maka ia harus sesegera mungkin melakukan koding ulang, dan akibat lebih buruk jadwal yang ada menjadi tergeser. Efek domino dalam keseluruhan aktivitas operasional menjadi terpengaruh.
Pada skala lokal, Sebuah tim developer yang mempunyai tanggungjawab lebih dari satu produk software, akan sangat terpengaruh produktivitasnya dengan buruknya manajemen Pengujian di departemen Pengujian. Pada skala lebih luas, terhadap keseluruhan proses produksi akan terdapat dampak yang cukup besar, bahkan amat mungkin pada overhead cost, demikian asumsi kasar yang bisa digambarkan. Walaupun belum saya temukan riset mengenai korelasi dan dampaknya secara statistik.
widya, 20 feb 2008
No comments:
Post a Comment