Anda di halaman 1dari 28

Penelitian Pemula

LAPORAN KEMAJUAN

PENGEMBANGAN SURVEY STRATEGI DAN TEKNIK PENGUJIAN


UNTUK TIM PENGEMBANG PERANGKAT LUNAK PEMULA

Ketua Peneliti

: Egia Rosi Subhiyakto, M.Kom

Anggota Peneliti : Danang Wahyu Utomo, M.Kom

0612029001
0616088801

Dibiayai oleh LPPM UDINUS dengan No Kontrak 021/A.35-02/UDN.09/X/2015


Tahun Anggaran 2015

UNIVERSITAS DIAN NUSWANTORO


November 2015

HALAMAN PENGESAHAN
HALAMAN PENGESAHAN

Judul Penelitian

: PENGEMBANGAN SURVEY STRATEGI DAN

TEKNIK PENGUJIAN UNTUK TIM


PENGEMBANG PERANGKAT LUNAK PEMULA
Ketua Peneliti
Nama Lengkap

: EGIA ROSI SUBHIYAKTO

NIDN

: 0612029001

NPP

: 0686.11.2014.585

Jabatan Fungsional

:-

Program Studi

: Teknik Informatika

Nomor HP

: 085740278021

Surel (e-mail)

: egia@dsn.dinus.ac.id

Anggota Peneliti (1)


Nama Lengkap

: DANANG WAHYU UTOMO

NIDN

: 0616088801

NPP

: Universitas Dian Nuswantoro

Biaya dari LPPM

: Rp 3.000.000,00

Menyetujui,

Semarang, 20 November 2015

Direktur LPPM

Ketua Peneliti

(Prof. Dr. Vincent Didiek Wiet Aryanto, M.BA)

(Egia Rosi Subhiyakto, M. Kom)

NPP: 0686.11.2014.606

NPP: 0686.11.2014.585

ii

RINGKASAN

Pengujian perangkat lunak merupakan salah satu tahapan dalam siklus hidup
pembangunan perangkat lunak. Pengujian perangkat lunak tidak dapat memastikan kualitas
perangkat lunak, tetapi bisa memberikan kepercayaan dan jaminan kepada perangkat lunak
pada tingkatan tertentu. Terdapat beberapa alasan diantaranya meningkatnya kompleksitas,
meningkatnya tekanan pasar, dan tuntutan pelanggan untuk kualitas yang lebih tinggi
membutuhkan suatu kombinasi yang hati-hati untuk dipilih, divalidasi, dan verifikasi untuk
memberikan suatu produk perangkat lunak yang tepat waktu, sesuai anggaran, dan sesuai
dengan kualitas yang diinginkan. Kenyataannya tim pengembang perangkat lunak pemula
(novice software team) akan melakukan proses percobaan yang relatif banyak dalam
pengujian disebabkan pemahaman yang kurang. Pengembang perangkat lunak pemula
biasanya melakukan proses pengujian perangkat lunak tidak secara detail dan beberapa tidak
menguji sama sekali. Penelitian ini memiliki tujuan untuk memaparkan perilaku dan persepsi
dari sebuah tim pengembang perangkat lunak pemula khususnya dalam tahapan pengujian
dengan menggunakan kuantitatif survey sebagai metode mendapatkan data. Metode tersebut
akan menggunakan kuisioner sebagai alat bantu pengumpulan data. Kuisioner akan
disebarkan kepada kelas mata kuliah Software Quality and Testing. Dengan metode tersebut
akan didapatkan faktor pendukung dan penghambat, strategi pengujian yang paling sering
digunakan oleh tim pengembang perangkat lunak pemula dan persepsi serta sikap mereka
dalam melakukan pengujian. Dengan diketahuinya hal tersebut diharapkan ditemukannya
solusi dalam pemilihan strategi dan teknik pengujian yang tepat untuk tim pengembang
perangkat lunak pemula. Luaran dari penelitian ini adalah bahan ajar mata kuliah Software
Quality and Testing dan publikasi artikel ilmiah skala nasional ber-ISSN.

Kata Kunci: Pengujian, Perangkat Lunak, Strategi Pengujian, Faktor pendukung, Faktor
Penghambat, Solusi

iii

PRAKATA

Dengan memanjatkan puji syukur kehadirat Allah SWT, karena dengan rahmat,
hidayah, dan karunia-Nya telah memperkenankan penulis untuk menyelesaikan laporan
kemajuan Penelitian Pemula yang berjudul Pengembangan survey strategi dan teknik
pengujian untuk tim pengembang perangkat lunak pemula.
Selama melaksanakan penelitian ini, banyak bantuan dan dukungan yang telah
diperoleh. Untuk itu pada kesempatan ini, penulis bermaksud mengucapkan terima kasih
kepada beberapa pihak yang diantaranya adalah :
1. Bapak Dr. Ir. Edi Noersasongko, M.Kom selaku rektor Universitas Dian Nuswantoro.
2. Bapak Prof. Dr. Vincent Didiek Wiet Aryanto, M.BA selaku Direktur LPPM.
3. Ibu Juli Ratnawati, SE, M.Si selaku Kepala Pusat Penelitian Universitas Dian Nuswantoro.
4. Bapak Dr. Abdul Syukur, selaku Dekan Fakultas Ilmu Komputer Universitas Dian
Nuswantoro.
5. Rekan-rekan dosen Fakultas Ilmu Komputer Udinus yang telah berbagi ilmu dalam
menjalankan penelitian.
Sungguh penelitian pemula ini bukanlah tanpa kelemahan, untuk itu kritik dan saran
yang bersifat konstruktif sangat diharapkan. Akhir kata, semoga laporan kemajuan penelitian
ini dapat bermanfaat.
Semarang, 20 November 2015

DAFTAR ISI

HALAMAN PENGESAHAN ................................................................................................... ii


RINGKASAN ............................................................................................................................iii
PRAKATA................................................................................................................................. 1
DAFTAR ISI.............................................................................................................................. 2
DAFTAR TABEL...................................................................................................................... 4
DAFTAR GAMBAR ................................................................................................................. 5
DAFTAR LAMPIRAN .............................................................................................................. 6
BAB 1 ........................................................................................................................................ 7
PENDAHULUAN ..................................................................................................................... 7
1.1. Latar Belakang ................................................................................................................ 7
1.2. Rumusan Masalah ........................................................................................................... 8
1.3. Batasan Masalah.............................................................................................................. 8
1.4. Tujuan Penelitian............................................................................................................. 8
1.5. Urgensi Penelitian ........................................................................................................... 9
1.6. Potensi Luaran ................................................................................................................. 9
BAB 2 ...................................................................................................................................... 10
TINJAUAN PUSTAKA .......................................................................................................... 10
2.1. Rekayasa Perangkat Lunak ........................................................................................... 10
2.1.1. Definisi Perangkat Lunak ....................................................................................... 10
2.1.2. Definisi Rekayasa Perangkat Lunak ....................................................................... 10
2.2. Pengujian ....................................................................................................................... 11
2.2.1. Definisi Pengujian .................................................................................................. 11
2.2.2. Software Testing bagi pemula................................................................................. 12
2.2.3. Alat pendukung pengujian ...................................................................................... 12
2.2.4. Testabilitas.............................................................................................................. 13
2.2.5. Teknik-teknik Pengujian......................................................................................... 13
BAB 3 ...................................................................................................................................... 15
TUJUAN DAN MANFAAT PENELITIAN ........................................................................... 15
3.1. Tujuan Penelitian........................................................................................................... 15
3.2. Manfaat Penelitian......................................................................................................... 15

3.2.1. Manfaat bagi mahasiswa......................................................................................... 15


3.2.2. Manfaat bagi dosen ................................................................................................. 15
BAB 4 ...................................................................................................................................... 16
METODE PENELITIAN ......................................................................................................... 16
4.1. Rancangan Penelitian .................................................................................................... 16
4.2. Metode Pengumpulan Data ........................................................................................... 16
4.3. Roadmap Penelitian....................................................................................................... 18
4.4. Lokasi Penelitian ........................................................................................................... 18
BAB 5 ...................................................................................................................................... 19
HASIL YANG DICAPAI ........................................................................................................ 19
5.1. Target dan Capaian Penelitian....................................................................................... 19
5.2. Hambatan dan Penanganan ........................................................................................... 20
BAB 6 ...................................................................................................................................... 22
RENCANA TAHAPAN BERIKUTNYA ............................................................................... 22
BAB 7 ...................................................................................................................................... 23
KESIMPULAN DAN SARAN................................................................................................ 23
DAFTAR PUSTAKA .............................................................................................................. 23
LAMPIRAN............................................................................................................................. 25
Lampiran 1. Artikel Ilmiah................................................................................................... 25
Lampiran 2. Produk Penelitian............................................................................................. 25
Lampiran 3. Laporan Penggunaan Dana .............................................................................. 25

DAFTAR TABEL

DAFTAR GAMBAR
Gambar 1. Lapisan Teknologi Rekayasa Perangkat Lunak ..................................................... 10
Gambar 2. Rancangan Penelitian ............................................................................................. 16
Gambar 3. Pendekatan kuantiatif ............................................................................................. 16
Gambar 4. Fishbone diagram penelitian .................................................................................. 18

DAFTAR LAMPIRAN

BAB 1
PENDAHULUAN

1.1. Latar Belakang


Pengembangan
kebutuhan,

analisis,

perangkat

lunak

perancangan,

mencakup

beberapa

implementasi (coding),

tahapan

yaitu

pengumpulan

pengujian, dan pemeliharaan.

Tahapan pengujian merupakan salah satu tahapan yang berhubungan dengan kualitas
perangkat lunak yang dibangun. Jaminan kualitas perangkat lunak sangat penting bagi pihakpihak

yang

berkepentingan

(stakeholder).

Meningkatnya

kompleksitas,

meningkatnya

tekanan pasar, dan tuntutan pelanggan untuk kualitas yang lebih tinggi membutuhkan suatu
kombinasi yang hati-hati untuk dipilih, divalidasi, dan verifikasi untuk memberikan suatu
produk software yang tepat waktu, sesuai anggaran, dan sesuai dengan kualitas yang
diinginkan (Aurum & Wohlin 2005). Dalam tahapan pengujian diperlukan adanya konfirmasi
dan verifikasi antara tujuan awal dengan hasil akhir perangkat lunak yang dibangun.
Terdapat banyak pendekatan yang berbeda dalam pengujian perangkat lunak tentunya
dengan manfaat yang berbeda untuk kualitas perangkat lunak disesuaikan dengan proses
pembangunan. Namun, pada praktiknya tim pengembang perangkat lunak pemula (novice
software team) akan melakukan proses percobaan yang relatif banyak dalam pengujian
disebabkan pemahaman yang kurang.

Pengembang perangkat lunak pemula biasanya

melakukan proses pengujian perangkat lunak tidak secara detail dan beberapa tidak menguji
sama sekali (Pham et al. 2014). Hal ini sangat penting karena menurut National Institute of
Standards and Technology pengujian perangkat lunak menghabiskan setidaknya 30% dari
anggaran pengembangan perangkat lunak secara keseluruhan.
Survey praktek pengujian sudah pernah dilakukan oleh beberapa peneliti, diantaranya
adalah (Ng et al. 2004) yang melakukan survey dengan membahas tentang metode-metode
yang digunakan dalam pengujian, dan teknik-teknik pengujian yang digunakan. Sedangkan
dalam (Garousi & Zhi 2013) yang dimana dilakukan di Kanada membahas tentang pengujian
perangkat lunak di dunia industri. Dalam penelitian tersebut juga dibahas mengenai
kelemahan dan kelebihan dari teknik pengujian yang digunakan. Selain itu juga dibahas
mengenai upaya dari beberapa tim yang berbeda dikarenakan beragamnya teknik dan
estimasi biaya yang digunakan. (Pham et al. 2014)

melakukan penelitian pada dunia

pendidikan dengan melibatkan 97 mahasiswa computer sains, kemudian melakukan survey


untuk mengetahui hal hal yang menjadi faktor pendukung maupun penghambat pada saat
7

pengujian. Selain itu juga mahasiswa pemula memberikan persepsi masing-masing mengenai
pengujian yang telah dilakukan. Penelitian yang dilakukan kini merupakan pengembangan
dari penelitian-penelitian yang sebelumnya telah dilakukan. Ada beberapa poin yang akan
dibahas dalam penelitian ini, diantaranya adalah mengenai pemilihan strategi dan teknik
pengujian yang dilakukan, faktor-faktor penghambat dan pendukung pengujian, metode
pengujian dan sikap atau persepsi khususnya mahasiswa mata kuliah Software Quality and
Testing dalam perean mereka sebagai tim pengembang perangkat lunak pemula.
Penelitian dilakukan terhadap mahasiswa Teknik Informatika khususnya yang mengambil
mata kuliah Software Quality and Testing. Melalui teknik penyebaran kuisioner akan
didapatkan faktor pendukung dan penghambat kegiatan pengujian, strategi pengujian yang
digunakan serta persepsi dan sikap ketika melakukan pengujian. Dari paparan diatas melalui
hipotesis awal akan diketahui faktor pendukung dan penghambat, strategi pengujian yang
paling sering digunakan oleh tim pengembang perangkat lunak pemula dan persepsi serta
sikap mereka dalam melakukan pengujian. Dengan diketahuinya hal tersebut diharapkan
ditemukannya solusi dalam pemilihan strategi pengujian yang tepat untuk tim pengembang
perangkat lunak pemula. Penelitian yang dilakukan menghasilkan luaran berupa artikel
ilmiah yang dipublikasikan dalam skala regional dan atau skala nasional. Selain itu penelitian
ini juga dapat dijadikan referensi untuk bahan ajar mata kuliah Software Quality and Testing.
1.2. Rumusan Masalah
Berdasarkan latar belakang tersebut, dirumuskan permasalahan pada penelitian adalah:
1. Pemilihan

strategi

dan

teknik

pengujian

yang

kurang

tepat

menyebabkan

pembengkakan anggaran dan waktu pengujian.


2. Pengembang perangkat lunak pemula melakukan proses pengujian perangkat lunak
tidak secara detail dan beberapa tidak menguji sama sekali.
1.3. Batasan Masalah
Penelitian ini memiliki batasan-batasan untuk lebih fokus pada satu titik. Batasan
permasalahan pada hal-hal berikut:
1. Penelitian dilakukan pada kelas mata kuliah Software Quality and Testing Teknik
Informatika UDINUS.
2. Perangkat lunak yang diuji sudah tersedia

dan akan diuji oleh mahasiswa yang

mengambil mata kuliah Software Quality and Testing.


1.4. Tujuan Penelitian
Berdasar rumusan masalah serta batasan yang dijelaskan sebelumnya, maka tujuan yang
akan dicapai pada penelitian ini adalah:
8

a. Membantu tim pengembang perangkat lunak pemula dalam menentukan strategi dan
teknik pengujian yang tepat.
b. Membantu proses pembelajaran mahasiswa dalam memahami

proses pengujian

dengan mengetahui faktor-faktor pendukung dan penghambat.


1.5. Urgensi Penelitian
Tahapan pengujian merupakan salah satu tahapan dalam pengembangan sebuah perangkat
lunak (Software). Tahapan pengujian menjadi sangat penting karena merupakan tahapan
akhir dalam menentukan kualitas perangkat lunak yang dibangun atau dikembangkan.
Berhubungan dengan jaminan kualitas tentunya memerlukan hal yang detail dan spesifik
dalam prosesnya. Khususnya untuk tim pengembang perangkat lunak pemula menjadi sangat
urgent karena pada tahap ini mereka belajar mengetahui faktor-faktor yang mendukung
maupun yang menghambat dalam proses pengujian perangkat lunak. Menentukan strategi
pengujian juga menjadi sangat penting karena jika salah dalam menentukan teknik yang tepat
maka pengujian akan menghabiskan waktu dan biaya yang besar.
1.6. Potensi Luaran
Penelitian ini akan menghasilkan potensi luaran berupa:
1. Publikasi artikel ilmiah skala nasional ber-ISSN.
2. Bahan ajar mata kuliah Software Quality and Testing.

BAB 2
TINJAUAN PUSTAKA

2.1. Rekayasa Perangkat Lunak


Bagian ini menjelaskan definisi perangkat lunak, definisi rekayasa perangkat lunak, dan
proses rekayasa perangkat lunak.
2.1.1. Definisi Perangkat Lunak
Komputer adalah mesin yang memproses suatu hal mentah atau data menjadi sebuah
informasi.

Komputer digunakan sebagai cara untuk meningkatkan hasil kerja dan

memecahkan beberapa masalah. Satu hal yang dijadikan sebagai alat proses data maupun
pemecah masalah yakni perangkat lunak.
Menurut (Sommerville 2011) pengertian perangkat lunak adalah Program Komputer
dan

dokumentasi (User

manual,

dokumen

kebutuhan,

dokumen

perancangan)

yang

berhubungan dengan program tersebut. Sedangkan menurut (Pressman 2009), perangkat


lunak

adalah sebuah instruksi atau program komputer yang apabila dieksekusi bias

menjalankan suatu fungsi,

struktur data yang bias menjadikan aplikasi memanipulasi

informasi, maupun dokumen sebagai penjelas program. Dalam jurnal IEEE (Institute of
Electrical

and

Electronics

merupakan program komputer,

Engineers),
aturan,

prosedur,

dijelaskan

bahwa

perangkat

lunak

serta dokumentasi yang berhubungan

dengan data, kemudian menjalankan operasi suatu sistem komputer.


2.1.2. Definisi Rekayasa Perangkat Lunak
Berdasarkan (Sommerville 2011) rekayasa perangkat lunak merupakan sebuah
disiplin ilmu yang membahas aspek-aspek pembuatan perangkat lunak. Dalam buku yang
ditulis (Pressman 2009), Fritz Bauer menjelaskan bahwa
lunak adalah pembuatan perangkat lunak dengan

definisi dari rekayasa perangkat

menggunakan prinsip rekayasa yang kuat

untuk menghasilkan perangkat lunak yang ekonomis, dapat diandalkan, dan bekerja dengan
efisien. (Pressman 2009) mendefinisikan

rekayasa perangkat lunak merupakan teknologi

yang bertingkat atau berlapis, lapisan- lapisan teknologi tersebut adalah sebagai berikut:

Gambar 1. Lapisan Teknologi Rekayasa Perangkat Lunak


10

1. Berpusat pada kualitas


Semua proses perancangan sangat dipengaruhi

oleh komitmen organisasi pada kualitas.

Filosofi filosofi tentang kualitas akan terus memperbaiki proses perancangan dan akhirnya
akan berpengaruh terhadap pendekatan rekayasa perangkat lunak yang lebih efektif.
2. Proses (process)
Lapisan ini merupakan lapisan yang menghubungkan teknologi teknologi yang
digunakan dalam perancangan program dan memungkinkan pembuatan program diselesaikan
dengan tepat waktu. Proses ini mendefinisikan framework yang harus dibuat agar teknologi
yang digunakan dalam pembuatan program dapat dimanfaatkan dengan efektif.
3. Metode (Methods)
Lapisan metode dari rekayasa perangkat lunak menjelaskan secara teknis
cara mengembangkan perangkat lunak. Lapisan ini terdiri dari tugas-tugas yang
tentang: analisis kebutuhan (requirement analysis), model desain (design

bagaimana
mencakup
modelling),

pembuatan program (program construction), pengujian (testing) dan pendukung (support).


4. Alat (Tools)
Lapisan ini menyediakan bantuan secara otomatis dan semi-otomatis untuk
metode. Ketika alat sudah terintegrasi sehingga informasi yang dihasilkan
dapat digunakan oleh yang lain, maka terbentuklah sebuah sistem

proses dan

oleh suatu alat

untuk membantu proses

perekayasaan perangkat lunak dikenal Computer Aided Software Engineering.


2.2. Pengujian
Dalam bagian ini menjelaskan tentang definisi pengujian, pengujian untuk pengembang
perangkat lunak pemula, alat pendukung pengujian, testabilitas, dan teknik-teknik serta
strategi pengujian.
2.2.1. Definisi Pengujian
Pengujian perangkat lunak merupakan metode pengujian untuk menentukan kualitas
dari perangkat lunak apakah sesuai dengan kebutuhan yang ditentukan. Beberapa metode
seperti automatic testing, unit testing, regression testing memiliki perbedaan keuntungan
untuk menguji kualitas perangkat lunak dan proses pengembangannya. Dalam pendidikan,
praktek pengujian perangkat lunak dapat digunakan sebagai alat untuk meningkatkan
kemampuan mahasiswa (mahasiswa Rekayasa Perangkat Lunak) dalam mengembangkan
perangkat lunak. (Pham et al. 2014) menyatakan bahwa masalah utama dalam pengembangan
perangkat lunak adalah minimnya pengalaman mahasiswa dalam pengujian.
11

2.2.2. Software Testing bagi pemula


Bagi pemula,

harus mempelajari bagaimana cara mengadopsi teknik pengujian,

mengurangi hambatan saat proses pengujian dilakukan. (Lee et al. 2012) menyatakan bahwa
praktek pengujian perangkat lunak masih memiliki kendala dalam penggunaan metode dan
alat pengujian. Bagi instruktur (pengajar), perlu memperhatikan kemampuan mahasiswa,
perilaku, batasan, dan kebutuhan pada metode dan alat pengujian perangkat lunak. Instruktor
tidak hanya berfokus pada pemahaman metode dan alat, tetapi perlu memperhatikan proses
pengujian dan aktivitas untuk mengetahui kemampuan mahasiswa. Hal ini bertujuan untuk
menentukan metode dan alat yang tepat digunakan pada saat pengujian perangkat lunak
dengan

model

perkembangan

pengembangan
mahasiswa

yang

dalam

telah

diusulkan.

menerapkan

Selain

kemampuan

itu,
dan

dapat

mengontrol

pengetahuan

dalam

pengembangan perangkat lunak yang nyata misalnya proyek di dunia industri.


Tidak adanya pengalaman tentang pengujian akan menjadikan kendala dalam proses
pengembangan perangkat lunak. Pada dasarnya, pengujian perangkat lunak adalah bagian
penting dari semua model pengembangan perangkat lunak. (Pham 2014) menyatakan bahwa
hambatan

dan kendala dalam pengembangan perangkat lunak

adalah tidak

adanya

pengalaman bagi pengembang pada praktek pengujian perangkat lunak. Pengembang


kesulitan dalam menerapkan metode yang dipelajari. Dalam hal ini, pemula yaitu mahasiswa
dengan

minim

pengalamanan

membutuhkan

bimbingan

untuk

mengurangi

terjadinya

kesalahpahaman dalam mempelajari metode yang diberikan. Perlu adanya tambahan kelas
khusus untuk mempelajari metode dan alat pengujian serta melakukan praktek secara
langsung yang diawasi oleh instruktor (pengajar).
(Itkonen & Lassenius 2013) menggunakan pengetahuan dan pengalaman dari penguji
untu mengetahui kegagalan dalam proses pengujian. Pengetahuan dan pengalaman tersebut
dapat

digunakan

untuk

mengetahui kegagalan

mahasiswa

dalam melakukan praktek

pengujian berdasarkan pengetahuan personal dari mahasiswa. Adanya pengalaman dapat


mengetahui perilaku penguji dalam menentukan metode dan alat yang digunakan. Sebagai
contoh pengalaman dalam menggunakan test case pada regression testing, automatic testing.
Mahasiswa harus dapat menentukan domain dalam metode tersebut. Test case yang
ditentukan harus sesuai dengan pengujian yang diusulkan.
2.2.3. Alat pendukung pengujian
(Pham et al. 2014) menyatakan bahwa kuesioner dan interview merupakan faktor yang
dapat mempengaruhi pengujian. Kuesioner digunakan untuk menentukan faktor dari training
dan alat yang digunakan. Selain itu juga digunakan untuk menentukan karakteristik personal
12

dan pengalaman dari pengguna. Umumnya, kuesioner digunakan pada automatic testing.
Interview sebagai faktor untuk mengeksplorasi persepsi dan opini dari pengguna. Interview
digunakan untuk mengeksplorasi persepsi dan opini dari pengguna. Selain persepsi dari
pengguna,

interview

juga

dapat

digunakan

untuk

menentukan perilaku berdasarkan

pengalaman dari pengguna.


2.2.4. Testabilitas
Dalam testabilitas pengujian perangkat lunak harus memperhatikan beberapa aspek
yakni: operability (software dapat dioperasikan dengan baik), observability (software dapat
diobservasi atau ditinjau langsung), controllability (software dapat dikendalikan oleh
pengguna), decomposability (berkaitan dengan pengendalian bahwa software dapat diuji
secara terstruktur), simplicity (software yang sederhana akan lebih cepat diuji dan
sebaliknya), stability (perangkat lunak sebaiknya harus stabil), dan understandability
(perangkat lunak sebaiknya mudah dipahami bagi pengguna yang awam) (Jatnika Hendra
2011).
2.2.5. Teknik-teknik Pengujian
Pengujian perangkat lunak tentunya tidak terlepas dari teknik-teknik pengujian yang
digunakan. Menurut (Jatnika Hendra 2011) teknik-teknik pengujian terdiri dari 3 yakni white
box, black box dan grey box. Dalam tiap-tiap teknik pengujian terdapat beberapa teknik yang
dijelaskan lebih detail sebagai berikut:
1. Teknik pengujian white box
Dalam white box terdapat beberapa teknik pengujian yang digunakan yakni basis
path testing, control structure testing, data flow testing, loop testing. Teknik pengujian
dalam whitebox yang paling sering digunakan adalah basis path testing. Berikut adalah
tahapan dalam basis path testing:
a. Membuat sebuah notasi aliran graph
b. Kemudian kompleksitas siklomatis kita hitung dengan rumus:
V(G) = E N + 2
E = Jumlah busur aliran graph
N = Jumlah simpul aliran graph
Atau bias menggunakan rumus
V(G) = P + 1
P = Simpul predikat (khusus untuk simpul yang mempunyai 2 atau lebih busur
yang keluar)
13

c. Kemudian tentukan jalur independen (satu kondisi pengolahan).


d. Cobakan kasus uji untuk setiap jalur independen
e. Lalu buatlah metrik graph

2. Teknik pengujian black box


Teknik pengujian dalam pengujian black box diantaranya adalah graph based testing
(pengujian yang dilakukan dengan menggunakan graph untuk menguji objek pada
modul beserta hubungannya agar dapat diuji), boundary value analysis (dalam
pengujian ini memilih kasus uji dengan menemukan batas-batas dari sebuah kelas pada
suatu data), equivalence testing (dalam pengujian domain masukan sebuah program
dibagi ke dalam sebuah kelas data untuk membuat kasus uji yang tepat), dan
comparison testing (pengujian ini biasanya digunakan untuk program yang terdapat
redundancy).

3. Teknik pengujian grey box


Grey Box Testing adalah sebuah metodologi kombinasi dari Black Box dan White
Box Testing, menguji software berdasarkan spesifikasi tetapi menggunakan cara kerja
dari dalam. Grey Box dapat di gunakan dengan baik dalam pengujian tim.

14

BAB 3
TUJUAN DAN MANFAAT PENELITIAN

3.1. Tujuan Penelitian


Penelitian ini memiliki tujuan untuk memaparkan perilaku dan persepsi dari sebuah tim
pengembang

perangkat

lunak

pemula

khususnya

dalam

tahapan

pengujian

dengan

menggunakan kuantitatif survey sebagai metode mendapatkan data. Metode tersebut akan
menggunakan kuisioner sebagai alat bantu pengumpulan data. Kuisioner akan disebarkan
kepada kelas mata kuliah Software Quality and Testing. Dengan metode tersebut akan
didapatkan faktor pendukung dan penghambat, strategi pengujian yang paling sering
digunakan oleh tim pengembang perangkat lunak pemula dan persepsi serta sikap mereka
dalam melakukan pengujian. Dengan diketahuinya hal tersebut diharapkan ditemukannya
solusi dalam pemilihan strategi dan teknik pengujian yang tepat untuk tim pengembang
perangkat lunak pemula.

3.2. Manfaat Penelitian


Penelitian ini memiliki manfaat bagi mahasiswa dan bagi dosen. Beberapa manfaat
tersebut yang diharapkan dalam penelitian ini adalah sebagai berikut:
3.2.1. Manfaat bagi mahasiswa
Mahasiswa mendapatkan manfaat dengan mengetahui faktor-faktor penghambat
dan faktor-faktor pendukung dalam pengujian perangkat lunak, strategi yang digunakan
dan teknik-teknik pengujian yang digunakan dalam pengujian perangkat lunak. Sehingga
ke depannya diharapkan dengan diketahuinya hal tersebut mahasiswa dapat memilih
strategi dan teknik pengujian yang tepat dalam pengujian perangkat lunak baik skala
kecil, menengah maupun skala besar.
3.2.2. Manfaat bagi dosen
Dari sisi akademis, hasil dari penelitian akan dapat menambah kepustakaan
keilmuan dalam bidang rekayasa perangkat lunak. Dari hasil penelitian yang dilakukan
selanjutnya akan dipublikasikan pada jurnal ataupun konferensi nasional sebagai bentuk
sharing knowledge. Hasil publikasi ini dapat memperkaya khazanah ilmu pengetahuan
dalam bidang pengujian perangkat lunak.

15

BAB 4
METODE PENELITIAN

4.1. Rancangan Penelitian


Guna mencapai tujuan yang diharapkan,
rancangan penelitian sebagai berikut:

penelitian ini dilakukan sesuai dengan

Gambar 2. Rancangan Penelitian


4.2. Metode Pengumpulan Data
Metode pengumpulan data yang digunakan pada penelitian ini adalah dengan pendekatan
kuantitatif. Metode ini melakukan proses survey dengan menyebarkan kuisioner kepada
sebuah tim pengembang perangkat lunak pemula (mahasiswa mata kuliah software quality
and testing). Hasil dari kuisioner akan dianalisis untuk memastikan validitas dari penelitian.
Metode penelitian kuantitatif yang digunakan dalam gambar di bawah ini:

Gambar 3. Pendekatan kuantiatif

16

Berdasarkan gambar diatas, penjelasan pendekatan kuantitatif adalah sebagai berikut:


1. Scientific Problem
Masalah yang dibahas pada penelitian ini adalah pemilihan strategi pengujian yang
kurang tepat menyebabkan pembengkakan anggaran dan waktu pengujian serta pengembang
perangkat lunak pemula melakukan proses pengujian perangkat lunak tidak secara detail dan
beberapa tidak menguji sama sekali. Kedua hal tersebut merupakan permasalahan yang harus
diselesaikan secara tepat.
2. Hypotesis
Melalui hipotesis awal akan diketahui faktor pendukung dan penghambat, strategi
pengujian yang paling sering digunakan oleh tim pengembang perangkat lunak pemula dan
persepsi serta sikap mereka dalam melakukan pengujian. Dengan diketahuinya hal tersebut
diharapkan ditemukannya solusi dalam pemilihan strategi pengujian yang tepat untuk tim
pengembang perangkat lunak pemula.
3. Pengujian Data Empirik
Tahap pengujian data empiris dilakukan dengan menyebarkan kuisioner kepada tim
pengembang perangkat lunak pemula (mahasiswa mata kuliah Software Quality and Testing).
Hasil kuisioner akan dianalisis dengan melakukan perhitungan menggunakan rumus:
Y = P/Q * 100%, dimana:
P = Jumlah jawaban responden untuk setiap pertanyaan
Q = Jumlah responden
Y = Nilai prosentase
Unit sampel dan unit analisis yang digunakan adalah dengan mengambil data dari
mahasiswa yang mengambil mata kuliah Software Quality and Testing. Mahasiswa akan
diberikan sejumlah pertanyaan yang terkait dengan pengujian untuk tim pengembang
perangkat lunak pemula.
4. Obyek Penelitian dan Responden
Objek penelitian dilakukan di Universitas Dian Nuswantoro Semarang khususnya
mahasiswa Teknik Informatika. Responden adalah mahasiswa yang mengambil mata kuliah
Software Quality and Testing. Hasil diferensiasi strategi dan teknik pengujian akan di
kumpulkan dengan melakukan studi kuisioner dan wawancara. Mahasiswa akan diberikan
sejumlah pertanyaan yang terkait dengan pengujian untuk tim pengembang perangkat lunak
pemula. Dalam kuisioner terdapat variabel dan faktor-faktor yang berpotensi menjadi faktor
pendukung dan faktor penghambat dalam pengujian. Sikap dan persepsi dari mahasiswa juga

17

akan dianalisis lebih lanjut untuk menentukan strategi pengujian yang tepat digunakan
disesuaikan dengan kondisi yang ada.
4.3. Roadmap Penelitian
Penelitian yang dilakukan merupakan hasil dari studi pendahuluan dari hasil penelitianpenelitian sebelumnya. Keterkaitan antara hasil penelitian sebelumnya dengan penelitian
yang diusulkan dinyatakan dalam fishbone diagram pada Gambar 3.1 di bawah ini:

Gambar 4. Fishbone diagram penelitian

Keterangan:

Penelitian yang telah dilakukan

Penelitian yang akan dilakukan

4.4. Lokasi Penelitian


Penelitian dilakukan di Universitas Dian Nuswantoro, khususnya di program studi
Teknik Informatika dalam kelas mata kuliah Software Quality and Testing. Penelitian
dilakukan dengan melakukan uji perangkat lunak yang sudah ditentukan dengan strategi dan
teknik pengujian yang berbeda antara satu mahasiswa dengan mahasiswa lain. Hasil
diferensiasi strategi dan teknik pengujian akan di kumpulkan dengan melakukan studi
kuisioner dan wawancara.

18

BAB 5
HASIL YANG DICAPAI

5.1. Target dan Capaian Penelitian


Berdasarkan rancangan penelitian, terdapat beberapa capaian yang ditargetkan pada
penelitian ini. Target output tersebut kemudian di-break down ke dalam beberapa tahap
sesuai jadwal kegiatan yang tercantum dalam proposal. Adapun realisasi dari target output
dan capaian tersebut, dapat diamati pada tabel di bawah ini:
Tabel 1. Target dan Capaian Penelitian
No
1.

Jenis Kegiatan

Target Output

Realisasi
Capaian

Keterangan

Identifikasi Masalah
List permasalahan
Analisis permasalahan

pemilihan strategi dan

berdasarkan jurnal

teknik pengujian yang ada

100%

Analisis penelitian
sebelumnya

saat ini
2.

Pencarian Alternatif Solusi


a. Studi literatur

Daftar strategi dan teknik


pengujian yang dilakukan

100%

Hasil wawancara awal


b. Observasi kelas

dengan mahasiswa kelas

100%

SQT
3.

Sudah ada daftarnya

Dilakukan
wawancara awal

Studi kasus dan uji coba perangkat lunak


a. Pembagian Kelompok

Sudah dilakukan

pengujian perangkat

100%

lunak

kelompok

b. Penentuan Perangkat

Daftar Perangkat lunak

lunak yang di uji

yang diuji

c. Pembuatan kuisioner

Kuisioner pengujian

d. Penyebaran kuisioner

pembagian

Tersedia daftar
100%

perangkat lunak
yang diuji

e. Pengujian perangkat

Laporan hasil pengujian

lunak

perangkat lunak
19

100%

Sudah ada

100%

Sudah dilaksanakan

100%

Sudah dilaksanakan

4.

Evaluasi Hasil
a. Analisis metrix
proyek perangkat lunak

b. Analisis metrix
(produk dan proses)

c. Strategi dan Teknik


Pengujian
d. Analisis faktor-faktor
pendukung dan
penghambat serta
analisis persepsi
pengujian
5.

berdasarkan perangkat

30%

On Progress

30%

On Progress

30%

On Progress

30%

On Progress

lunak yang diuji


Hasil analisis kuisioner
berdasarkan metrix
produk dan proses
Hasil analisis berdasarkan
strategi dan teknik yang
dipilih dalam penggujian
Daftar faktor-faktor
pendukung dan
penghambat dalam
pengujian

Pengambilan kesimpulan
Pengambilan
kesimpulan hasil
pengujian

6.

Hasil analisis kuisioner

Kesimpulan hasil

belum terlaksana

pengujian

Penulisan Laporan dan Publikasi


a. Penulisan Artikel
untuk publikasi ilmiah

Makalah jurnal/
konferensi ilmiah

10%

On progress

nasional ber-ISSN
Laporan dan usulan topik

b. Penulisan Laporan

penelitian selanjutnya

belum terlaksana

yang relevan

5.2. Hambatan dan Penanganan


Penelitian yang dilakukan tentunya memiliki hambatan baik dari sisi internal maupun
eksternal. Beberapa hambatan tersebut tentunya telah ditangani, akan tetapi ada hambatan
lainnya yang masih dalam proses pencarian solusi. Berikut adalah daftar hambatan yang
ditemui beserta penanganan yang dilakukan:

20

No
1.

Hambatan
Kelompok

Penanganan

pengembang

menguji Dilakukan pengujian secara acak (random)

perangkat lunak sendiri dikhawatirkan dengan kelompok lain.


adanya manipulasi data dalam laporan.
2.

Waktu pengujian yang kurang.

Diberikan fleksibilitas waktu pengujian selama


2 minggu dan dilakukan secara kelompok.

3.

Karena

pengujian

kelompok
dikhawatirkan

dilakukan

lain

oleh Diberikan

(independen), lunak,

tidak

pelatihan
dari

mulai

penggunaan
konfigurasi

perangkat
sampai

memahami perangkat lunak bias dijalankan (running).

perangkat lunak yang diuji.


4.

Adanya perangkat lunak yang tidak Seminggu


bisa dijalankan.

sebelum

pengujian,

dilakukan

pengecekan bahwa perangkat lunak sudah siap


untuk diuji.

21

BAB 6
RENCANA TAHAPAN BERIKUTNYA

Penelitian ini masih memiliki beberapa kegiatan dan target capaian yang belum terpenuhi.
Kegiatan yang masih belum dilakukan dan akan dijalankan pada tahap berikutnya adalah
sebagai berikut:
1. Melakukan

pengujian

perangkat

lunak

keseluruhan

lengkap

dengan laporan hasil

pengujian.
2. Melakukan evaluasi hasil dengan menganalisis kuisioner yang mencakup analisis

metrix

proyek perangkat lunak, metrix produk dan metrix proses.


3. Melakukan analisis mengenai strategi dan teknik pengujian yang dipilih.
4. Melakukan analisis mengenai analisis faktor-faktor pendukung dan penghambat serta
analisis persepsi pengujian.
5. Pengambilan kesimpulan hasil pengujian.
6. Penulisan artikel untuk publikasi ilmiah.
7. Melakukan publikasi hasil penelitian pada konferensi atau jurnal nasional ber-ISSN.

Kegiatan tersebut ditargetkan akan selesai pada awal bulan Desember 2015, sehingga dapat
dilakukan penulisan laporan akhir pada bulan yang sama sebagai pertanggung jawaban
kepada LPPM Udinus selaku penyandang dana penelitian ini.

22

BAB 7
KESIMPULAN DAN SARAN

7.1. Kesimpulan
Pengujian perangkat lunak memiliki keterbatasan dalam keberagaman perangkat lunak
yang diuji mulai dari tingkat kompleksitas sampai dengan flatform perangkat lunak yang
digunakan (web, mobile, desktop). Untuk mengatasi keterbatasan tersebut perangkat lunak
yang diuji harus dipastikan berjalan pada flatform yang dikehendaki dengan cara konfigurasi
pada awal sebelum pengujian. Pengujian yang dilakukan oleh beberapa tim pengembang
perangkat lunak berjalan dengan lancar dengan hambatan yang sudah ditangani. Untuk
mengukur evaluasi hasil pengujian dan feedback dari tim pengembang digunakan kuisioner
yang berisi tentang produk, proses, teknik dan strategi pengujian serta faktor-faktor
pendukung maupun penghambat dalam melakukan pengujian.
7.2. Saran
Saran untuk penelitian selanjutnya adalah menggunakan perangkat lunak yang memiliki
flatform yang sama untuk tim pengembang perangkat lunak yang berbeda. Diharapkan
dengan perangkat lunak yang memiliki flatform yang sama dan kompleksitas yang sama
hasilnya akan lebih baik.

23

DAFTAR PUSTAKA
Aurum, A. & Wohlin, C., 2005. Engineering and Managing Software Requirements,
Garousi, V. & Zhi, J., 2013. A survey of software testing practices in Canada. Journal of
Systems
and
Software,
86(5),
pp.13541376.
Available
at:
http://dx.doi.org/10.1016/j.jss.2012.12.051.
Itkonen, J. & Lassenius, C., 2013. The Role of the Tester s Knowledge in Exploratory
Software Testing. , 39(5), pp.707724.
Jatnika Hendra, I.Y.S., 2011. TESTING DAN IMPLEMENTASI,
Lee, J., Kang, S. & Lee, D., 2012. Survey on software testing practices. IET Software, 6(3),
p.275.
Ng, S.P. et al., 2004. A preliminary survey on software testing practices in Australia.
Software Engineering Conference, 2004. Proceedings. 2004 Australian, pp.116125.
Available
at:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1290464\npapers3://publication/doi
/10.1109/ASWEC.2004.1290464.
Pham, R. et al., 2014. Enablers , Inhibitors , and Perceptions of Testing in Novice Software
Teams. FSE14, (ACM), pp.3040.
Pham, R., 2014. Improving the Software Testing Skills of Novices during Onboarding
through Social Transparency. , pp.803806.
Pressman, R., 2009. Software engineering: a practitionars approach.
Sommerville, I., 2011. Software Engineering Ninth Edit., Addison-Wesley.

24

LAMPIRAN
Lampiran 1. Artikel Ilmiah
Masih berupa draft jurnal
Lampiran 2. Produk Penelitian

Lampiran 3. Laporan Penggunaan Dana

25

Anda mungkin juga menyukai