Anda di halaman 1dari 10

Urgensi Pengujian Pada Kemajemukan Perangkat Lunak 65

URGENSI PENGUJIAN PADA KEMAJEMUKAN PERANGKAT


LUNAK DALAM MULTI PERSPEKTIF
Hernawan Sulistyanto1, Azhari SN2
1
Program Studi Teknik Infomatika, Fak. Komunikasi dan Informatika,
Universitas Muhammadiyah Surakarta
Jl. A. Yani Tromol Pos 1 Pabelan, Surakarta
2
Program Studi Ilmu Komputer, FMIPA, Universitas Gadjah Mada, Yogyakarta
Sekip Utara, Bulaksumur, Yogyakarta
E-mail: Hernawan.Sulistyanto@ums.ac.id, arisn@ugm.ac.id

ABSTRAK
Pengujian perangkat lunak merupakan suatu investigasi yang dilakukan untuk mendapatkan
informasi mengenai kualitas dari produk atau layanan yang sedang diuji (under test). Pengujian
perangkat lunak akan memberikan pandangan mengenai perangkat lunak secara obyektif dan
independen yang bermanfaat dalam operasional bisnis untuk memahami tingkat risiko pada
implementasinya sebelum disampai kepada pelanggan. Tiga konsep yang perlu diperhatikan
dalam pengujian perangkat lunak adalah demonstrasi validitas perangkat lunak pada setiap
tahapan pembangunan sistem, penentuan validitas sistem akhir terhadap pemakai kebutuhan,
dan pemeriksaan implementasi sistem dengan menjalankan sistem pada suatu contoh data uji.
Implementasi pengujian pada perangkat lunak dapat dilaksanakan sesuai dengan kebutuhan dan
model sistem. Keragaman dan kemajemukan perangkat lunak mengisyaratkan pentingnya untuk
melaksanakan banyak improvisasi saat pengujian dikerjakan, seperti penentuan kasus uji yang tepat,
pemilihan model dan metode pengujian yang sesuai, penentuan lingkungan uji yang cocok, serta
mempertimbangkan beberapa aspek lain yang bertujuan mengoptimalkan hasil uji yang diperoleh
dalam kerangka menjamin kualitas sebuah produk perangkat lunak.

Kata Kunci : pengujian, perangkat lunak, kualitas produk

A. PENDAHULUAN menghindari kesalahan, kita kadang-kadang


Meningkatnya visibilitas perangkat lunak lupa menggunakan pemrograman terstruktur
sebagai suatu elemen sistem dan “biaya” yang secara penuh, kita kadang buruk dalam
muncul akibat kegagalan perangkat lunak mengerjakan sesuatu, serta kita seharusnya
telah memotivasi dilakukannya perencanaan dapat membedakan apa yang dikatakan
yang baik melalui pengujian yang teliti. Hal ini programmer lain atau pelanggan dan apa yang
menjadikan pengujian perangkat lunak sebagai sebenarnya mereka pikirkan.
suatu tahapan penting dalam pembangunan Pengujian dapat dilakukan dengan cara
perangkat lunak. mengevaluasi kofigurasi perangkat lunak yang
Beberapa alasan perlunya melakukan terdiri dari spesifikasi kebutuhan, deskripsi
pengujian yaitu karena kita bukan seorang perancangan dan program yang dihasilkan.
programmer yang cukup baik, kita mungkin Hasil evaluasi kemudian dibandingkn dengan
tidak dapat cukup berkonsentrasi untuk hasil uji yang diharapkan. Jika ditemukan
66 KomuniTi, Vol. VI, No. 1 Maret 2014

kesalahan maka perbaikan perangkat lunak pengujian bermaksud untuk mencari


harus dilakukan untuk kemudian diuji kembali. sebanyak mungkin kesalahan yang ada pada
Sehingga pada dasarnya aktivitas pengujian program serta mengevaluasi kualitasnya.
dapat dianggap sebagai hal yang merusak Tujuan pengujian perangkat lunak menurut
daripada membangun. Xie dkk.(2011) adalah menilai apakah
perangkat lunak yang dikembangkan
Bagaimanapun, pentingnya pengujian
telah memenuhi kebutuhan pemakai,
perangkat lunak dan implikasinya yang mengacu
menilai apakah tahap pengembangan
pada kualitas perangkat lunak tidaklah dapat
perangkat lunak telah sesuai  dengan
terlalu ditekan karena melibatkan sederetan
metodologi yang digunakan, dan membuat
aktivitas produksi di mana peluang terjadinya
dokumentasi hasil pengujian yang
kesalahan manusia sangat besar. Maka sudah
menginformasikan kesesuaian perangkat
seyogyanya pengembangan perangkat lunak
lunak yang diuji dengan spesifikasi  yang
diiringi dengan aktivitas penjaminan kualitas.
telah ditentukan. Data yang dikumpulkan
pada saat pengujian dilakukan akan
B. Konsep Pengujian Perangkat
memberikan indikasi yang baik mengenai
Lunak
reliabilitas dan kualitas perangkat lunak
1. Pengertian Pengujian Perangkat secara keseluruhan.
Lunak
2. Objektivitas Pengujian
Pengujian perangkat lunak adalah
Menurut Pressman (2010), pengujian
proses menjalankan dan mengevaluasi
perangkat lunak mempunyai beberapa
sebuah perangkat lunak secara manual
sasaran penting, yaitu (1) pengujian
maupun otomatis untuk menguji apakah
dilaksanakan dengan maksud menemukan
perangkat lunak sudah memenuhi
kesalahan; (2) kesuksesan pengujian
persyaratan atau belum (Clune dan Rood,
adalah kemampuan dalam menemukan
2011) dan (Nakagawa dan Maldonado,
kesalahan yang belum pernah ditemukan
2011). Singkat kata, pengujian adalah
sebelumnya; dan (3) kasusu uji yang
aktivitas untuk menemukan dan menentu­
baik adalah sebuah kasusu ujie yang
kan perbedaan antara hasil yang diharapkan
mempunyai probabilitas tinggi untuk
dengan hasil sebenarnya.
menemukan kesalahan yang belum pernah
Sebuah pengujian perangkat lunak ditemukan sebelumnya.
dapat dilakukan setelah perekayasa mem­
Objektivitas dalam pengujian dapat
bangun implementasi dari suatu konsep
dicapai apabila ada beberapa actor yang
abstrak perangkat lunak. Pengujian
terlibat selama pengujian, diantaranya
perangkat lunak pada dasarnya adalah ber­
menurut Lamas dkk.(2013), yaitu customer
maksud “membongkar” perangkat lunak
(tim yang mengontrak pengembang
yang telah terbangun.
untuk mengembangkan perangkat
Sesuai dengan Jin dan Xue (2011) dan lunak), pengguna (kelompok yang
Kumamoto dkk. (2010) menyatakan bahwa akan menggunakan perangkat lunak),
Urgensi Pengujian Pada Kemajemukan Perangkat Lunak 67

pengembang perangkat lunak (tim yang kebutuhan untuk menjamin bahwa


membangun perangkat lunak), dan tim kebutuhan telah dispesifikasi dengan
pengujian perangkat lunak (tim khusus benar. Tujuan pengujian pada tahap ini
yang bertugas untuk menguji fungsi-fungsi adalah untuk mendapatkan kebutuhn
pada perangkat lunak). yang layak dan untuk memastikan apakah
kebutuhan tersebut sudah dirumuskan
Disamping itu, juga harus selalu
dengan baik. Faktor-faktor pengujian
ber­­
prinsip bahwa pengujian dapat
yang dilakukan pada tahap analisis
dilacak hingga ke persyaratan pelanggan,
yaitu kebutuhan yang berkaitan dengan
pengujian harus direncanakan sebelum
metodologi, pen­
defenisian spesifikasi
pelaksanaan pengujian, pengujian harus
fungsi­
onal, penentuan spesifikasi
dimulai dari hasil yang kecil kemudian
kegunaan, penentuan kebutuhan porta­
diteruskan ke hal-hal yang besar, pengujian
bilitas, dan pen­­
defenisian antar muka
yang berlebihan tidak akan mungkin
sistem.
dilaksanakan, dan pengujian sebaiknya
dilakukan oleh pihak ketiga (Jiang dan Lu, Pengujian tahap perancangan ber­
2012)(Lemos dkk., 2011). tujuan untuk menguji struktur perangkat
lunak yang diturunkan dari kebutuhan.
3. Tahapan Pengujian Kebutuhan yang bersifat umum dirinci
Pelaksanaan pengujian sebuah menjadi bentuk yang lebih spesifik.
perangkat lunak biasanya disesuaikan Faktor-faktor pengujian yang dilakukan
dengan metodologi pembangunan pada tahap perancangan yaitu perancangan
perangkat lunak yang digunakan. yang berkaitan dgn kebutuhan, kesesuaian
Reza (2010) dan Sommerville (2011) perancangan dengan metodologi dan
menyampai­
kan bahwa pada umumnya teori, portabilitas rancangan, perancangan
pengujian dilaksanakan setelah tahap perawatan, kebenaran rancangan berkaitan
pemograman, namun perencanaan dengan fungsi dan aliran data, dan
pengujian sudah dilakukan mulai tahap kelengkapan perancangan antar muka.
analisis. Secara keseluruhan, tahapan
Pengujian pada tahap implementasi
dalam pengujian meliputi penentuan apa
merupakan pengujian unit-unit yang
yang akan diukur, bagaimana pengujian
dibuat sebelum diintegrasi menjadi aplikasi
akan dilaksanakan, membangun suatu
keseluruhan. Faktor-faktor pengujian yang
kasus uji (test case) yaitu sekumpulan
dilakukan pada tahap ini yaitu kendali
data atau situasi yang akan digunakan
integritas data, kebenaran program,
dalam pengujian, kemudian menetapkan
kemudahan pemakaian, sifat coupling, dan
hasil yang akan diharapkn atau hasil yang
pengembangan prosedur operasi.
sebenarnya, menjalankan kasus pengujian
dan membandingkan hasil pengujian Pengujian tahap pengujian bertujuan

dengan hasil yang diharapkan untuk menilai apakah spesifikasi program


telah ditulis menjadi instruksi-instruksi
Pada pengujian tahap analisis
yang dapat dijalankan pada mesin dan
menekan­
kan pada validasi terhadap
untuk menilai apakah instruksi yang
68 KomuniTi, Vol. VI, No. 1 Maret 2014

ditulis tersebut telah sesuai dengan dilakukan untuk menilai masing-masing


spesifikasi program. Faktor-faktor fungsi apakah telah berjalan sebagaimana
pengujian yang dilakukan pada tahap ini yang diharapkan. Kedua, pengetahuan
meliputi pengujian fungsional, dukungan tentang cara kerja dari produk, tes dapat
manual, dan kemudahan operasi. dilakukan untuk memperlihatkan cara
kerja dari produk secara rinci sesuai
4. Teknik Pengujian dengan spesifikasinya. Ada dua macam
Pada tahapan pengujian diperlukan pendekatan kasus uji yaitu white-box dan
suatu kasusu uji. Kasus uji didesain black-box. Pendekatan white-box adalah
dengan sasaran utama untuk men ­
pengujian untuk memperlihatkan cara
dapatkan serangkaian pengujian yang kerja dari produk secara rinci sesuai dengan
memiliki kemungkinan tertinggi di spesifikasinya (Jiang, 2012)(Pressman,
dalam mengungkap kesalahan pada 2010). Jalur logika perangkat lunak akan
perangkat lunak sebagaimana dinyatakan dites dengan menyediakan kasus uji yang
oleh Pressman (2010) dan Sommerville akan mengerjakan kumpulan kondisi dan
(2011). Pengujian dengan kasusu pengulangan secara spesifik. Sehingga
uji meliputi pengujian unit (berupa melalui penggunaan metode ini akan dapat
prosedur atau fungsi) dan pengujian memperoleh kasus uji yang menjamin
sistem. Dalam pengujian unit, unit- bahwa semua jalur independen pada suatu
unit yang diuji meliputi unit-unit yang model telah diigunakan minimal satu kali,
ada dalam sistem,sedangkan pengujian penggunaan keputusan logis pada sisi
sistem dilakukan terhadap sistem secara benar dan salah, pengeksekusian semua
keseluruhan. Setiap pengujian dilakukan loop dalam batasan dan batas operasional
dengan menggunakan berbagai data perekayasa, serta penggunaan struktur
masukan yang valid maupun tidak. data internal guna menjamin validitasnya.

Mengacu pada Wen-hong dan Xin Secara sekilas dapat diambil kesimpulan

(2010), produk hasil rekayasa dapat diuji pendekatan pengujian white-box mengarah

dengan cara: (1) mengetahui fungsi yang untuk mendapatkan program yang benar

ditentukan dimana produk dirancang secara 100%.

untuk melakukannya. Pengujian dilakukan Pendekatan black-box merupakan


untuk memastikan bahwa masing-masing pendekatan pengujian untuk mengetahui
fungsi beroperasi dengan sepenuhnya apakah semua fungsi perangkat lunak
dan mencari kesalahan pada tiap fungsi; telah berjalan semestinya sesuai dengan
(2) mengetahui kerja internal untuk kebutuhan fungsional yang telah
memastikan bahwa komponen internal didefinisikan (Jiang, 2012)(Pressman,
bekerja sesuai dengan spesifikasi. 2010). Kasus uji ini bertujuan untuk
Sehingga dalam hal ini terdapat dua jenis menunjukkan fungsi perangkat lunak
kasus uji, yaitu pertaman pengetahuan tentang cara beroperasinya. Teknik
fungsi yang spesifik dari produk yang telah pengujian ini berfokus pada domain
dirancang untuk diperlihatkan, test dapat informasi dari perangkat lunak, yaitu
Urgensi Pengujian Pada Kemajemukan Perangkat Lunak 69

melakukan kasus uji dengan mempartisi yang menjamin penerapan perangkat lunak
domain input dan output program. Metode benar-benar sesuai dengan fungsinya.
black-box memungkinkan perekayasa Sementara validasi merupakan kumpulan
perangkat lunak mendapatkan serangkaian aktivitas yang berbeda yang memastikan
kondisi input yang sepenuhnya meng­ bahwa perangkat lunak yang dibangun
gunakan semua persyaratan fungsi­
onal dapat memenuhi keperluan pelanggan.
untuk suatu program. Pengujian ini Atau dengan kata lain verifikasi adalah
berusaha menemukan kesalahan dalam “Apakah kita membuat produk dengan benar?”
kategori fungsi-fungsi yang tidak benar dan validasi adalah “ Apakah kita membuat
atau hilang, kesalahan interface, kesalahan benar-benar suatu produk?”.
dalam struktur data atau akses basis
data eksternal, kesalahan kinerja, dan
C. IMPLEMENTASI PENGUJIAN
inisialisasi dan kesalahan terminasi.
1. Pengujian Validasi Perangkat Lunak
5. Strategi Pengujian
Pengujian validasi dilaksanakan
Strategi pengujian perangkat setelah semua kesalahan diperbaiki.
lunak memudahkan para perancang Indikator keberhasilan pengujian
untuk menentukan keberhasilan sistem validasi adalah jika fungsi yang ada pada
rancangan. Beberapa hal yang perlu perangkat lunak sesuai dengan yang
mendapat perhatian adalah langkah- diharapkan pemakai. Apabila perangkat
langkah perencanaan dan pelaksanaan lunak dibuat untuk pelanggan maka
harus direncanakan dengan baik dan dapat dilakukan semacam aceeptance test
memperhitungkan berapa lama waktu, sehingga memungkinkan pelanggan untuk
upaya dan sumber daya yang diperlukan. memvalidasi seluruh keperluan. Uji ini
Karakteristik strategi pengujian meliputi dilakukan agar memungkinkan pelanggan
pengujian diawali pada tingkat modul menemukan kesalahan yang lebih rinci
yang paling bawah, dilanjutkan dengan dan membiasakan pelanggan memahami
modul di atasnya kemudian hasilnya perangkat lunak yang telah dibuat. Bentuk
dipadukan, teknik pengujian yang pengujian yang bisa dilaksanakan yaitu
berbeda mungkin menghasilkan sedikit pengujian alpha dan beta. Pengujian alpha
perbedaan (dalam hal waktu). Pengujian dilakukan pada sisi pengembang oleh
dan debugging merupakan aktivitas yang seorang pelanggan (Pressman, 2010).
berbeda, tetapi debugging termasuk dalam Perangkat lunak digunakan pada setting
strategi pengujian. Debugging prinsipnya yang natural dengan pengembang “yang
memperbaiki error yang ditemukan pada memandang” melalui bahu pemakai dan
saat pengujian (yang sukses). merekam semua kesalahan dan masalah
Pengujian perangkat lunak adalah satu pemakaian. Sedangkan pengujan beta
elemen dari topic yang lebih luas yang sering dilakukan pada satu atau lebih pelanggan
disebut sebagai verifikasi dan validasi. oleh pemakai akhir perangkat lunak
Verifikasi merupakan kumpulan aktivitas dalam lingkungan yang sebenarnya.
70 KomuniTi, Vol. VI, No. 1 Maret 2014

Pengembang biasanya tidak ada pada semua isi data yang diisikan pada window
pengujian ini. Pelanggan merekan semua dapat dituju dengan tepat dengan sebuah
masalah (real atau imajiner) yang ditemui mouse, function keys, anak panah penunjuk
selama pengujian dan melaporkan pada dan keyboard, apakah window dengan
pengembang pada interval waktu tertentu cepat muncul kembali apabila dia ditindih
(Pressman, 2010). dan kemudian dipanggil lag, apakah
semua fungsi yang berhubungan dengan
2. Pengujian Sistem window dapat diperoleh bila diperlukan,
Pada akhirnya produk perangkat apakah semua fungsi yang berhubungan
lunak digabungkan dengan elemen window operasional, apakah semua
system lainnya dan kemudian rentetan menu pull-down, scroll bar, tool bar kotak
tes validasi dilakukan. Jika uji coba dialog, tombol, ikon, dapat diperoleh dan
gagal atau di luar skope dari daur dengan tepat ditampilkan untuk window
siklus pengembangan system, langkah tersebut, pada saat window bertingkat
yg diambil selama perancangan dan ditampilkan apakah nama window tersebut
pengujian dapat diperbaiki. Pengujian direpresentasikan secara tepat.
sistem merupakan rentetan pengujian
Pengujian perangkat lunak yang meng­
yang berbeda-beda dengan tujuan utama
gunakan aplikasi client-server umum­nya
mengerja­kan keseluruhan elemen system
dilaksanakan pada tiga tingkat berbeda,
yang dikembangkan. Beberapa jenis
menurut Pressman (2010) yaitu: (1)
pengujian system sesuai Pressman (2010)
aplikasi client secara individual diuji dalam
diantaranya recovery testing, security testing,
kondisi tak terhubung (disconnected), artinya
dan stress testing.
tidak memperhatikan pengoperasian

3. Pengujian untuk Aplikasi dan server dan jaringan yang membawahinya;

Lingkungan Khusus (2) perangkat lunak client dan aplikasi


server terkaitnya diuji bersama-sama,
Perangkat lunak selalu diimplemen­
tetapi pengoperasian jaringannya tidak
tasi­kan dalam suatu aplikasi dan lingku­
dijalankan sepenuhnya; (3) arsitektur
ngan yang berbeda. Karenanya terdapat
client-server seutuhnya termasuk operasi
pengujian tersendiri bagi masing-masing
jaringan dan penampilannya diuji.
system tersebut (Wu, 2010). Pengujian
Pengujian aplikasi client-server yang umum
yang dapat dikerjakan dapat diklasifikasikan
dijumpai yaitu pertama tes fungsi aplikasi.
kedalam bentuk pengujian GUI, pengujian
Fungsi aplikasi client diuji dalam model
system client-server, dan pengujian system
standard untuk menemukan kesalahan
waktu nyata. Pengujian GUI sesuai
pengoperasiannya. Kedua, tes server.
Pressman (2010) untuk windows terdiri
Pengujian dilakukan pada koordinasi
atas beberapa langkah standard yaitu
dan fungsi manajemen datadi server
menguji apakah window akan membuka
termasuk kinerja server (respon time dan
secara tepat berdasarkan tipe yang sesuai
throughput keseluruhan). Ketiga tes basis
atau perintah berbasis menu, dapatkah
data. Pengujian dilakukan pada keakuratan
window diresize atau digulung, apakah
Urgensi Pengujian Pada Kemajemukan Perangkat Lunak 71

atau ketepatan dan integritas data yang tingkat data yang berbeda dan menentukan
tersimpan dalam server. Transaksi yang apakah terjadi kesalahan sinkronisasi antar
dilakukan pada aplikasi client diperiksa tugas. Terakhir adalah pengujian sistem.
guna memastikan bahwa data sudah Pengujian dilakukan terhadap keselururhan
tersimpan dengan benar. Pemanggilan sistem baik perangkat keras maupun
kembali data dan pengarsipan juga diuji. perangkat lunak. Pengujian dimaksudkan
Keempat, pengujian transaksi. Pengujian untuk menemukan kesalahan pada interface
ini dilaksanakan dengan membuat perangkat lunak atau perangkat keras.
serangkaian tes guna memastikan bahwa
masing-masing kelas transaksi diproses D. BAGAIMANAKAH
menurut requirementnya. Kelima, pengujian MELAKSANAKAN PENGUJIAN
komunikasi jaringan. Pengujian ini untuk YANG BAIK?
mengetes keberlangsu­
ngan komunikasi Beberapa atribut yang digunakan agar
antar-node jaringan ber­
langsung pengujian dikatakan baik menurut Pressman
dengan benar serta mengetahui apakah (2010) maupun Sommerville (2011) yaitu
pengiriman pesan, transaksi berlangsung pengujian memiliki probabilitas yang tinggi
tanpa kesalahan. Tes keamanan jaringan untuk menemukan kesalahan. Agar hal
dapat termasuk dalam pengujian ini. tersebut dapat terlaksana maka penguji
Strategi pengujian bagi sistem waktu harus mempunyai pemahaman bagaimana
nyata (real-time) menurut Pressman (2010) perangkat lunak dapat gagal. Disamping
dan Zhang (2011) meliputi yang pertama itu, pengujian tidak redundant. Pada setiap
adalah pengujian tugas. Maksud langkah pengujian yang dilakukan harus mempunyai
ini adalah untuk menguji masing-masing tujuan yang berbeda. Selanjutnya pengujian
tugas secara independen, yaitu pengujian yang dikerjakan adalah jenis pengujian yang
white-box dan black-box yang didesain dan terbaik. Pengujian memungkinkan dilakukan
dieksekusi bagi masing-masing tugas. dengan banyak cara. Pengujian yang harus
Masing-masing tugas dieksekusi secara digunakan adalah pengujian yang memiliki
independen dan berusaha mengungkap kemungkinan paling besar untuk mengungkap
kesalahan di dalam logika dan fungsi. semua kelas kesalahan yang tinggi (dalam
Selanjutnya adalah pengujian tingkah waktu dan usaha yang seminimal mungkin).
laku. Pengujian dimaksudkan untuk men­ Kemudian pengujian tidak terlalu sederhana
simulasi tingkah laku sistem real-time atau komplek.
dann meguji tingkah lakunya sebagai Ada beberapa aspek lagi dalam perspektif
konsekuensi dari event eksternal. Perilaku lain yang dapat dijadikan indikator bagi
diuji untuk mendeteksi kesalahan perilaku. pelaksanaan sebuah pengujian yang baik dan
Berikutnya adalah pengujian antar tugas. optimal.
Pengujian dilaksanakan setelah kesalahan
Sebagaimana disampaikan di paparan awal
pada tugas individual dan pada perilaku
bahwa inti adanya pengujian adalah untuk
sistem diisolasi. Tugas-tugas asinkronous
menemukan kecacatan perangkat lunak dan
yang saling berkomunikasi diuji dengan
mengevaluasi kualitasnya (Pressman, 2010)
72 KomuniTi, Vol. VI, No. 1 Maret 2014

(Sommerville, 2011)(Wu, 2010). Terkait pemilihan metode diantaranya segi waktu,


dengan kualitas tentunya tidak mudah untuk tenaga yang tersedia, serta sumber daya dan
memberikan justifikasi mengenai baik tidaknya peralatan yang dimiliki.
kualitas sebuah produk perangkat lunak.
Aspek ketiga adalah variatif dalam
Tingkat kualitas dari produk perangkat lunak
pelaksanaan pengujian. Pengkolaborasian
sebenarnya tidak lepas dari bagaimana kualitas
beberapa teknik pengujian sudah barang
pengujiannya dikerjakan. Oleh karena kualitas
tentu akan meningkatkan reliabilitas dari
adalah bukan sebuah konsep spesifik tetapi
perangkat lunak yang diuji oleh karena
suatu ukuran yang abstrak maka pemakai
telah melewati lebih dari sekali kasus uji.
hanya dapat mengetahui dan menilai bahwa
Kehandalan perangkat lunak bisa juga dicapai
kualitas hakekatnya berkaitan dengan tingkat
dengan pengujian perangkat lunak yang
layanan atau produk dan levelnya ditentukan
mengimplementasikan suatu metode yang
dari tingkat kepuasan pelanggannya. Menilik
telah terbukti baik kinerjanya, seperti metode
dari hal ini maka perlu kiranya menetapkan
Bayesian (Cheng dkk., 2010) atau transformasi
standar ukuran kualitas. Beberapa acuan yang
matrik (Yang dkk., 2011).
kemungkinan dapat digunakan untuk mengukur
Aspek keempat yaitu mendasarkan
level kualitas pengujian perangkat lunak yaitu
pengujian pada arsitektur perangkat lunak.
berupa kualitas dari kasus uji pengujiannya itu
Desain arsitektur memberikan gambaran
sendiri dimana pengujian perangkat lunak dapat
bentuk tubuh dari perangkat lunak yang
mempunyai kecacatan juga dan kekurangan
berisi komponen dan hubungannya [5].
itu bisa berpengaruh buruk pada kemampuan
Pemahaman yang baik pada arsitektur sebuah
pengujian dalam menemukan “bugs”. Acuan
perangkat lunak akan sangat membantu dalam
berikutnya adalah kualitas proses pengujian
menentukan kasus uji dan tahapan pengujian
yang mana stabilitasnya bergantung pada
yang tepat. Pengujian berdasarkan arsitektur
lingkungan pengujian. Selanjutnya adalah
juga akan membantu pendeteksian dan
kualitas hasil uji yang mana dapat dilihat dari
pencegahan kecacatan secara lebih mendalam.
laporan pengujian, serta kualitas dari klien
uji yaitu pembaca laporan. Mereka secara Aspek kelima ialah tidak harus setiap
langsung dapat merasakan efek dari pengujian pengujian perangkat lunak selalu menciptakan
sehingga penilaian kualitas dapat segera kasus uji baru dan khsusus. Terdapat
dipertimbangkan. kemungkinan pelaksanaan pengujian sebuah
perangkat lunak cukup digandengkan
Aspek kedua adalah ketepatan dalam
(diinangkan) dengan perangkat lunak yang
memilih metode dan model pengujian. Tidak
lain. Hal ini mungkinsaja tarjadi karena bisa
selamanya sebuah metode atau model yang
saja perangkat lunak penggandeng sebenarnya
menghasilkan sebuah pengujian yang baik pada
telah membangkitkan secara otomatis suatu
sebuah perangkat lunak akan cocok pula untuk
aksi-aksi tertentu yang sebenarnya hal itu
perangkat lunak yang lain. Pemilihan metode
dapat berperilaku sebagai kasus uji bagi
pengujian yang tepat tentunya akan turut
perangkat yang sedang diuji. Apabila ini
berperan pada hasil pengujian yang optimal.
dapat dilaksanakan tentunya akan setidaknya
Pertimbangan yang dapat digunakan dalam
Urgensi Pengujian Pada Kemajemukan Perangkat Lunak 73

mereduksi biaya dalam mendesain kasus uji lain yang ikut berkontribusi dalam pengujian
baru. perangkat lunak sehingga memperoleh hasil
uji yang optimal diantaranya justifikasi segi
E. KESIMPULAN kualitas dari banyak sudut pandang, ketepatan

Target utama dari pengujian perangkat lunak menentukan metode dan model bentuk

adalah menjamin kualitas produk dari perangkat pengujian, variatif dalam mengkolaborasi

lunak yang dihasilkan. Banyak parameter yang teknik pengujian, menghiraukan bentuk

mempengaruhi untuk meng­


hasilkan sebuah arsitektur perangkat lunak, dan kemungkinan

produk perangkat lunak yang berkualitas, di penggabungan (penginangan) pengujian pada

antaranya terkait dengan bagaimana lingkungan perangkat lunak lain.

saat pengujian, pemilihan kasus uji dan metode,


serta pendekatan yang digunakan. Aspek

DAFTAR PUSTAKA

Cheng-Gang, B., J. Chang-Hai, and C. Kai-Yuan, 2010, A reliability improvement predictive approach
to software testing with Bayesian method, in IEEE Proceeding of the 29th Chinese Control
Conference, July 29-31, Beijing, China, pp. 6031-6036.
Cisar, S.M., et.al., 2012, Computer adaptive tests: a comparative study, IEEE Proceeding of 10th
Jubilee International Symposium on Intelligent System and Informatics, September 20-22,
Subotica, Serbia, pp. 499-504.
Clune, T.L., and R.B. Rood, 2011, Software testing and verification in climate model development,
IEEE Journal, Focus: climate change software, September-October, pp. 49-55.
Jiang, F. and Y. Lu, 2012, Software testing model selection research based on yin-yang testing
theory, in IEEE Proceeding of International Conference on Computer Science and Information
Processing (CISP), pp. 590-594
Jin, J., and F. Xue, 2011, Rethinking software testing based on software architecture, in IEEE
Proceeding of 7th International Conference on Semantics, Knowledge and Grids, pp. 148-151.
DOI 10.1109/SKG.2011.32
Jin, H. and F. Zeng, 2011, Research on the definition and model of software testing quality, IEEE
Journal, pp. 639-644
Kumamoto, H., et.al., 2010, Destructive testing of software systems by model checking, IEEE
Journal, pp. 261-266.
Lamas, E., A.V. Dias, and A.M. da Cunha, 2013, Applying testing to enhance software product
quality, in IEEE Proceeding of 10th International Conference on Information Technology: New
generation, pp. 349-356. DOI 10.1109/ITNG.2013.56
Lemos, O.A.L., et. al., 2011, “Evaluation studies of software testing research in the Brazilian
symposium on software engineering”, in IEEE Proceeding of 25th Brazilian Symposium on
74 KomuniTi, Vol. VI, No. 1 Maret 2014

Software Engineering, pp. 56-65. DOI 10.1109/SBES.2011.30


Nakagawa, E.Y., and J.S. Maldonado, 2011, Contributions and perspectives in architectures of
software testing environments, in IEEE Proceeding of 25th Brazilian Symposium on Software
Engineering, pp. 66-71. DOI 10.1109/SBES.2011.42
Pressman, R.S., 2010, Software Engineering: a practitioner’s approach, 7th Edition, McGraw-Hill,
New York.
Reza, H., and S. Lande, 2010, Model based testing using software architecture, in IEEE Proceeding
of 7th International Conference on Information Technology, pp. 188-192. DOI 10.1109/
ITNG.2010.122
Sommerville, I., 2011, Software engineering, 9th Edition, Pearson Education, USA.
Wen-hong, L. and W. Xin, 2012, The software quality evaluation method based on software testing,
in IEEE Proceeding of International Conference on Computer Science and Service System, pp.
1467-1471. DOI 10.1109/CSSS.2012.369
Wu, Y., Y. Zhang, and M. Lu, 2010, Software reliability accelerated testing method based on mixed
testing, IEEE Journal.
Wu, X., and J. Sun, 2010, The study on an intelligent general-purpose automated software testing
suite, IEEE Proceeding of International Conference on Intelligent Computation Technology and
Automation, pp. 993-996. DOI 10.1109/ICICTA.2010.115
Xie, T., et.al., 2011, A study on methods of software testing based on the design models, in
Proceeding of 6th International Conference on Computer Science and Education (ICCSE 2011),
August 3-5, Singapore, pp. 111-113.
Yang, Y., L. Lun, and X. Chi, 2011, Research on path generation for software architecture testing
matrix transform-based, IEEE Journal, pp. 2483-2486.
Zhang, B., and X. Shen, 2011, The effectiveness of real-time embedded software testing, IEEE
Journal, pp. 661-664.

Anda mungkin juga menyukai