Pendekatan Strategis untuk Pengujian Perangkat Lunak

Politeknik Telkom Rekayasa Perangkat Lunak 124 Pengujian Perangkat Lunak

7.3.2 Pengorganisasian Pengujian Perangkat Lunak

Proses pengujian sebuah perangkat lunak sebaiknya melibatkan pihak yang memang secara khusus bertanggung jawab untuk melakukan proses pengujian secara independen. Untuk itulah diperlukan Independent Test Group ITG. Peran dari ITG adalah untuk me nghilangkan “conflict of interest“ yang terjadi ketika pengembang perangkat lunak berusaha untuk menguji produknya sendiri. Walaupun seperti itu, sering terjadi beberapa kesalahan pemahaman berkaitan dengan peran ITG, antara lain: - Pengembang tidak boleh melakukan pengujian sama sekali. Pendapat ini tidak 100 benar, karena dalam banyak kasus, pengembang juga melakukan proses unit testing dan integration test - Perangkat lunak dilempar begitu saja untuk diuji secara sporadis. Hal tersebut adalah salah karena pengembang dan ITG bekerja sama pada keseluruhan proyek untuk memastikan pengujian akan dilakukan. Sementara pengujian dilakukan, pengembang harus memperbaiki kesalahan yang ditemukan - Penguji tidak terlibat pada proyek sampai tahap pengujian dimulai. Hal tersebut salah karena ITG merupakan bagian dari tim proyek pengembangan perangkat lunak di mana ia terlibat selama spesifikasi proses dan tetap terlibat pada keseluruhan proyek besar

7.4 Masalah Strategis Pengujian

Masalah-masalah berikut harus diselesaikan bila pengujian ingin berlangsung sukses: - Menspesifikasikan kebutuhan produk pada kelakuan yang terukur sebelum pengujian dimulai. Strategi pengujian yang baik tidak hanya untuk menemukan kesalahan, namun juga untuk menilai kualitas program - Menspesifikasikan tujuan pengujian secara eksplisit. Sasaran spesifik dari pengujian harus dinyatakan dalam bentuk yang terukur - Mengidentifikasikan kategori user untuk perangkat lunak dan membuat profilnya masing-masing. Beberapa kasus yang menggambarkan skenario interaksi bagi masing-masing kategori dapat mengurangi kerja pengujian dengan memfokuskan pengujian pada penggunaan aktual produk - Membangun rencana pengujian yang menegaskan rapid cycle testing. Umpan balik yang muncul dari rapid cycle testing dapat digunakan untuk mengontrol kualitas dan strategi pengujian yang sesuai Politeknik Telkom Rekayasa Perangkat Lunak Pengujian Perangkat Lunak 125 - Membangun perangkat lunak yang tangguh yang dirancang untuk menguji dirinya sendiri. Perangkat lunak dirancang dengan teknik antibugging, di mana perangkat lunak dapat mendiagnosis jenis-jenis kesalahan tertentu dan mengakomodasi pengujian otomatis dan pengujian regresi - Menggunakan tinjauan formal yang efektif sebagai filter sebelum pengujian. kajian teknis formal dapat mengungkap kesalahan seefektif pengujian sehingga dapat mengurangi jumlah kerja pengujian - Mengadakan tinjauan formal teknis untuk menilai strategi dan kasus uji. Kajian teknis formal dapat mengungkap inkonsistensi, penghapusan, dan kesalahan seketika dalam pendekatan pengujian - Membangun pendekatan yang meningkat secara berkelanjutan untuk proses pengujian. Strategi pengujian harus terukur. Metrik yang terkumpul selama pengujian harus digunakan sebagai bagian dari pendekatan kontrol proses statistikal bagi pengujian perangkat lunak

7.5 Strategi Pengujian Perangkat Lunak

Proses pengujian perangkat lunak dapat digambarkan sebagai berikut: Gambar 7.5 Strategi Pengujian Perangkat Lunak Spiral di atas menggambarkan bagaimana rekayasa sistem membangun sebuah perangkat lunak dimulai dari penentuan kebutuhan perangkat lunak, kemudian spiral bergerak ke dalam proses dilanjutkan ke dalam bentuk rancangan, dan akhirnya ke pengkodean di pusat spiral. Strategi pengujian serupa dengan hal tersebut, namun bergerak dimulai dari pusat menuju keluar spiral. Dimulai dengan unit testing di pusat spiral di mana masing-masing modulunit dari perangkat lunak yang diimplementasikan dalam source code menjadi sasaran pengujian. Kemudian bergerak keluar spiral, dilakukan integration testing dengan fokus pengujian adalah desain dan konstruksi arsitektur perangkat