Anda di halaman 1dari 18

TUGAS PENGGANTI UTS

STANDAR UJI PERANGKAT LUNAK


Diajukan Untuk Memenuhi Ujian Tengah Semester Standar Uji Perangkat Lunak
Dosen Pengampu : Purwantoro. M.Kom.

Disusun Oleh :
Raka Yanuar Firdaus (1610631170169)
Veri Husaeni (1610631170220)
Farhan Ali Abidin (1610631170234)

Kelas : 6-A

PROGRAM STUDI TEKNIK INFORMATIKA


PRODI FAKULTAS ILMU KOMPUTER
UNIVERSITAS SINGAPERBANGSA KARAWANG
KARAWANG
2019
HALAMAN PENGESAHAN

Anggota Kelompok
a. Nama Lengkap : Raka Yanuar Firdaus
NPM : 1610631170169
b. Nama Lengkap : Veri Husaeni
NPM : 1610631170220
c. Nama Lengkap : Farhan Ali Abidin
NPM : 1610631170234
d. Kelas : 6-A
e. Program Studi : Teknik Informatika
f. Fakultas : Ilmu Komputer

Mengetahui, Karawang, 26 Maret 2019


Koordinator Kelas, Ketua Kelompok,

Veri Husaeni Farhan Ali Abidin


NPM : 1610631170220 NPM : 1610631170234

Menyetujui,
Dosen Pengampu,

Purwantoro, M.Kom.
NIDN : 0408117702
KATA PENGANTAR
Puji dan syukur kehadirat Tuhan Yang Maha Esa atas berkat dan rahmat-Nya
sehingga tugas rangkuman jurnal pengganti UTS, pada mata kuliah Standar Uji
Perangkat Lunak ini dapat terselesaikan dengan baik. Terima kasih kepada Bapak
Purwantoro, M.Kom. sebagai dosen pengampu mata kuliah Standar Uji Perangkat
Lunak yang telah membimbing dan memberikan pengarahan sebelum dan selama
penulisan tugas UTS ini. Terima kasih kepada seluruh pihak yang telah membantu
dan memberi semangat dalam pengerjaan tugas mata kuliah pengganti UTS ini.
Pada penulisan tugas ini sangat dimungkinkan masih banyak kekurangan
yang harus diperbaiki. Segala bentuk kritik dan saran akan dengan senang hati
diterima dan diharapkan dapat membantu dalam penulisan selanjutnya agar lebih
baik lagi. Semoga tugas rangkuman jurnal pengganti UTS ini, dapat menambah
wawasan dan pengetahuan bagi pembaca.

Karawang, Maret 2019

Penulis

ii
DAFTAR ISI
HALAMAN PENGESAHAN .................................................................................. i

KATA PENGANTAR ............................................................................................ ii

DAFTAR ISI .......................................................................................................... iii

SLIDE PRESENTASI............................................................................................. 1

JURNAL PERTAMA (Pragmatic Software Testing Education) .......................... 2

JURNAL KEDUA (The Oracle Problem in Software Testing: A Survey) ........... 11

JURNAL KETIGA (Testing Stochastic Software using Pseudo-Oracles) ........... 31

RANGKUMAN JURNAL PERTAMA ................................................................ 44

1. Identitas Jurnal ........................................................................................... 44

2. Latar Belakang Jurnal ................................................................................ 44

3. Rumusan Masalah ...................................................................................... 44

4. Metodologi Penelitian ................................................................................ 45

5. Hasil dan Pembahasan................................................................................ 45

6. Kesimpulan ................................................................................................ 46

RANGKUMAN JURNAL KEDUA ..................................................................... 47

1. Identitas Jurnal ........................................................................................... 47

2. Latar Belakang Jurnal ................................................................................ 47

3. Rumusan Masalah ...................................................................................... 47

4. Metodologi Penelitian ................................................................................ 47

5. Hasil dan Pembahasan................................................................................ 48

6. Kesimpulan ................................................................................................ 48

RANGKUMAN JURNAL KETIGA .................................................................... 49

1. Identitas Jurnal ........................................................................................... 49

2. Latar Belakang Jurnal ................................................................................ 49

iii
3. Rumusan Masalah ...................................................................................... 50

4. Metodologi Penelitian ................................................................................ 50

5. Hasil dan Pembahasan................................................................................ 50

6. Kesimpulan ................................................................................................ 52

iv
SLIDE PRESENTASI

1
JURNAL PERTAMA
(Pragmatic Software Testing Education)

2
JURNAL KEDUA
(The Oracle Problem in Software Testing: A Survey)

11
JURNAL KETIGA
(Testing Stochastic Software using Pseudo-Oracles)

31
RANGKUMAN
JURNAL PERTAMA
1. Identitas Jurnal
Jurnal Pertama pada rangkuman jurnal ini, dirangkum oleh Raka Yanuar
firdaus dengan identitas jurnal sebagai berikut :
Reviewer : Raka Yanuar Firdaus
Judul Jurnal : Pragmatic Software Testing Education
Nama Jurnal : 50th acm technical symposium on computer science
education
Penulis : Maurício Aniche, et.al.
Tahun : 2019
Kata Kunci : software testing education, software engineering
education, computer science education
Jumlah Halaman : 8 halaman
2. Latar Belakang Jurnal
Setiap pengembang perangkat lunak harus menyadari dampak (tinggi) yang
timbul dari penyalahgunaan perangkat lunak dalam masyarakat kita. Kita telah
melihat kerugian besar di pasar keuangan, dan bahkan peneliti menarik kertas
mereka. Semuanya disebabkan oleh kesalahan (bug) yang terdapat pada perangkat
lunak. Memastikan kelayakan dari suatu perangkat lunak merupakan tanggung
jawab terbesar dari pengembang perangkat lunak.
Tindakan memeriksa source code yang besar dan kompleks untuk
menemukan bug ini bukan tugas yang mudah. Analis harus memiliki pemahaman
yang luas dari praktek-praktek yang berbeda dan bervariasi dari yang sederhana
pengujian eksplorasi manual, di mana manusia mencoba untuk menemukan bug
manual dengan berinteraksi dengan sistem, seperti pengujian otomatis untuk
menguji sistem mereka.
3. Rumusan Masalah
Dalam penulisan jurnal yang berjudul Pragmatic Software Testing Education ini,
terdapat rumusan masalah yang coba untuk diselesaikan oleh penulis, yaitu

44
bagaimana untuk menerapkan pengujian perangkat lunak pada kurikulum
pembelajaran yang ada di sekolah dan mengenalkannya pada siswa ?
4. Metodologi Penelitian
Tujuan dari penelitian ini adalah untuk memberikan pemahaman yang lebih
baik mengenai kesulitan dan tantangan yang dihadapi siswa ketika belajar
pengujian perangkat lunak pragmatis. Pengujian yang dilakukan untuk mencapai
tujuan itu, dengan cara menganalisa data dari 230 siswa tahun ajaran 2016 – 2017
untuk menguji perangkat lunak yang dibuat. Kemudian penulis menyediakan tiga
pertanyaan kepada para siswa tersebut, yaitu :
a. RQ1 : Apa kesalahan umum yang biasa siswa lakukan ketika belajar
pengujian perangkat lunak ?
b. RQ2 : Topik pengujian perangkat lunak bagian mana yang paling sulit
untuk dipelajari siswa ?
c. RQ3 : Metode pengajaran mana yang paling membantu siswa ?
Pengujian dilakukan kepada 230 partisipan yang telah ditunjuk tadi, diantara
partisipan yang ditunjuk 66 siswa mengidentifikasi diri mereka sebagai laki-laki, 8
sebagai perempuan, dan 10 lebih suka untuk tidak menjawab. 89,3% dari siswa
adalah antara 18 sampai 24 tahun, lima adalah antara 25 dan 34, dan empat adalah
17 atau lebih muda dan hanya tiga siswa yang berasal dari manca negara.
5. Hasil dan Pembahasan
Dari hasil pengujian awal, diperoleh hasil dari para partisipan. Dalam hal
pengetahuan Java, dalam skala 1 sampai 10, 9,5% siswa menganggap pengetahuan
mereka antara 9 dan 10, dan 72% dari mereka menganggap mereka antara 7 dan 8.
Hanya 4 siswa menganggap mereka 5 atau di bawahnya. Berkat pengenalan untuk
JUnit bahwa siswa menerima pelajaran tersebut selama kursus pertama mereka
pada bahasa pemrograman, kebanyakan dari mereka sudah memiliki beberapa
pengetahuan tentang software pengujian sebelum kursus yang diberikan penulis.
Siswa menganggap bahwa pengetahuan mereka meningkat setelah kursus.
Semua dari mereka dianggap pengetahuan mereka setelah kursus sebagai 6 atau
lebih besar 39% dari mereka peringkat diri dengan 8, dan 14,6% dengan 9. Dua
siswa peringkat diri dengan 10.

45
Kemudian, dari tiga pertanyaan yang diajukan kepada para partisipan,
diperoleh hasil sebagai berikut :
Pertanyaan yang diajukan Hasil
RQ1 : Apa kesalahan umum yang a. Tes Cakupan (416 kali, 20,87%).
biasa siswa lakukan ketika b. Pemeliharaan source code (407 kali,
belajar pengujian perangkat 20,42%)
lunak ? c. Konsep pengujian pemahaman (306 kali,
15,35%)
d. Pengujian batas (258 kali, 12,95%)
RQ2 : Topik pengujian perangkat Sebagian besar siswa mempertimbangkan
lunak bagian mana yang paling menggunakan kerangka JUnit serta pola Act-
sulit untuk dipelajari siswa ? Arrange-Assert yang membentuk setiap unit
tes mudah untuk dipelajari. Berdasarkan
pertanyaan pertama (RQ1), dapat diperoleh
data bahwa tingkat kesulitan tertinggi
terdapat pada tes cakupan (Coverage Test)
RQ3 : Metode pengajaran mana Siswa menganggap kegiatan yang
yang paling membantu siswa ? melibatkan praktisi sangat membantu.
Diantaranya, mahasiswa yang menganggap
metode praktisi ini membantu adalah 72%
dari peserta. Di sisi lain, yang menganggap
semua metode membantu hanya 32% dari
peserta; 38% netral, dan 30% tidak
menganggap semua metode membantu.

6. Kesimpulan
Pengujian perangkat lunak adalah disiplin ilmu yang penting dalam setiap
kurikulum Rekayasa Perangkat Lunak. Kesalahan – kesalahan yang dilakukan
harus terus di eksplorasi karena itu merupakan tantangan yang dihadapi ketika
mempelajari pengujian perangkat lunak. Penulis berharap, penelitian ini dapat terus
dilanjutkan, supaya kedepannya dapat menjadi lebih baik lagi.

46
RANGKUMAN
JURNAL KEDUA
1. Identitas Jurnal
Jurnal kedua pada rangkuman jurnal ini, dirangkum oleh Veri Husaeni
dengan identitas jurnal sebagai berikut :
Reviewer : Veri Husaeni
Judul Jurnal : The Oracle Problem in Software Testing: A Survey
Nama Jurnal : IEEE Transactions On Software Engineering,
Vol.41,No.5
Penulis : Earl T. Barr, et.al.
Tahun : 2015
Kata Kunci : Test oracle, automatic testing, testing formalism
Jumlah Halaman : 19 halaman
2. Latar Belakang Jurnal
Banyak pengerjaan pada pengujian perangkat lunak berusaha untuk
mengotomatisasi sebanyak proses uji praktis yang diinginkan, untuk membuat
pengujian lebih cepat, lebih murah, dan lebih handal. Untuk tujuan ini, diperlukan
adanya Oracle Test, prosedur yang membedakan antara perilaku benar dan salah
dari Sistem Under Test (SUT).
Namun, jika dibandingkan banyaknya aspek pada otomatisasi tes, masalah
yang signifikan saat ini adalah otomatisasi Oracle Test kurang mendapat perhatian.
3. Rumusan Masalah
Masalah yang terjadi saat ini adalah bagaimana cara mengatasi hambatan
yang signifikan yang menghambat otomatisasi tes yang lebih besar dan penyerapan
metode pengujian otomatis dan alat dalam skala yang lebih besar.
4. Metodologi Penelitian
Selama 30 tahun terakhir, banyak metode dan formalisme yang dilakukan
untuk pengujian berdasarkan spesifikasi formal telah dikembangkan. Metode
tersebut masuk kedalam empat kategori besar yaitu; model-based specification
languages, state transition systems, assertions and contracts, dan algebraic
specifications.

47
Model-based specification languages menentukan model dan sintaks yang
mendefinisikan perilaku yang diinginkan dalam hal efeknya pada model. state
transition systems fokus pada pemodelan reaksi sistem terhadap rangsangan,
disebut sebagai “transisi” dalam formalisme tertentu. Assertions and contracts dari
bahasa spesifikasi yang disisipkan dengan pernyataan dari bahasa pemikiran yang
di implementasikan dan diperiksa saat runtime. Algebraic specifications
menentukan persamaan atas operasi program yang memegang ketika program
sudah benar.
5. Hasil dan Pembahasan
Implicit Test Oracle adalah salah satu yang biasa digunakan dalam pengujian
perangkat lunak, pengetahuan implisit untuk membedakan antara sistem perilaku
yang benar dan salah. pengetahuan implisit umumnya benar ini mencakup fakta -
fakta seperti “buffer overflows dan segfaults hampir selalu error”. Aspek penting
dari sebuah Implicit Test Oracle tidak memerlukan pengetahuan domain atau
spesifikasi formal untuk melaksanakan, dan itu berlaku untuk hampir semua
program.
Semua pendekatan untuk meringankan SDM secara kualitatif masalah
rancangan anggaran, yaitu dengan menggabungkan pengetahuan manusia untuk
meningkatkan pemahaman kasus uji. Tiga pendekatan yang dibahas adalah :
a. menambah suite tes yang dirancang oleh pengembang;
b. menghitung input "realistis" dari halaman web, web service, dan bahasa
alamiah; dan
c. menambang pola penggunaan untuk mereplikasikannya dalam ujian
kasus.
6. Kesimpulan
Penelitian yang telah dilakukan menggunakan Test Oracle sebagai acuan
untuk memperoleh data serta pendapat dari orang-orang mengenai seberapa baik
program ini telah diuji (semacam cakupan oracle test) dan langkah - langkah yang
telah dibuat seperti menilai kualitas dari pernyataan. Banyak pekerjaan yang perlu
dilakukan, seperti “Oracle Matrix” adalah sebuah tantangan, dan kesempatan untuk,
“Software Matrix” agar lebih dikenal di masyarakat.

48
RANGKUMAN
JURNAL KETIGA
1. Identitas Jurnal
Jurnal ketiga pada rangkuman jurnal ini, dirangkum oleh Farhan Ali
Abidin dengan identitas jurnal sebagai berikut :
Reviewer : Farhan Ali Abidin
Judul Jurnal : Testing Stochastic Software using Pseudo-Oracles
Nama Jurnal :-
Penulis : Matthew Patrick, et.al.
Tahun : 2017
Kata Kunci : computational models; testing; search-based
optimisation
Jumlah Halaman : 12 halaman
2. Latar Belakang Jurnal
Stochastic model yang digunakan untuk menginformasikan keputusan
penting pada berbagai macam topik, mulai dari keuangan dan perawatan kesehatan
sampai epidemiologi dan konflik, serta di daerah - daerah penting lainnya dalam
industri dan ilmu pengetahuan . Lebih dari setengah dari ilmuwan mengembangkan
perangkat lunak lebih banyak dilakukaan saat ini daripada yang mereka lakukan 10
tahun yang lalu. Dalam survei terbaru, 70% peneliti dari bidang ilmu biologi,
matematika dan fisika mengatakan mereka mengembangkan perangkat lunak
sebagai bagian dari pekerjaan mereka dan 80% menyatakan tidak mungkin untuk
melakukan pekerjaan mereka tanpa perangkat lunak tersebut. Para ilmuwan harus
memiliki keyakinan yang kuat dalam hal itu, karena dengan adanya perangkat lunak
membuat prediksi dari penelitian mereka memiliki nilai keakuratan yang tinggi.
Jurnal ini memperkenalkan teknik baru untuk menguji stokastik model
komputasi dengan menerapkan optimasi berbasis pencarian ke nilai parameter dari
beberapa implementasi independen (dikembangkan oleh orang yang berbeda),
untuk memaksimalkan perbedaan dalam output mereka. Teknik ini didasarkan pada
konsep pseudo-oracle (juga dikenal sebagai pengujian diferensial, pengkodean
ganda dan pemrograman versi-N).

49
3. Rumusan Masalah
Masalah yang mendasari penelitian ini adalah bagaimana caranya untuk
membuat suatu teknik baru untuk menguji stokastik model komputasi dengan cara
menerapkan optimasi berbasis pencarian ke nilai parameter dari beberapa
implementasi independen, untuk memaksimalkan perbedaan dalam output yang
diperoleh.
4. Metodologi Penelitian
Eksperimen dilakukan dengan menggunakan dua model, yaitu : Model SEIR
yang sederhana dan model SECI HLB yang lebih maju. Untuk masing-masing
model ini, peneliti menerapkan optimasi berbasis pencarian untuk meminimalkan
nilai p untuk berbagai tes statistik (AUC, waktu puncak, host puncak dan total host).
Dengan kata lain, peneliti memaksimalkan perbedaan antara distribusi deret
waktu untu setiap implementasi. Peneliti menyajikan beberapa pertanyaan tentang
efektivitas teknik pseudo-oracle berbasis pencarian, pertanyaannya antara lain :
a. RQ1: Dapatkah metrik perbandingan seri waktu mengungkapkan
perbedaan kecil antara implementasi ?
b. RQ2: Apakah teknik berbasis pencarian lebih efektif untuk menemukan
perbedaan daripada pengujian secara acak ?
c. RQ3: Apakah teknik berbasis pencarian mampu memberikan perbedaan
antara implementasi nyata dari suatu model ?
Dari pertanyaan – pertanyaan diatas tadi, peneliti harus menemukan
jawabannya melalui penelitian yang akan dilakukan oleh peneliti jurnal ini yang
mana nanti akan dibahas di bagian hasil dan pembahasan.
5. Hasil dan Pembahasan
Setelah melalui penelitian yang telah dilakukan oleh peneliti. Akhirnya dapat
diperoleh kesimpulan serta jawaban dari pertanyaan – pertanyaan yang diajukan
tadi. Hasil/jawaban dari pertanyaan diatas adalah sebagai berikut :
a. RQ1 dievaluasi dengan secara sengaja memperkenalkan perbedaan ke
dalam implementasi SEIR melalui sedikit peningkatan ke ß atau ɤ.
Tujuannya adalah untuk mengetahui apakah teknik kami dapat
mengidentifikasi perbedaan kecil dan dapatkan wawasan tentang ukuran

50
dan jenis perbedaan yang dapat dideteksi. Peneliti mengumpulkan statistik
dari 100 simulasi untuk setiap peningkatan pada setiap parameter dan catat
distribusi nilai p minimum yang dihasilkan oleh tes Kolmogorov-Smirnov.
Dimungkinkan juga untuk menghitung positif palsu/negatif dengan
memperkenalkan ambang batas (mis. p <0:05), peneliti merencanakan
distribusi nilai-p. Peningkatan yang lebih besar menghasilkan nilai-p
variabel yang lebih rendah dan lebih sedikit (as dapat dibandingkan
dengan model asli dengan kenaikan 0%). Ini menunjukkan teknik ini dapat
mendeteksi perbedaan dan menyediakan informasi yang dapat digunakan
oleh pencarian.
b. Peneliti mengevaluasi RQ2 dengan membandingkan kemajuan optimisasi
evolusioner (CMA-ES) dengan pencarian acak. Kedua pendekatan
diterapkan untuk menemukan nilai-nilai parameter input yang membuat
perbedaan yang dihasilkan (ketika meningkat sebesar 0,1%) lebih jelas,
mulai dari nilai awal (ß = 0: 003, ɤ = 1 dan ɥ = 1) yang digunakan dalam
pertanyaan sebelumnya. Batas bawah setiap parameter dalam pencarian
adalah 0; batas atas adalah 0,006 untuk ß, dan 2 untuk ɤ dan ɥ.
Menunjukkan teknik berbasis pencarian untuk menjadi sedikit lebih cepat
dalam mencapai nilai-p rendah untuk peningkatan daripada pencarian
acak.
c. RQ1 dievaluasi dengan menerapkan teknik pseudo-oracle berbasis
pencarian pada output dari dua implementasi nyata bersama dengan kode
pembungkus (M1 dan M2) dari model yang digunakan untuk membuat
keputusan kebijakan untuk HLB, seperti yang digunakan oleh seorang
ilmuwan yang belajar menggunakan kedua implementasi ini. Sekali lagi,
peneliti menekankan perbedaan antara M1 dan M2 bukan kesalahan dalam
kode asli, tetapi lebih merupakan perbedaan yang berkaitan dengan
pengaturan model, format output, dan kode konversi yang ditulis oleh
ilmuwan yang mempelajari cara menggunakan kedua implementasi ini.

51
6. Kesimpulan
Pada jurnal ini, peneliti telah menyajikan teknik baru untuk menguji
stochastic software, menggunakan optimisasi berbasis pencarian dan pseudo-
oracle. Optimalisasi dilakukan untuk menemukan parameter input yang output nya
distribusikan. Implementasinya berbeda, sehingga penyebab perbedaan ini dapat
ditentukan. Peneliti mengidentifikasi perbedaan dan mengarahkan pencarian
dengan menerapkan tes Kolmogorov-Smirnov ke set statistik ringkasan, yang
berasal dari output deret waktu.

52

Anda mungkin juga menyukai