Definisi Pengujian, Kualitas dan Hubungannya
Pengujian software adalah proses verifikasi untuk penilaian dan perbaikan kualitas perangkat lunak (Naik & Tripathy, 2008, p.7). Secara umum, testing merupakan aktifitas yang melakukan pengumpulan dari informasi-informasi yang dibutuhkan untuk melakukan evaluasi, penilaian atau mengukur kemampuan efektifitas kerja.
Aktivitas pengujian/penilaian software ada dua, yaitu:
- Analisa statik, didasarkan sejumlah dokumen, misalnya kebutuhan, model, desain, dan source code.
- Analisa dinamis, didasarkan pada perilaku dan kinerja software, dengan cara mengeksekusinya.
Berdasarkan International Organization for Standardization (ISO 9000), kualitas adalah sejauh mana seperangkat karakteristik yang melekat memenuhi persyaratan (Chemuturi, 2011, p.2). Untuk menyatakan kualitas biasanya menggunakan kata sifat, seperti buruk (poor), baik (good), atau sangat baik (excellent).
Kualitas software adalah sejauh mana karakteristik dan kinerja software dapat memenuhi kebutuhan yang telah ditetapkan. Jaminan kualitas software adalah kegiatan yang sistematis untuk memberikan bukti kesesuaian untuk penggunaan produk software secara keseluruhan (Lewis, 2009, p.16)
Proses/kegiatan yang efektif untuk memberikan jaminan kualitas software antara lain:
- Memberikan banyak perhatian pada kebutuhan pelanggan
- Membuat upaya untuk terus meningkatkan kualitas
- Mengintegrasikan proses pengukuran dengan desain dan pengembangan produk
- Mendorong konsep kualitas turun ke tingkat terendah dari organisasi
- Mengembangkan sudut pandang level sistem dengan penekanan pada metodologi dan proses
- Menghilangkan limbah (waste) melalui perbaikan terus-menerus
Kualitas software diukur dari jumlah cacat yang ditemukan pada produk yang dihasilkan (Turhan & Bener, 2007, p. 244), sehingga software berkulitas tinggi adalah software yang tidak ditemukan cacat (McDonald, Musson, & Smith, 2008, p. 6) dan dapat memenuhi kebutuhan pengguna.
Melalui pengujian, Anda bisa mengetahui ada tidaknya cacat, sehingga Anda bisa memberikan kualitas secara obyektif. Memberikan tingkat kualitas tertentu, tetapi memberikan keyakinan / jaminan kualitas.
Melalui pengujian tersebut dapat dibuktikan bahwa kondisi pengembangan perangkat lunak dalam keadaan terkontrol. Jika ditemukan kesalahan / cacat, perbaiki dan ulangi pengujian sampai tidak ada kesalahan / cacat yang ditemukan.
Kualitas dan pengujian produk adalah aktifitas yang berjalan searah. Semakin detail pengujian, maka kualitas software yang dihasilkan akan semakintinggi. Tim penguji dapat direferensikan sebagai tim kualitas