140
i PENERAPAN ALGORITMA FISHER-YATES SHUFFLE PADA GAME KUIS PEMBELAJARAN AGAMA ISLAM MENGGUNAKAN ARSITEKTUR REPRESENTATIONAL STATE TRANSFER (REST) WEB SERVICE Diajukan sebagai salah satu syarat penulisan tugas akhir Oleh: Irwan 1127050078 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERISUNAN GUNUNG DJATI BANDUNG 2016

PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

  • Upload
    ngoque

  • View
    227

  • Download
    7

Embed Size (px)

Citation preview

Page 1: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

i

PENERAPAN ALGORITMA FISHER-YATES SHUFFLE PADA GAME

KUIS PEMBELAJARAN AGAMA ISLAM MENGGUNAKAN

ARSITEKTUR REPRESENTATIONAL STATE TRANSFER

(REST) WEB SERVICE

Diajukan sebagai salah satu syarat penulisan tugas akhir

Oleh:

Irwan

1127050078

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERISUNAN GUNUNG DJATI

BANDUNG

2016

Page 2: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

KATA PENGANTAR

حيم حمن الر الر بسم الله

Dengan mengucapkan rasa syukur kehadirat Allah SWT. yang telah

memberikan berkat rahmat dan karunia-Nya kepada kita semua, atas nikmat dan

hidayah-Nya penulis dapat menyelesaikan penyusunan laporan Tugas Akhir yang

berjudul “PENERAPAN ALGORITMA FISHER-YATES SHUFFLE PADA

GAME KUIS PEMBELAJARAN AGAMA ISLAM MENGGUNAKAN

ARSITEKTUR REPRESENTATIONAL STATE TRANSFER (REST) WEB

SERVICE”.

Penyusunan laporan ini dimaksudkan untuk menempuh ujian akhir pada

jurusan S1 Teknik Informatika, Fakultas Sains dan Teknologi, Universitas Islam

Negeri Sunan Gunung Djati Bandung.

Penulis menyadari bahwa penyusunan laporan ini tidak lepas dari kendala

dan kesulitan. Namun banyak pihak yang telah membantu dalam penyusunan

laporan ini. Oleh karena itu, dalam kesempatan ini, penulis tidak lupa mengucapkan

terima kasih kepada :

1. Allah SWT. yang telah melindungi dan memberikan kelancaran,

rahmat, hidayah dan karunia-Nya.

Page 3: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

2. Kedua orang tua yang telah mendukung dan meridhoi baik secara moril

maupun materiil yang sangat berarti bagi penulis.

3. Bapak Dr. Opik Taupik Kurahman selaku Dekan Fakultas Sains dan

Teknologi Universitas Islam Negeri Sunan Gunung Djati Bandung.

Page 4: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

iv

4. Bapak Mohamad Irfan, S.T., M.Kom, selaku Ketua Jurusan Teknik

Informatika yang telah memberikan kesempatan dan dukungannya

kepada penulis dalam penyusunan laporan Tugas Akhir ini.

5. Bapak Jumadi, S.T., M.Cs, selaku dosen pembimbing akademik yang

telah memberikan dukungannya dan membimbing penulis dari awal

semester hingga saat ini.

6. Bapak Yana Aditia Gerhana, S.T., M.Kom dan Bapak Gitarja Sandi,

S.T., M.T, yang telah bersedia menjadi pembimbing penulis dan

membimbing dengan baik dengan arahan dan motivasinya yang luar

biasa hingga penulis dapat menyelesaikan laporan Tugas Akhir ini

dengan baik dan lancar.

7. Bapak H. Cecep Nurul Alam, S.T., M.T. dan Bapak Khaerul Manaf,

S.T., M.Kom. selaku dosen penguji sidang skripsi yang telah

memberikan pengarahan dan kritik yang membangun untuk perbaikan

skripsi ini.

8. Dosen-dosen Teknik Informatika UIN Sunan Gunung Djati Bandung

selama perkuliahan telah memberikan ilmu dan pengetahuannya kepada

penulis.

9. Teman-teman angkatan 2012 khususnya IF-B, sahabat seperjuangan

dari awal berjumpa yang selalu membantu.

10. Sahabat demisioner HIMATIF periode 2013-2014 khususnya bidang

ADFOKOM dan pengurus HIMATIF angkatan 2012 serta kawan HMI

Komisariat Sains dan Teknologi.

Page 5: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

v

11. Teman seperjuangan penulis selama mengerjakan Tugas Akhir ini yang

berjuang bersama-sama dalam melaksanakan dan menyusun laporan

Tugas Akhir ini.

12. Dan semua pihak yang tidak dapat disebutkan satu per satu yang telah

membantu dalam penyusunan laporan Tugas Akhir ini.

Penulis menyadari bahwa laporan ini jauh dari kata sempurna dan dalam

pembuatannya masih banyak sekali kekurangan, karena kesempurnaan hanya

milik Allah SWT. Oleh karena itu, segala bentuk kritik dan saran dari pembaca

guna untuk kesempurnaan laporan ini kedepannya.

Bandung, Desember 2016

Irwan

1127050078

Page 6: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

vi

ABSTRAK

PENERAPAN ALGORITMA FISHER-YATES SHUFFLE PADA GAME

KUIS PEMBELAJARAN AGAMA ISLAM MENGGUNAKAN

ARSITEKTUR REPRESENTATIONAL STATE TRANSFER

(REST) WEB SERVICE

Oleh:

Irwan

1127050078

Kuis Islami adalah aplikasi pembelajaran dengan cakupan materi agama Islam,

terdiri dari empat kategori yaitu Akidah Akhlak, Al-Qur’an Haidist, Fiqih, dan

Sejarah Kebudayaan Islam. Dalam menu latihan soal, terdapat soal dengan format

empat pilihan ganda. Pengguna cukup memilih salah satu pilihan ganda tersebut

yang pengguna anggap benar dengan soal yang ada. Tujuan dari pembangunan

aplikasi ini selain sebagai media hiburan juga sebagai media pembelajaran dan

pelatihan daya ingat untuk pengguna permainan (user). Untuk membuat aplikasi

Kuis Islami ini, penulis menggunakan REST Web Services sebagai arsitektur

pertukaran data antara client (mobile) dengan server, serta menggunakan algoritma

Fisher Yates Shuffle sebagai fungsi pengacakan pada pilihan ganda yang terdapat

pada soal latihan (evaluasi). Pengujian dilakukan dengan pendekatan kotak hitam

(black box) untuk menguji masing-masing fungsionalitas sistem. Setelah pengujian

berhasil dilakukan, maka dapat disimpulkan bahwa web service dengan arsitektur

REST yang dibangun dapat berjalan dengan baik pada aplikasi perangkat Android

dan dapat melakukan pertukaran data yang diminta serta mengirimkan hasil data

respon ke aplikasi pengguna dalam format objek JSON, dan Penerapan Algoritma

Fisher-Yates Shuffle berhasil diterapkan dalam kuis ini untuk menentukan solusi

pengacakan yang tidak berganda dan pengacakan objek yang variatif berdasarkan

hasil pengujian sebanyak sepuluh kali percobaan.

Kata Kunci : Fisher Yates Shuffle, Kuis Islami, Pembelajaran Islam, REST Web

Services

Page 7: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

vii

ABSTRACT

The Implementation of Fisher-Yates Shuffle Algorithm on Learning Islam

Game Quizzes Using Representational State Transfer

(REST) Web Service Architecture

by:

Irwan

1127050078

Islamic Quiz is a learning application with the material scope of Islam, consists of

four categories: Morals Aqeedah Al-Qur'an Haidist, Fiqh and Cultural History of

Islam. In the menu of exercises, there are questions with four multiple-choice

format. Users simply select one of the multiple choice that users consider correct

the problems that exist. The purpose of this application development than as a

medium of entertainment as well as a medium of learning and memory training for

game users (user). To make the application of Islamic Quiz, the author uses REST

Web Services as the architecture of the data exchange between the client (mobile)

to the server, as well as using Fisher Yates Shuffle algorithm as a function of

randomization on a multiple-choice practice questions contained in (evaluation).

Testing is done with a black box approach (black box) to test each system

functionality. After the test is successful, it can be concluded that the web service

with the REST architecture that was built to run well on the applications Android

devices and can exchange data requested and send the result of the response data

to the user application in a format JSON objects, and Implementation of Algorithms

Fisher-Yates shuffle successfully applied in this quiz to determine which solution

randomization and randomization were not multiple objects of varied based on test

results as much as ten times the experiment.

Keywords : Fisher-Yates Shuffle Algorithm, Islamic Learning, Islamic Quiz, REST

Web Services

Page 8: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

viii

DAFTAR ISI

KATA PENGANTAR ............................................................................................ i

ABSTRAK ............................................................................................................ vi

ABSTRACT .......................................................................................................... vii

DAFTAR ISI ....................................................................................................... viii

DAFTAR GAMBAR ............................................................................................ xi

DAFTAR TABEL ............................................................................................... xv

DAFTAR LAMPIRAN ..................................................................................... xvii

BAB I PENDAHULUAN ...................................................................................... 1

1.1 Latar Belakang Masalah ........................................................................... 1

1.2 Rumusan Masalah .................................................................................... 4

1.3 Tujuan ....................................................................................................... 4

1.4 Batasan Masalah ....................................................................................... 4

1.5 Metodologi Penelitian .............................................................................. 5

1.5.1 Tahap Pengumpulan Data ................................................................. 5

1.5.2 Metode Pengembangan Perangkat Lunak ......................................... 6

1.6 Kerangka Pemikiran ................................................................................. 8

1.7 Sistematika Penulisan ............................................................................... 9

BAB II LANDASAN TEORI ............................................................................. 11

2.1 Landasan Teori ....................................................................................... 11

2.1.1 Web Services ................................................................................... 11

2.1.2 REST ................................................................................................ 12

2.1.3 Fisher-Yates Shuffle ........................................................................ 18

2.1.4 Game ............................................................................................... 21

2.1.5 Pembelajaran ................................................................................... 21

2.1.6 Pembelajaran Agama Islam............................................................. 26

2.1.7 Android ........................................................................................... 27

2.1.8 Web Framework .............................................................................. 28

2.1.9 Teknik Pengujian ............................................................................ 30

Page 9: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

ix

2.2 Tinjauan Pustaka .................................................................................... 31

2.2.1 The State of The Art ........................................................................ 31

BAB III ANALISIS DAN PERANCANGAN ................................................... 42

3.1 Inception (Permulaan) ............................................................................ 42

3.2 Analisis Masalah .................................................................................... 42

3.3 Analisis Sistem ....................................................................................... 43

3.3.1 Gambaran Umum Sistem ................................................................ 43

3.3.2 Fungsi Utama Sistem ...................................................................... 44

3.3.3 Arsitektur Sistem ............................................................................. 45

3.3.4 Arsitektur Aplikasi .......................................................................... 45

3.4 Analisis Kebutuhan Sistem .................................................................... 46

3.4.1 Spesifikasi Perangkat Keras ............................................................ 46

3.4.2 Spesifikasi Perangkat Lunak ........................................................... 47

3.4.3 Spesifikasi Pengguna ...................................................................... 48

3.4.4 Analisis Kebutuhan Data................................................................. 48

3.5 Analisis Arsitektur REST Web Services ................................................. 49

3.5.1 Analisis REST ................................................................................ 49

3.5.2 Dokumentasi API ............................................................................ 50

3.5.3 Flowchart Arsitektur REST Web Services pada Aplikasi ............... 51

3.6 Analisis Algoritma Fisher Yates Shuffle ................................................ 52

3.7 Elaboration (Perluasan/Perencanaan) .................................................... 56

3.7.1 Model Bisnis dan Kebutuhan .......................................................... 56

3.7.2 Analisis Kebutuhan dan Pembangunan Sistem ............................... 56

3.7.3 Perancangan Sistem ........................................................................ 57

BAB IV IMPLEMENTASI DAN PENGUJIAN .............................................. 90

4.1 Construction (Konstruksi) ...................................................................... 90

4.2 Implementasi Sistem .............................................................................. 90

4.3 Perangkat Pendukung ............................................................................. 90

4.3.1 Perangkat Keras .............................................................................. 91

4.3.2 Perangkat Lunak.............................................................................. 92

4.4 Implementasi Database .......................................................................... 92

4.4.1 Implementasi Tabel Materi ............................................................. 92

4.4.2 Implementasi Tabel Kuis ................................................................ 93

Page 10: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

x

4.4.3 Implementasi Tabel Notifikasi ........................................................ 94

4.4.4 Implementasi Tabel Admin ............................................................. 94

4.5 Implementasi Antar Muka ...................................................................... 95

4.5.1 Implementasi Antar Muka Server (Admin) ..................................... 95

4.5.2 Implementasi Antar Muka Client Side (User) ................................ 99

4.6 Pengujian Sistem .................................................................................. 105

4.6.1 Pengujian Interface (Antar Muka) ................................................ 105

4.6.2 Pengujian Pengacakan soal dengan Algoritma Fisher Yattes ....... 113

4.6.3 Pengujian REST (Representational State Transfer) Web Services 116

4.7 Transition (Transisi) ............................................................................. 118

BAB V PENUTUP ............................................................................................. 119

5.1 Kesimpulan ........................................................................................... 119

5.2 Saran ..................................................................................................... 120

DAFTAR PUSTAKA ........................................................................................ 121

Page 11: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xi

DAFTAR GAMBAR

Gambar 1. 1 Mindmap proses analisis kebutuhan sistem. ...................................... 6

Gambar 1. 2 Proses penspesifikasian fitur aplikasi dan tampilan . ......................... 7

Gambar 1. 3 Kerangka pemikiran. .......................................................................... 8

Gambar 2. 1 Analogi proses request pada SOAP dan REST . ............................... 16

Gambar 2. 2 Skema SOAP dan REST Web Services . ........................................... 17

Gambar 2. 3 Skema perbandingan proses SOAP dan REST Web Service . .......... 18

Gambar 2. 4 Pseudocode Algoritma Fisher Yates. ............................................... 20

Gambar 2. 5 Flowchart Algoritma Fisher Yates . ................................................. 20

Gambar 2. 6 Arsitektur Android . ......................................................................... 28

Gambar 3. 1 Arsitektur sistem. ............................................................................. 45

Gambar 3. 2 Arsitektur sistem. ............................................................................. 46

Gambar 3. 3 Dokumentasi API kuis. ..................................................................... 50

Gambar 3. 4 Dokumentasi API materi. ................................................................. 51

Gambar 3. 5 Flowchart Arsitektur REST pada aplikasi. ....................................... 52

Gambar 3. 6 Flowchart Algoritma Fisher Yates. .................................................. 53

Gambar 3. 7 Kondisi awal sebelum diacak. .......................................................... 54

Gambar 3. 8 Simulasi Pengacakan Algoritma Fisher Yates Range 1-4. ............... 54

Gambar 3. 9 Simulasi Pengacakan Algoritma Fisher Yates Range 1-3. ............... 55

Gambar 3. 10 Simulasi Pengacakan Algoritma Fisher Yates Range 1-2. ............. 55

Gambar 3. 11 Use Case Diagram Sistem. ............................................................. 57

Gambar 3. 12 Activity diagram proses web services. ............................................ 66

Gambar 3. 13 Activity diagram mengelola data materi. ........................................ 67

Page 12: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xii

Gambar 3. 14 Activity diagram mengelola data kuis. ........................................... 68

Gambar 3. 15 Activity diagram membuat push notifikasi..................................... 69

Gambar 3. 16 Activity diagram mengelola data admin. ........................................ 70

Gambar 3. 17 Activity diagram memilih materi.................................................... 71

Gambar 3. 18 Activity diagram mengerjakan kuis. ............................................... 72

Gambar 3. 19 Activity diagram melihat skor. ....................................................... 72

Gambar 3. 20 Activity diagram memilih tentang. ................................................. 73

Gambar 3. 21 Class diagram server side. ............................................................. 74

Gambar 3. 22 Class diagram client side. .............................................................. 74

Gambar 3. 23 Sequence diagram mengelola data materi. ..................................... 75

Gambar 3. 24 Sequence diagram mengelola data kuis. ........................................ 76

Gambar 3. 25 Sequence diagram membuat push notifikasi. ................................. 77

Gambar 3. 26 Sequence diagram mengelola data admin. ..................................... 77

Gambar 3. 27 Sequence diagram memilih materi. ................................................ 78

Gambar 3. 28 Sequence diagram memilih kuis. ................................................... 79

Gambar 3. 29 Sequence diagram melihat skor. .................................................... 79

Gambar 3. 30 Sequence diagram memilih tentang. .............................................. 80

Gambar 3. 31 Halaman login admin. .................................................................... 82

Gambar 3. 32 Halaman dashboard. ...................................................................... 83

Gambar 3. 33 Halaman status materi. ................................................................... 83

Gambar 3. 34 Halaman detail materi. ................................................................... 83

Gambar 3. 35 Halaman tambah materi. ................................................................ 84

Gambar 3. 36 Halaman edit materi. ...................................................................... 84

Gambar 3. 37 Halaman hapus materi. ................................................................... 84

Page 13: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xiii

Gambar 3. 38 Halaman status kuis. ....................................................................... 85

Gambar 3. 39 Halaman detail kuis. ....................................................................... 85

Gambar 3. 40 Halaman tambah kuis. .................................................................... 85

Gambar 3. 41 Halaman edit kuis. .......................................................................... 86

Gambar 3. 42 Halaman hapus kuis. ...................................................................... 86

Gambar 3. 43 Halaman push notifikasi. ................................................................ 86

Gambar 3. 44 Halaman setting/edit admin ............................................................ 87

Gambar 3. 45 Halaman menu utama. .................................................................... 87

Gambar 3. 46 Halaman kategori materi. ............................................................... 88

Gambar 3. 47 Halaman detail materi. ................................................................... 88

Gambar 3. 48 Halaman kategori kuis. ................................................................... 88

Gambar 3. 49 Halaman kuis. ................................................................................. 89

Gambar 3. 50 Halaman skor.................................................................................. 89

Gambar 3. 51 Halaman exit dialog. ...................................................................... 89

Gambar 4. 1 Tabel Materi. .................................................................................... 93

Gambar 4. 2 Tabel Kuis. ....................................................................................... 93

Gambar 4. 3 Tabel Notifikasi. ............................................................................... 94

Gambar 4. 4 Tabel Admin. .................................................................................... 94

Gambar 4. 5 Tampilan Halaman Login. ................................................................ 95

Gambar 4. 6 Tampilan Halaman Dashboard. ....................................................... 96

Gambar 4. 7 Tampilan Halaman Menu Materi. .................................................... 96

Gambar 4. 8 Tampilan Halaman Menu Kuis. ....................................................... 97

Gambar 4. 9 Tampilan Halaman Push Notifikasi. ................................................ 98

Gambar 4. 10 Tampilan Halaman Setting. ............................................................ 98

Page 14: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xiv

Gambar 4. 11 Tampilan Halaman Splash Screen.................................................. 99

Gambar 4. 12 Tampilan Halaman Menu Utama. ................................................ 100

Gambar 4. 13 Tampilan Halaman Menu Materi. ................................................ 101

Gambar 4. 14 Tampilan Halaman Menu Detail Materi. ..................................... 102

Gambar 4. 15 Tampilan Halaman Menu Kuis. ................................................... 103

Gambar 4. 16 Tampilan Halaman Game Play Kuis. ........................................... 104

Gambar 4. 17 Tampilan Halaman Skor............................................................... 104

Gambar 4. 18 Tampilan Halaman Menu Tentang. .............................................. 105

Gambar 4. 19 Screenshot source code Algoritma Fisher Yates Shuffle. ............ 114

Gambar 4. 20 Pengujian request data materi dengan method GET. ................... 116

Gambar 4. 21 Screenshot source code resource data materi. ............................. 117

Gambar 4. 22 Pengujian request data kuis dengan method GET. ...................... 117

Gambar 4. 23 Screenshot source code resource data kuis. ................................ 118

Page 15: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xv

DAFTAR TABEL

Tabel 2. 1 Method pada HTTP request serta implementasinya pada REST. ......... 15

Tabel 2. 2 Contoh Perhitungan Algoritma Fisher Yates. ...................................... 19

Tabel 2. 3 Tabel State Of The Art. ........................................................................ 35

Tabel 2. 4 Tabel perbandingan state of the art...................................................... 40

Tabel 3. 1 Spesifikasi Perangkat Keras ................................................................. 47

Tabel 3. 2 Spesifikasi Pengguna ........................................................................... 48

Tabel 3. 3 Contoh perhitungan Fisher Yates Shuffle............................................. 56

Tabel 3. 4 Skenario use case memilih materi. ...................................................... 58

Tabel 3. 5 Skenario use case mengerjakan latihan. .............................................. 59

Tabel 3. 6 Skenario use case menghitung skor. .................................................... 60

Tabel 3. 7 Skenario use case memilih tentang. ..................................................... 61

Tabel 3. 8 Skenario use case mengelola data materi. ........................................... 61

Tabel 3. 9 Skenario use case mengelola data kuis. ............................................... 62

Tabel 3. 10 Skenario use case mengacak soal. ..................................................... 63

Tabel 3. 11 Skenario use case membuat push notifikasi. ..................................... 64

Tabel 3. 12 Skenario use case mengelola data admin. .......................................... 65

Tabel 3. 13 Skenario use case proses web services. ............................................. 66

Tabel 3. 14 Perancangan tabel materi. .................................................................. 80

Tabel 3. 15 Perancangan tabel kuis. ...................................................................... 81

Tabel 3. 16 Perancangan tabel push notifikasi. ..................................................... 81

Tabel 3. 17 Perancangan tabel admin. .................................................................. 82

Tabel 4. 1 Spesifikasi perangkat keras server. ...................................................... 91

Page 16: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xvi

Tabel 4. 2 Spesifikasi perangkat keras client. ....................................................... 91

Tabel 4. 3 Uji skenario halaman login. ............................................................... 106

Tabel 4. 4 Uji skenario halaman dashboard. ...................................................... 106

Tabel 4. 5 Uji skenario halaman menu materi. ................................................... 107

Tabel 4. 6 Uji skenario halaman menu kuis ........................................................ 108

Tabel 4. 7 Uji skenario halaman push notifikasi. ................................................ 109

Tabel 4. 8 Uji skenario halaman setting. ............................................................. 109

Tabel 4. 9 Uji skenario halaman splash screen. .................................................. 110

Tabel 4. 10 Uji skenario halaman menu utama. .................................................. 110

Tabel 4. 11 Uji skenario halaman menu materi. ................................................. 111

Tabel 4. 12 Uji skenario halaman menu kuis. ..................................................... 112

Tabel 4. 13 Uji skenario halaman menu game play kuis. .................................... 112

Tabel 4. 14 Uji skenario halaman menu skor. ..................................................... 113

Tabel 4. 15 Uji skenario halaman menu tentang aplikasi. .................................. 113

Tabel 4. 16 Pengujian Pengacakan soal dengan Algoritma Fisher Yattes. ......... 114

Tabel 4. 17 Pengujian Pengacakan dengan random generator. .......................... 115

Page 17: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

xvii

DAFTAR LAMPIRAN

LAMPIRAN A : Source Code

LAMPIRAN B : Sample Kuesioner Pembelajaran Agama Islam

LAMPIRAN C : Surat Keputusan (SK) Tugas Akhir/Skripsi

LAMPIRAN D : Lembar Bimbingan Skripsi

Page 18: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Permainan atau Game adalah salah satu media hiburan yang sangat popular

dikalangan masyarakat. Game menjadi pilihan sebagian masyarakat untuk

menghilangkan kejenuhan atau hanya untuk mengisi waktu luang [1].

Namun dewasa ini banyak game yang masih menonjolkan nilai hiburan tanpa

adanya nilai edukasi atau pembelajaran di dalamnya. Banyak pemain game (gamer)

mendapat dampak serius dari aktivitas ini. Data dari penelitian di Amerika serikat

menyatakan 1 dari 10 gamer (85%) mengalami gangguan kehidupan sosial, prestasi

belajar, sekolah dan juga pekerjaan bagi orang dewasa. Beberapa penelitian di Cina

(10,3 %), Australia (8,0 %), Jerman (11,9 %),Taiwan (7,5 %), dan Singapura (7,6-

9,9%) juga menunjukan hasil yang serupa [2].

Sifat dasar game yang menantang (challenging), membuat ketagihan

(addicted) dan menyenangkan (fun) bagi mereka yang menyukainya. Namun

permainan modern ini dapat berdampak negatif apabila yang dimainkan adalah

game yang tidak bersifat edukasional [3]. Untuk itu perlu adanya nilai edukatif pada

game, agar user atau pemain tidak hanya mendapatkan nilai hiburan saja, tetapi juga

bisa mendapatkan nilai edukasi atau pengetahuan dari game tersebut.

Dalam tugas akhir ini saya mengambil tema game kuis pembelajaran agama

islam, selain untuk hiburan, game ini mempunyai misi utama untuk menambah

pengetahuan mengenai pendidikan agama islam, karena pendidikan agama islam

merupakan pendidikan yang sangat penting bagi seluruh umat islam, tujuan dari

pembelajaran agama islam diantaranya meningkatkan keimanan, pemahaman,

Page 19: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

2

penghayatan dan pengamalan tentang agama islam, sehingga menjadi manusia

muslim yang beriman dan bertaqwa kepada Allah SWT serta berakhlak mulia

dalam kehidupan pribadi, bermasyarakat, berbangsa dan bernegara [4].

Pemilihan materi pembelajaran agama islam ini tentunya tak lepas dari masalah

yang ada saat ini, dimana berdasarkan kuesioner yang dilakukan terhadap total 25

siswa pada tingkat SLTA mengenai materi pembelajaran agama islam, didapatkan

hasil hanya sebesar 13% saja pertanyaan yang dapat dijawab dengan benar dari total

keseluruhan siswa, artinya pembelajaran yang dilaksanakan dinilai masih kurang

maksimal. Melihat dari masalah tersebut, tentu harus terdapat suatu perubahan

untuk dapat mendukung dalam memaksimalkan pembelajaran agama islam.

Maka dari itu dalam pembuatan game kuis pembelajaran agama islam ini,

pengguna tidak hanya mendapatkan hiburan saja, tetapi yang paling utama

diharapkan mendapatkan nilai-nilai pengetahuan agama islam di dalamnya, dan

memaksimalkan pembelajaran yang telah dilakukan sebelumnya, sehingga

kemudian bisa menjadi pengetahuan baru dan bisa diterapkan pada kehidupan

sehari-hari.

Sebelumnya terdapat penelitian yang memiliki beberapa kesaamaan dengan

penelitian ini, beberapa penelitian tersebut diantaranya berkaitan dengan

pembuatan media pembelajaran dengan konsep game pembelajaran, dimana dalam

proses pengelolaan data, masih menitikberatkan pada penggunaan data statis (lokal)

untuk kemudian data tersebut digunakan sebagai resource data pada aplikasi, hal

tersebut tentunya membuat materi dan soal pada media pembelajaran tersebut tidak

dapat dikelola dan diperbaharui [5] [6].

Page 20: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

3

Melihat dari penelitian yang telah dilakukan sebelumnya, maka dari itu konsep

media pembelajaran berupa kuis game islami ini nantinya akan menggunakan

konsep client-server menggunakan web service dimana soal-soal akan diupload

pada server dan akan direquest oleh client menggunakan perangkat android,

sehingga soal-soal dapat ditambah bahkan diperbaharui dengan mudah, dan bersifat

dinamis, untuk menerapkannya, digunakan arsitektur REST Web Service.

Penggunaan REST Web Service mendukung penggunaan JSON yang mempercepat

pertukaran data pada sistem sehingga aplikasi akan lebih cepat dan efisien.

Dalam aplikasi juga akan diberikan metode pengacakan soal dengan

menggunakan algoritma Fisher-Yates Shuffle yang merupakan salah satu metode

pengacakan yang baik digunakan dalam pengembangan suatu aplikasi. Kelebihan

Algoritma Fisher-Yates adalah efektifitas dari metode pengacakannya serta

kompleksitas algoritmanya yang optimal [7]. Sehingga pertanyaan yang disediakan

tidak beruntun dan tidak mudah ditebak oleh pengguna yang sudah bermain

sebelumnya. Dengan alasan-alasan tersebut maka saya mengambil judul

“PENERAPAN ALGORITMA FISHER-YATES SHUFFLE PADA GAME

KUIS PEMBELAJARAN AGAMA ISLAM MENGGUNAKAN

ARSITEKTUR REPRESENTATIONAL STATE TRANSFER (REST) WEB

SERVICE”.

Page 21: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

4

1.2 Rumusan Masalah

Setelah mengetahui latar belakang di atas, ada beberapa permasalahan yang

dapat dirumuskan diantaranya:

1. Bagaimana menerapkan algoritma Fisher-Yates Shuffle untuk pengacakan

soal pada game kuis pembelajaran agama islam?

2. Bagaimana menerapkan Arsitektur Representational State Transfer

(REST) Web Services pada game kuis pembelajaran agama islam?

1.3 Tujuan

Berdasarkan perumusan masalah di atas terdapat beberapa tujuan yaitu:

1. Menerapkan algoritma Fisher-Yates Shuffle untuk pengacakan soal pada

game kuis pembelajaran agama islam.

2. Menerapkan Arsitektur Representational State Transfer (REST) Web

Services pada game kuis pembelajaran agama islam.

1.4 Batasan Masalah

Untuk menghindari pembahasan yang terlalu meluas maka membatasi topik

pembahasan yaitu sebagai berikut:

1. Dapat dijalankan pada smartphone berbasis sistem operasi Android

minimal pada platform 4.1 (Jelly Bean).

2. Aplikasi yang dibangun merupakan media pembelajaran dengan konsep

game kuis pembelajaran.

3. REST pada aplikasi digunakan sebagai arsitektur web services (berbasis

client-server), materi dan soal diinputkan oleh admin pada server, dan

Page 22: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

5

user/client meminta/request materi dan soal untuk ditampilkan pada sisi

client/aplikasi.

4. Materi dan soal yang digunakan bersumber dari buku sekolah elektronik

dan LKS pendidikan agama islam Madrasah Aliyah, serta referensi yang

merujuk pada materi pendidikan agama islam.

5. Pada game kuis terdapat empat kategori soal (Fiqih, Al-qur’an hadist,

Akidah akhlak, SKI) masing-masing kategori mempunyai 20 soal secara

acak.

6. Format soal berupa pilihan ganda dengan jumlah 4 pilihan ganda. Batas

skor tertinggi yaitu 100 untuk setiap kategori dan akan ditampilkan langung

setelah latihan kuis selesai.

7. Target pengguna utama dari aplikasi ini adalah kelas 10 SLTA (usia 16-18

tahun).

1.5 Metodologi Penelitian

1.5.1 Tahap Pengumpulan Data

Pengumpulan data dan informasi mengenai berbagai hal yang berkatian dengan

pembangunan aplikasi dan penelitian ini merupakan langkah awal yang akan

dilakukan. Tahap pengumpulan data ini akan dilakukan melalui langkah-langkah

berikut:

a. Studi Literatur

Pada tahap ini akan dilakukan studi terhadap literatur - literatur yang

menunjang pengerjaan skripsi ini khususnya yang berkaitan dengan

pembahasan Algoritma Fisher-Yates Shuffle dan Arsitektur REST Web

Services.

Page 23: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

6

Pengumpulan data dilakukan dengan cara mengumpulkan bacaan -

bacaan yang berkaitan dengan masalah yang diteliti, mempelajari buku -

buku referensi, jurnal, paper, dan bacaan - bacaan lain yang berhubungan

dengan kajian pengerjaan skripsi ini.

b. Observasi

Dengan mencari aplikasi-aplikasi yang memiliki kemiripan fungsi

dan kemudian dilakukan analisa terhadap keunggulan dan kelemahan

aplikasi tersebut agar dapat dijadikan sebuah referensi.

1.5.2 Metode Pengembangan Perangkat Lunak

Dalam pembangunan sistem atau aplikasi ini mengikuti tahapan-tahapan

berdasarkan metode analisa dan perancangan yang digunakan yaitu metode analisa

dan perancangan RUP (Rational Unified Process) dengan ditambah UML (Unified

Modeling Language) sebagai alat untuk pemodelan. Berikut ini tahapan-tahapan

yang dilakukan pada metode RUP:

a. Inception

Pada tahap ini pengembang mendefinisikan batasan kegiatan, dan

juga melakukan analisis kebutuhan dari sistem yang akan dibangun. Tahap

ini merupakan langkah awal dari pengumpulan segala kebutuhan sistem.

Gambar 1. 1 Mindmap proses analisis kebutuhan sistem [8].

Page 24: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

7

b. Elaboration

Pada tahap ini dilakukan peninjauan kembali dari analisa kebutuhan

yang telah dilakukan pada tahap sebelumnya kemudian dilakukan pula

proses perancangan perangkat lunak mulai dari menspesifikasikan fitur

perangkat lunak hingga interface.

Pada tahap ini mulai dibuat perancangan awal berupa coretan -

coretan yang didasarkan untuk melakukan proses perancangan perangkat

lunak mulai dari menspesifikasikan fitur perangkat lunak hingga interface.

Gambar 1. 2 Proses penspesifikasian fitur aplikasi dan tampilan [8].

c. Construction

Pengimplementasian hasil dari perancangan perangkat lunak yang

telah dibuat pada fase sebelumnya dilakukan pada tahap ini. Pembangunan

sistem dilakukan dengan cara pengerjaan setiap modul yang dipecah dan

dikelompokan berdasarkan kebutuhan sistem.

d. Transition

Instalasi, deployment, pengaturan dan pengujian akhir perangkat

lunak dilakukan pada tahap ini.

Page 25: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

8

1.6 Kerangka Pemikiran

Gambar 1. 3 Kerangka pemikiran.

Opportunity

Jumlah pengguna smartphone

bersistem operasi android yang

mencapai satu milyar pengguna

Game merupakan salah satu aplikasi

popular bagi para pengguna android

Masih sedikit media pembelajaran

kuis game yang menggunakan Web

Service untuk proses pertukaran data

yang bisa dimanfaatkan untuk

mengelola soal/konten secara dinamis

Approach

Pembelajaran

Game

Android Application

REST Web Services

Algoritma Fisher-Yates Shuffle

Software Development

Software specification design UML

Software construction: Codeigniter,

Java Development Kit (JDK),

Android Development Tools (ADT)

Software testing: Blackbox testing

Software Implementation

Pengujian Fisher-Yates Shuffle

pada proses pengacakan soal

Pengujian REST Web Services

pada proses request dan

response data

Result

Penerapan Algoritma Fisher-Yates Shuffle pada Game Kuis

Pembelajaran Agama Islam Menggunakan Arsitektur

Representational State Transfer (REST) Web Service

Problems

Perlunya pengetahuan

mengenai pembelajaran Agama

Islam

Kebutuhan akan game yang

edukatif namun juga menarik

Kebutuhan akan game yang

dinamis dan juga efisien

Page 26: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

9

1.7 Sistematika Penulisan

Sistematika penulisan dari setiap bab dalam laporan tugas akhir ini bertujuan

untuk mendapatkan keterarahan dan sistemasi dalam penulisan sehingga mudah

dipahami, adapun sistematika secara umum dari penulisan laporan ini adalah:

BAB I PENDAHULUAN

Bab ini merupakan pengantar yang memberikan gambaran mengenai

permasalahan - permasalahan yang kemudian akan dibahas pada bab - bab

selanjutnya. Pokok bahasan dalam bab ini, yaitu latar belakang, perumusan

masalah, batasan masalah, tujuan, metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Pada bab ini akan dijelaskan tentang teori - teori yang digunakan dalam analisa

permasalahan yang ada, dan juga teori - teori yang digunakan dalam perancangan

dan implementasi.

BAB III ANALISIS DAN PERANCANGAN

Bab ini membahas mengenai analisis dari permasalahan yang ada saat ini dan

analisis kebutuhan yang diperlukan untuk mengatasi permasalahan tersebut.

Pembuatan desain dari sistem dengan mengacu pada analisis yang telah dibahas.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Pada bab ini dijelaskan tentang spesifikasi aplikasi, kebutuhan aplikasi,

implementasi aplikasi, dan pengujian yang dilakukan terhadap aplikasi yang

dibangun.

Page 27: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

10

BAB V PENUTUP

Bab ini berisi kesimpulan dan saran untuk pengembangan aplikasi lebih

lanjut dalam upaya memperbaiki kelemahan pada aplikasi guna untuk mendapatkan

hasil kinerja aplikasi yang lebih baik dan pengembangan program selanjutnya.

Page 28: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

11

BAB II

LANDASAN TEORI

2.1 Landasan Teori

2.1.1 Web Services

Web service merupakan sebuah API (Application Programming Interface) atau

Web API yang diakses melalui HTTP (Hypertext Transfer Protocol) dan dieksekusi

oleh sebuah remote system yang menjadi host dari service tersebut [9]. Teknologi

web service ini sudah banyak di implementasikan oleh organisasi-organisasi bisnis

untuk mengkolaborasikan sistem-sistem di dalam internal organisasi. Web service

menjanjikan banyak keuntungan seperti peningkatan produktivitas, efisiensi, dan

akurasi. Fokus atau tujuan utama dari web service ini adalah untuk membantu

aplikasi agar dapat saling berkomunikasi satu sama lain. Web service yang

tergabung ke dalam jaringan dapat mendukung kegiatan bisnis internal maupun

eksternal organisasi seperti E-commerce, keuangan, manufaktur, Supply-Chain

management, dan Customer-Relationship management. Web service tidak

bergantung kepada sebuah protokol. Semua protokol transport yang berbasiskan

internet seperti HTTP, SMTP (Simple Mail Transfer Protocol), dan FTP (File

Transfer Protocol) bisa diimplementasikan untuk saling bertukar pesan melalui

melalui web service. Web service memiliki banyak kelebihan, diantaranya adalah:

1. Web service merupakan sebuah platform dan bahasa pemograman yang

netral serta sebuah mekanisme komunikasi yang independen.

2. Servisnya bersifat modular, sehingga membuat pengguna dapat memilih

teknik apa yang akan mereka gunakan dalam pengimplementasiannya.

Page 29: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

12

3. Penggunaan web service diharapkan dapat mengurangi kompleksitas.

Karena menggunakan pesan berbasis XML, web service memiliki model

yang fleksibel untuk pertukaran data.

2.1.2 REST

2.1.2.1 Definisi REST

Terminologi REST dikemukakan oleh Roy Fielding yang merupakan salah

satu penulis spesifikasi HTTP dalam disertasi Ph.D. nya untuk menggambarkan

sebuah style arsitektur dari sistem jaringan. Berikut penjelasan Roy Fielding

mengenai Representational State Transfer:

REST is a hybrid style derived from several of the network-based

architectw'al styles and combined with additional constraints that define a uniform

connector interface.

Disertasi tersebut mengemukakan beberapa prinsip yang umum terdapat pada

arsitektur jaringan berdasarkan pengujian terhadap struktur jaringan dan protokol

HTTP. REST sering dirujuk sebagai sebuah gaya arsitektural daripada sebagai

sebuah arsitektur. Daripada mendefinisikan sebuah spesifikasi arsitektur terbaik,

REST lebih mendefinisikan prinsip-prinsip yang dengannya arsitektur dibuat dan

dievaluasi dengan cara meletakkan batasan-batasan pada arsitektur jaringan. REST

bukanlah sebuah standar seperti SOAP. Saat ini tidak ada spesifikasi standar khusus

REST di W3C [8].

Page 30: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

13

2.1.2.2 Format data REST Web Service

Web service memiliki beberapa format untuk data. Berikut ini beberapa format

data pada web service:

1. XML (Extensible Markup Language)

XML adalah salah satu bahasa markup language yang merupakan

penyerderhanaan dari SGML (Standard Generalized Markup Language).

Pada penggunaannya, XML memiliki dua fungsi yaitu sebagai format

dokumen dan format pertukaran data pada sebuah sistem yang terdistribusi

[10].

2. JSON (Java Script Object Notation)

JSON (JavaScript Object Notation) adalah format pertukaran data

yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah

diterjemahkan dan dibuat (generate) oleh komputer. Format ini dibuat

berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-

262 Edisi ke-3 Desember 1999. JSON merupakan format teks yang tidak

bergantung pada bahasa pemprograman apapun karena menggunakan gaya

bahasa yang umum digunakan oleh programmer keluarga C termasuk C,

C++, C#, Java. JavaScript. Perl, Python dll [11].

2.1.2.3 Karakteristik REST Web Service

REST Web Services memiliki karakteristik sebagai berikut:

1. Client-Server

Interaksi dengan model pengambilan, maksudnya adalah mengkonsumsi

komponen atau berarti mengambil representation.

Page 31: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

14

2. Stateless

Setiap request dari client ke server harus mengandung semua informasi

yang diperlukan server untuk memahami maksud dari request, dan request

tidak dapat memanfaatkan server untuk mengingat konteks apapun.

3. Cache

Untuk meningkatkan efisiensi jaringan, respon harus dapat melabeli data

sebagai cache atau non-cache.

4. Uniform interface

Semua resource diakses dengan interface generik (HTTP GET, POST, PUT,

DELETE).

5. Resource yang memiliki nama

Sistem terdiri atas resource yang mempunyai nama berdasarkan URL-nya.

6. Representation resource yang saling terkoneksi

Representasi dari resource saling terhubung menggunakan URL, oleh

karenanya client dapat untuk berpindah dari satu state ke state lainnya

7. Komponen berlayer

Perantara seperti proxy server, cache server, gateway, dan sebagainya dapat

dimasukkan sebagai komponen antara client dan resource untuk

mendukung performa, keamanan, dan lainnya [8].

2.1.2.4 Konsep REST Web Service

Secara sederhana untuk memahami konsep REST ini kita dapat alogikan

seperti ini, kita anggap web terdiri atas kumpulan resources. Domain-domain di

internet ini memberikan resource baik kepada browser atau aplikasi yang

diprogram untuk mengakses resource tersebut.

Page 32: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

15

Sebuah resource merupakan sesuatu (dokumen, file atau apapun) yang

dinginkan oleh pengakses (client). Browser menginginkan resource tersebut

disajikan dalam dokumen HTML, aplikasi lain mengingikan dalam format XML

agar bisa diolah lebih lanjut, misalnya website UIN Sunan Gunung Djati

memberikan resource infomasi mahasiswa dengan NIM (Nomor Induk Mahasiswa)

20102246. Client dapa mengakses resource tersebut melalui URL:

http://www.uinsgd.ac.id/mahasiswa/20102246.

Client (browser) mengaksesnya dengan menggunakan HTTP_GET request

dan kemudian sebuah representasi dari resource tersebut diberikan (misal

20l02246.html, karena browser meminta dokumen html).

Method-method yang cukup penting dan paling sering digunakan dalam

HTTP adalah POST, GET, PUT dan DELETE. Method ini sering dianalogikan

sebagai operasi CREATE, READ, UPDATE dan DELETE (CRUD) dalam teknologi

Database. Tapi dalam HTTP operasi POST bisa meliputi Create, Update dan

Delete. Operasi GET sebagai READ, operasi PUT bisa meliputi CREATE dan

UPDATE, dan operasi DELETE sebagai DELETE [8].

Tabel 2. 1 Method pada HTTP request serta implementasinya pada REST [8].

No HTTP

Method Aksi Deskripsi Analogi

Perintah

1 GET Mengambil atau

memperoleh

resources

1. Digunakan untuk

memperoleh

resource data

Ambil itu!

2 PUT Menyimpan atau

menambahkan

resources baru

1. Digunakan untuk

menyimpan atau

menambahkan

resource baru

Simpan

disitu!

Page 33: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

16

No HTTP

Method

Aksi Deskripsi

Analogi

Perintah

3 PUT Menyimpan atau

menambahkan

resources baru

2. Method ini dapat

digantikan oleh

method POST,

karena method ini

tidak dapat

digunakan pada

beberapa browser

Simpan

disitu!

4 POST Merubah resources

yang sudah ada

1. Digunakan untuk

merubah

resouces yang

sudah ada

2. Method ini dapat

digunakan untuk

menggantikan

method PUT ,

karena method ini

lebih umum

digunakan.

Ubah itu!

5 DELETE Menghapus

resources yang

sudah ada

1. Digunakan untuk

menghapus

resources yang

sudah ada

Hilangkan

itu!

2.1.2.5 Perbandingan REST dengan SOAP

REST API dan SOAP API merupakan dua jenis implementasi aplikasi

berorientasi layanan yang saat ini paling banyak digunakan karena masing-masing

implementasi memiliki kelebihan dan kekurangan serta karakteristik [8].

Gambar 2. 1 Analogi proses request pada SOAP dan REST [8].

Tabel 2.1 Method pada HTTP request serta implementasinya pada REST [8]

(Lanjutan).

Page 34: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

17

Dari penjelasan di atas dapat dikatakan bahwa SOAP tidak semudah REST

dalam pengimplementasiannya, SOAP membutuhkan usaha implementasi yang

lebih besar dan pengetahuan di sisi klien, sedangkan web service berbasis REST

API membutuhkan implementasi yang lebih besar dan pengetahuan di sisi server

[8].

Berikut ini adalah skema yang menggambarkan perbedaan antara SOAP dan

REST Web Services:

Gambar 2. 2 Skema SOAP dan REST Web Services [12].

SOAP memiliki sebuah standar pengiriman dan memiliki sebuah proses

envelope sehingga memiliki proses yang lebih lama dan ukuran file yang lebih besar

dibandingkan REST.

Pada gambar 2.3 diperlihatkan skema perbandingan proses pada SOAP dan

REST Web Service.

Page 35: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

18

Gambar 2. 3 Skema perbandingan proses SOAP dan REST Web Service [8].

2.1.3 Fisher-Yates Shuffle

Fisher-Yates shuffle (diambil dari nama Ronald Fisher dan Frank Yates) atau

juga dikenal dengan nama Knuth We (diambil dari nama Donald Knuth), adalah

sebuah algoritma untuk menghasilkan suatu permutasi acak dari suatu himpunan

terhingga, dengan kata lain untuk mengacak suatu himpunan tersebut. Jika

diimplementasikan dengan benar, maka hasil dari algoritma ini tidak akan berat

sebelah, sehingga setiap permutasi memiliki kemungkinan yang sama [13].

Metode yang digunakan untuk menghasilkan suatu permutasi acak angka l

sampai n! adalah sebagai berikut:

1. Tuliskan angka dari l sampai N

2. Pilih sebuah angka acak K diantara 1 sampai dengan jumlah angka n yang

belum dicoret

3. Dihitung dari bawah, coret angka K yang belum dicoret, dan tuliskan angka

tersebut di lain tempat

Page 36: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

19

4. Ulangi langkah 2 dan 3 sampai semua angka tercoret

5. Urutan angka yang dituliskan pada langkah 3 adalah permutasi acak dari

angka awal.

Pada versi yang baru (modern) angka yang terpilih tidak dicoret, tetapi ditukar

posisinya dengan angka terakhir dari angka yang belum terpilih. Tabel 2.1 adalah

contoh pengerjaan dari versi modern. Range adalah jumlah angka yang belum

terpilih, roll adalah angka acak yang terpilih, scratch adalah daftar angka yang

belum terpilih, result adalah hasil permutasi yang akan didapatkan. Versi modern

dikenalkan karena lebih optimal dibandingkan dengan versi orisinil. Prosesnya

ialah angka terakhir akan dipindahkan ke angka yang ditarik keluar dan mengubah

angka yang ditarik keluar menjadi angka akhir yang tidak ditarik lagi untuk setiap

kali penarikan dan berlanjut untuk iterasi berikutnya.

Tabel 2. 2 Contoh Perhitungan Algoritma Fisher Yates [13].

Range Roll Scratch Result

12345678

1-8 6 1234587 6

1-7 2 173458 26

1-6 6 17345 826

1-5 1 5734 1826

1-4 3 574 31826

1-3 3 57 431826

1-2 1 7 5431826

75431826

Page 37: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

20

Gambar berikut merupakan perancangan Algoritma Fisher Yates:

DEKLARASI

p,r,tmp

DESKRIPSI

for(p=arr.length-l;p>0;p--)

r = Random.Range(0,p);

tmp = arr[p];

arr[p] = arr[r];

arr[r] = tmp;

Gambar 2. 4 Pseudocode Algoritma Fisher Yates.

Berikut merupakan gambar flowchart dari Algoritma Fisher-Yates:

Gambar 2. 5 Flowchart Algoritma Fisher Yates [13].

Mulai

Inisialisasi Range dari 1 Sampai (n)

Pilih Angka Secara Acak dari Range

yang Belum Dipindahkan (K)

Pindahkan (K) ke Posisi Terakhir

Range Array

Pindahkan Angka yang Paling Akhir

dalam Range ke Posisi (K) yang

Dipindahkan Sebelumnya

Cek Apakah Masih Ada

Angka (K) yang Belum

Dipindahkan

Selesai

Ya

Tidak

Page 38: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

21

2.1.4 Game

Game berasal dari kata bahasa inggris yang memiliki arti dasar Permainan.

Permainan dalam hal ini merujuk pada pengertian “kelincahan intelektual”

(intellectual playability). Game juga bisa diartikan sebagai arena keputusan dan

aksi pemainnya. Ada target-target yang ingin dicapai pemainnya. Sedangkan

Agustinus Nilwan menjelaskan bahwa game di artikan sebagai suatu aktivitas

tersetruktur atau juga digunakan sebagai alat pembelajaran.

Secara umum teori permainan dapat didefinisikan sebagai sebuah pendekatan

terhadap kemungkinan strategi yang akan dipakai, yang disusun secara matematis

agar bisa diterima secara logis dan rasional. Serta digunakan untuk mencari strategi

terbaik dalam suatu aktivitas, dimana setiap pemain didalamnya sama - sama

mencapai utilitas tertinggi [14].

2.1.5 Pembelajaran

2.1.5.1 Definisi Pembelajaran

Pembelajaran dapat diartikan sebagai proses penciptaan lingkungan yang

memungkinkan terjadinya proses belajar. Pembelajaran merupakan bantuan yang

diberikan pendidik agar dapat terjadi proses pemerolehan ilmu dan pengetahuan,

penguasaan kemahiran dan tabiat, serta pembentukan sikap dan kepercayaan pada

peserta didik. Dengan kata lain, pembelajaran adalah proses untuk membantu

peserta didik agar dapat belajar dengan baik [15].

Dari penjelasan di atas dapat diambil kesimpulan bahwa Pembelajaran adalah

usaha sadar dari guru untuk membuat siswa belajar, yaitu terjadinya perubahan

tingkah laku pada diri siswa yang belajar,

Page 39: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

22

dimana perubahan itu dengan didapatkannya kemampuan baru yang berlaku

dalam waktu yang relative lama dan karena adanya usaha [16].

2.1.5.2 Desain Pembelajaran

Pembelajaran sebagai suatu proses kegiatan, dari berbagai sumber secara

umum dapat dikatakan terdiri atas tiga fase atau tahapan. Fase-fase/ tahapan-

tahapan dalam proses pembelajaran yang dimaksud meliputi: tahap pendahuluan,

tahap pelaksanan/kegiatan inti, dan tahap evaluasi. Adapun dari ketiganya ini akan

dibahas sebagaimana berikut [17]:

1. Tahap Pendahuluan

Dalam tahap pendahuluan ini berisi tahapan perencanaan

pembelajaran kedepan yang nantinya akan menjadi pedoman untuk

mencapai hasil apa yang diharapkan dalam akhir pembelajaran dan tentunya

akan dijadikan pedoman dalam proses pengajaran. Kegiatan pembelajaran

yang baik senantiasa berawal dari rencana yang matang. Perencanaan yang

matang akan menunjukkan hasil yang optimal dalam pembelajaran.

Dalam perencanaan ini ada beberapa tahapan yang menjadi strength

point seperti yang dipaparkan oleh Kemp lewat desain pengembangan

pembelajaran PAI dalam model J.E.Kemp yang berpijak pada empat unsur

dasar perencanaan pembelajaran yang merupakan wujud jawaban atas

pertanyaan (1) untuk siapa program itu dirancang? Peserta didik, (2)

kemampuan apa yang ingin anda pelajari? Tujuan, (3) bagaimana isi

pelajaran/ keterampilan yang dapat dipelajari? Metode, (4) bagaimana anda

menentukan tingkat penguasaan terhadap pelajaran yang sudah dicapai?

Evaluasi.

Page 40: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

23

2. Tahap Pelaksanaan

Hakikat dari tahap pelaksanaan adalah kegiatan operasional

pembelajaran itu sendiri. Dalam tahap ini, guru melakukan interaksi belajar-

mengajar melalui penerapan berbagai strategi metode dan tekhnik

pembelajaran, pemanfaatan seperangkat media dan tentunya dengan

tambahan pemahaman/ penguasaan teori pendidikan, prinsip mengajar,

teori belajar dan yang lainnya yang relevan untuk proses pembelajaran.

3. Tahap Evaluasi

Evaluasi adalah keseluruhan kegiatan pengukuran (pengumpulan

data dan informasi), pengolahan, penafsiran dan pertimbangan untuk

membuat keputusan tentang tingkat hasil belajar yang dicapai peserta didik

setelah melakukan kegiatan belajar dalam upaya mencapai tujuan

pembelajaran yang telah ditetapkan.

Pada hakekatnya evaluasi merupakan suatu kegiatan untuk

mengukur perubahan perilaku yang telah terjadi untuk dijadikan tolak ukur

perencanaan dan pengembangan pembelajaran kedepannya.

2.1.5.3 Media Pembelajaran

2.1.5.3.1 Pengertian Media Pembelajaran

Kata media merupakan bentuk jamak dari kata medium. Medium dapat

didefinisikan sebagai perantara/pengantar terjadinya komunikasi dari pengirim

menuju penerima. Media merupakan salah satu komponen komunikasi, yaitu

sebagai pembawa pesan dari komunikator menuju komunikan (Criticos, 1996).

Media pembelajaran adalah segala sesuatu yang digunakan untuk menyalurkan

pesan serta dapat merangsang pikiran, perasaan, perhatian, dan kemauan pelajar

Page 41: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

24

sehingga dapat mendorong terjadinya proses belajar yang disengaja, bertujuan, dan

terkendali. Berdasarkan definisi tersebut dapat dikatakan bahwa media

pembelajaran merupakan sarana perantara dalam proses [15].

Ciri-ciri umum media pembelajaran:

1. Media pembelajaran memiliki pengertian fisik, dikenal dengan istilah

perangkat keras (hardware), yaitu benda yang dapat dillihat, didengar,

atau diraba dengan panca indera.

2. Media pembelajaran memillik pengertian non-fisik yang dikenal dengan

istilah perangkat lunak (sofware), yaitu kandungan pesan yang terdapat

dalam perangkat keras yang merupakan isi yang akan disampaikan.

3. Penekanan media pembelajaran terdapat pada audio dan visual.

4. Media pembelajaran memiliki pengertian alat bantu pada proses belajar.

5. Media pembelajaran digunakan dalam rangka komunikasi dan interaksi

antara pelajar dan pendidik dalam proses pembelajaran.

6. Media pembelajaran dapat digunakan secara massal atau perorangan

[18].

2.1.5.3.2 Pembelajaran Berbantu Komputer

Pembelajaran berbantu komputer adalah aplikasi komputer sebagai bagian

integral dalam sistem pembelajaran terhadap proses belajar dan mengajar yang

bertujuan membantu siswa dalam belajarnya, bisa melalui pola interkasi dua arah

melalui terminal komputer maupun multi-arah yang diperluas melalui jaringan

komputer (baik lokal maupun global) dan juga diperluas fungsinya melalui

interface (antar muka) multimedia.

Page 42: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

25

PBK tepat sebagi media pembelajaran individual, namun PBK masih

memerlukan kehadiran guru. PBK merupakan suatu alat bantu untuk meringankan

beban guru, sehingga guru mempunyai kesempatan untuk lebih memperhatikan

siswa secara individual. Kendati penggunaan komputer dapat meningkatkan

prestasi belajar siswa, namun komputer tidak dapat mengganti peran guru secara

keseluruhan, karena peran guru tidak dapat digantikan oleh media apapun termasuk

komputer [19].

Pembelajaran berbantu komputer terdiri atas komponen-komponen sebagai

berikut:

1. Hardware, yaitu komputer dan piranti pendukungnya.

2. Software, dapat berupa sistem operasi atau modul program komputer untuk

mempresentasikan materi perangkat ajar.

3. Brainware, yaitu pembuat sistem, pengajar, atau siswa [19].

Kelebihan komputer sebagai media pembelajaran:

1. Meningkatkan perhatian dan konsentrasi siswa.

2. Meningkatkan motivasi siswa.

3. Menyesuaikan materi dengan kemampuan siswa.

4. Mereduksi penggunaan waktu penyampaian materi.

5. Membuat pengalaman belajar lebih menyenangkan, memuaskan, dan

menguatkan siswa.

6. Dapat menggunakan fasilitas penyimpanan untuk mengetahui kemajuan

belajar siswa.

7. Materi dapat didesain lebih menarik.

Page 43: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

26

8. Dapat mendorong guru untuk meningkatkan pengetahuan dan kemampuan

mengenai komputer [19].

Pada sisi lain, PBK juga memiliki kekurangan, antara lain:

1. Dikembangkan dalam dialog terbatas sehingga tidak dapat menjawab semua

permasalahan siswa.

2. Tidak dapat melihat teknik siswa dalam menjawab soal.

3. Pengembangan PBK memerlukan waktu, biaya, dan tenaga yang tidak

sedikit.

4. Pada kasus khusus, PBK hanya dapat dijalankan pada spesifikasi komputer

tertentu.

5. Kecepatan perkembangan teknologi komputer memerlukan upgrade yang

terus-menerus.

6. Komputer tidak dapat meniru tingkah laku guru, misalnya senyuman, raut

muka, gerakan tangan dan badan, serta tidak dapat menggantikan ikatan

batin antara siswa dan guru [19].

2.1.6 Pembelajaran Agama Islam

Pembelajaran menurut Oemar Hamalik: “sebagai suatu kombinasi yang

tersusun, meliputi unsur-unsur manusiawi, fasilitas, perlengkapan dan prosedur

yang saling mempengaruhi untuk mencapai tujuan pembelajaran” [20]. Adapun

pembelajaran Pendidikan Agama Islam (PAI) menurut Muhaimin adalah “suatu

upaya membuat peserta didik dapat belajar, butuh belajar, terdorong belajar, mau

belajar dan tertarik untuk terus-menerus mempelajari agama Islam, baik untuk

mengetahui bagaimana cara beragama yang benar maupun mempelajari Islam

sebagai pengetahuan” [21].

Page 44: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

27

Dengan demikian pembelajaran PAI dapat diartikan sebagai upaya membuat

peserta didik dapat belajar, terdorong belajar, mau belajar dan tertarik untuk terus

menerus mempelajari apa yang teraktualisasikan dalam kurikulum agama Islam

sebagai kebutuhan peserta didik secara menyeluruh yang mengakibatkan beberapa

perubahan yang relatif tetap dalam tingkah laku seseorang baik dalam kognitif,

efektif dan psikomotorik.

Pemaknaan pembelajaran pendidikan agama Islam merupakan bimbingan

menjadi muslim yang tangguh dan mampu merealisasikan ajaran Pendidikan

Agama Islam dalam kehidupan sehari-hari sehingga menjadi insan kamil. Untuk itu

penanaman Pembelajaran PAI sangat penting dalam membentuk dan mendasari

peserta didik. Dengan penanaman pembelajaran PAI sejak dini diharapkan mampu

membentuk pribadi yang kokoh, kuat dan mandiri untuk berpedoman pada agama

Islam [22].

2.1.7 Android

Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux

yang mencakup sistem operasi, middleware dan aplikasi. Android menyediakan

platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka

[23].

Secara garis besar Arsitektur Android dapat di jelaskan dan di gambarkan

sebagai berikut:

1. Application dan Widgets

2. Application framework

3. Libraries

Page 45: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

28

4. Android Run Time

5. Linux Kernel

Pada gambar 2.6 menunjukkan arsitektur android.

Gambar 2. 6 Arsitektur Android [23].

2.1.8 Web Framework

Framework adalah kerangka kerja. Framework juga dapat diartikan sebagai

kumpulan script (terutama class dan function) yang dapat membantu

developer/programmer dalam menangani berbagai masalah-masalah dalam

pemrograman seperti koneksi ke Database, pemanggilan variabel, file, dan lain-

lain sehingga developer lebih fokus dan lebih cepat membangun aplikasi. Bisa juga

dikatakan framework adalah komponen pemrorgaman yang siap re-use kapan saja,

sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama

[24].

Framework menggunakan konsep yangsama dalam membangun suatu aplikasi,

yaitu konsep MVC (Model View Controller). Konsep MVC adalah konsep

pemisahan antara logic dengan tampilan dan Database. Manfaat konsep ini adalah,

membuat coding logic lebih simple, karena sudah di pisah dengan code untuk

Page 46: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

29

tampilan dan membuat programmer dapat bekerja secara terpisah dengan designer.

Programmer mengerjakan logic, sedangkan designer berkutat dengan design dan

tampilan. Berikut adalah penjelasan mengenai konsep MVC,

a. Model, merupakan code struktur data. Model berisi fungsi di dalam

pengolahan Database Script Sql masuk di sini.

b. View, merupakan code untuk menampilkan tampilan suta program.

Tampilan dapat berupa web page, header, footer dan apa saja yang berjenis

tampilan.

c. Controller , merupakan code untuk logic, algoritma dan sebagai

penghubung antara model, view, dan sumber lain yang di perlukan untuk

mengolah HTTP request dan generate web page.

CodeIgniter menerapkan pola MVC yang flexible, karena model dapat tidak

digunakan. Kita dapat menggunakan Controller dan View saja dalam menggunakan

CodeIgniter tanpa Model. Jika anda tidak memerlukan pemisahan di dalam struktur

data dan Database atau menganggap penggunaan model hanya menambah

kompleks aplikasi dengan keuntungan yang kurang sebanding, maka anda dapat

tidak menggunakan model.

CodeIgniter merupakan aplikasi sumber terbuka yang berupa framework PHP

dengan model MVC (Model, View, Controller) untuk membangun website dinamis

dengan menggunakan PHP. CodeIgniter memudahkan developer untuk membuat

aplikasi web dengan cepat mudah dibandingkan dengan membuatnya dari awal.

CodeIgniter dirilis pertama kali pada 28 Februari 2006. Versi stabil terakhir adalah

versi 2.2.0. Kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP

lain, adalah sebagai berikut:

Page 47: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

30

a. Performa sangat cepat : salah satu alasan tidak menggunakan framework

adalah karena eksekusinya yang lebih lambat daripada PHP from the

scracth, tapi CodeIgniter sangat cepat bahkan mungkin bisa dibilang

codeIgniter merupakan framework yang paling cepat dibanding framework

yang lain.

b. Konfigurasi yang sangat minim (nearly zero configuration) : tentu saja

untuk menyesuaikan dengan Database dan keleluasaan routing tetap

diizinkan melakukan konfigurasi dengan mengubah beberapa file

konfigurasi seperti Database.php atau autoload.php, namun untuk

menggunakan codeIgniter dengan setting standard, anda hanya perlu

mengubah sedikit saja file pada folder config.

c. Banyak komunitas: dengan banyaknya komunitas CI ini, memudahkan kita

untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi

terbaru.

d. Dokumentasi yang sangat lengkap : Setiap paket instalasi CodeIgniter sudah

disertai user guide yang sangat bagus dan lengkap untuk dijadikan

permulaan, bahasanya pun mudah dipahami.

2.1.9 Teknik Pengujian

2.1.9.1 Black-box Testing

Black-box Testing berfokus pada persyaratan fungsional perangkat lunak.

Artinya black-box testing memungkinkan untuk membuat kumpula kondisi

masukkan yang sepenuhnya akan melakukan semua kebutuhan fungsional untuk

program. Black-box testing bukan teknik alternatif untuk white-box. Sebaliknya, ini

Page 48: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

31

merupakan pendekatan pelengkap yang mungkin dilakukan untuk mengungkap

kelas kesalahan yang berbeda dari yang diungkap oleh metode white-box.

Black-box testing berupaya untuk menemukan kesalahan dalam kategori

berikut [25]:

1. Fungsi yang salah atau hilang.

2. Kesalahan antar muka.

3. Kesalahan dalam struktur data atau akses basis data eksternal.

4. Kesalahan prilaku atau kinerja.

5. Kesalahan inisialisasi dan penghentian.

2.2 Tinjauan Pustaka

2.2.1 The State of The Art

Berikut ini adalah hasil penelitian sebelumnya digunakan untuk dapat dijadikan

bahan pertimbangan dan diharapkan dapat membantu dalam pembuatan sistem

yang baru.

Sefyan Daru, membahas mengenai pembuatan sebuah game kuis yang

bertujuan membantu masyarakat untuk dapat menambah pengetahuan mengenai

kebudayaan dan sejarah pada suatu daerah. Dengan menerapkan sistem scoring

yang terintegrasi secara online, dapat membuat game lebih menarik dan populer.

Pada game kuis tersebut, user akan bersaing dengan user lain untuk mendapatkan

skor tertinggi. Penelitian ini bertema game enslikopedia Indonesia dengan judul

“Implementasi Rest Web Service Pada Game Kuis “Ensiklopedia Indonesia”

Berbasis Android”. Sefyan Daru menerapkan REST Web Services untuk

mengintegrasikan skor dan mendistribusikan soal dari server ke client. Dengan

Page 49: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

32

diterapkannya REST Web Services, data skor dan pertanyaan diletakkan pada

server, sehingga dapat diakses secara online oleh client dengan menggunakan

mobile Android. Dari hasil penelitian yang dilakukan REST Web Services membuat

pertukaran data antara server dengan client lebih cepat dan efisien [26].

Imam Haditama, membahas mengenai pembuatan sebuah game kuis tebak

nada sunda berbasis perangkat android yang bertujuan dapat menjadi media

pembelajaran mengenai titi laras atau tangga nada sunda pada beberapa jenis alat

musik karawitan yang merupakan alat musik tradsisional Indonesia dari daerah

Jawa Barat. Penelitian ini bertema game kuis tebak nada sunda dengan judul

“Implementasi Algoritma Fisher-Yates Dan Fuzzy Tsukamoto Dalam Game

Kuis Tebak Nada Sunda Berbasis Android”. Imam Haditama menerapkan

Algoritma Fisher-Yates pada game kuis untuk memberikan teknik pengacakan pada

soal sehingga soal yang keluar akan berbeda dan bisa dihasilkan tanpa pengulangan

dan duplikasi. Pada tahapan akhir terdapat skor untuk penilaian apakah user dapat

menghasilkan skor tertinggi atau tidak, pada proses ini menggunakan algoritma

Fuzzy. Dari hasil penelitian, game kuis “Tebak Nada Sunda” dapat dinyatakan

menarik berdasarkan hasil kuesioner yang diambil dari 40 responden secara acak

sebesar 77.75% dan aplikasi ini dinyatakan userfriendly/ mudah digunakan dengan

hasil kuesioner sebesar 82.25%, dan Algoritma Fisher-Yates Shuffle dapat di

terapkan dalam kuis ini untuk menentukan solusi pengacakan yang tidak berganda

dan pengacakan objek yang variatif berdasarkan hasil pengujian sebanyak 50x

percobaan [6].

Page 50: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

33

Miftah Farid Adiwisastra membahas mengenai perancangan sebuah game

kuis interaktif pembelajaran dengan model Drill and Practice untuk siswa yang

bertujuan untuk meningkatkan hasil belajar siswa. Penelitian ini bertema game kuis

interaktif dengan judul “Perancangan Game Kuis Interaktif Sebagai

Multimedia Pembelajaran Drill And Practice Untuk Meningkatkan Hasil

Belajar Siswa”. Miftah Farid Adiwisastra menggunakan Metode penelitian dan

pengembangan atau Research and Development (R&D) dalam penelitian ini.

Metodologi pengembangan yang digunakan adalah metodologi yang diadaptasi dari

metodologi pengembangan multimedia Mardika dan Munir, yang meliputi lima

tahapan yakni tahap analisis, tahap desain, tahap pengembangan, tahap

implementasi dan tahap penilaian. Miftah Farid juga menerapkan model

pembelajaran drill and practice (berlatih dan praktek), dimana penyajian masalah

dalam bentuk latihan soal yang di kemas dalam bentuk permainan kuis dengan

menjawab soal yang diajukan dengan jawaban pilhan ganda sehingga memiliki nilai

pembelajaran yaitu pengetahuan yang dibutuhkan untuk menjawab soal-soal yang

disajikan, memiliki sifat untuk memotivasi, mempunyai struktur dan adanya

ketertarikan pancaindera dengan digunakannya gambar, animasi, dan suara. Dari

penelitian, penggunaan multimedia pembelajaran model drill and practice dengan

game kuis interaktif dapat meningkatkan hasil belajar siswa. dan berdasarkan hasil

kuisioner hampir seluruh siswa memberikan respon positif mengenai pembelajaran

yang menggunakan multimedia pembelajaran model drill and practice, dalam

konteks dapat membawa manfaat, menarik, dan bisa meningkatkan hasil belajar

siswa [27].

Page 51: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

34

Reti Yuliana Setyaningsih membahas mengenai pembuatan sebuah game

pembelajaran matematika yang bertujuan membantu murid SD mengenal operasi

matematika, memberikan kemudahan kepada murid SD untuk belajar matematika.

dan mendapat hiburan serta manfaat dari permainan ini.

Penelitian ini bertema game pembelajaran dengan judul “Game

Matematika Untuk Pembelajaran Murid SD”. Reti Yuliana Setyaningsih

menerapkan model aplikasi multimedia berbasis desktop. Game Matematika ini

dirancang hanya untuk murid kelas 1,2 dan 3, sehingga dibuat semudah mungkin

untuk user memainkan, dengan mengisi jawaban dengan keyboard atau klik mouse,

dari kuesioner yang disebar rata – rata siswa dapat menyelesaikan semua soal pada

level 1 – 6 menghabiskan waktu antara 60 detik keatas untuk soal perkalian, berbeda

lagi waktu yang dihabiskan untuk menjawab semua soal pada pemfaktoran user

lebih banyak antara 130 detik keatas, dan untuk yang pembagian user

menghabiskan waktu 80 detik ke atas [28].

Ukan Saokani membahas mengenai perancangan aplikasi untuk

pembelajaran ilmu nahwu yang berjuan sebagai media hiburan juga sebagai media

pembelajaran dan pelatihan daya ingat untuk pengguna permainan (user).

Penelitian ini bertema game pembelajaran dengan judul “Analisis Perbandingan

Algoritma Fisher Yates Shuffle Dan Linear Congruent Method Untuk

Pengacakan Soal Ilmu Nahwu Berbasis Android”. Ukan Saokani menerapkan

algoritma Fisher Yates Shuffle yang digunakan untuk melakukan fungsi pengacakan

pada pilihan ganda dan algoritma Linear Congruent Method (LCM) sebagai

pembandingnya. Pengujian white box dan black box diterapkan untuk melihat

Page 52: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

35

kelayakan dari program serta memperoleh efisiensi dalam perbandingan metode

pengacakan [5]. Untuk lebih jelasnya disajikan pada Tabel 2.3, sebagai berikut:

Tabel 2. 3 Tabel State Of The Art.

Page 53: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

36

No Peneliti Judul Masalah Solusi Evaluasi Kritik

1 Sefryan Daru,

Ajib Susanto

(2013)

Implementasi

Rest Web

Service Pada

Game Kuis

“Ensiklopedia

Indonesia”

Berbasis

Android

Masih kurangnya

kebudayaan daerah

yang dikenal oleh

masyarakat luas

Membuat media

berupa game kuis

dengan tema

ensiklopedia

Indonesia sebagai

media penyebar

informasi mengenai

kebudayaan daerah

yang ada di Indonesia,

dengan menerapkan

konsep REST Web

Service pada game

kuis tersebut.

Dengan diterapkannya media berupa

game kuis ensiklopedia Indonesia

tersebut, cukup signifikan untuk

menangani masalah mengenai

kurangnya kebudayaan daerah yang

dikenal oleh masyarakat luas, karena

dengan menyediakan media game

kuis ini masyarakat dapat bermain

sambil belajar mengenal kebudayaan

daerah dengan cara menyelesaikan

pertanyaan – pertanyaan yang ada.

Pada penelitian ini,

letak fokus penelitian

terdapat pada

pembuatan game kuis

ensiklopedia, padahal

seharusnya pada

penelitian ini juga dapat

diterapkan menu untuk

informasi berupa

materi-materi yang bisa

dibaca oleh user

mengenai kebudayan-

kebudayan yang ada di

Indonesia.

2 Imam

Haditama,

dkk.

(2016)

Implementasi

Algoritma

Fisher-Yates

Dan Fuzzy

Tsukamoto

Dalam Game

Kuis Tebak

Nada Sunda

Berbasis

Android

Warisan budaya

Indonesia yang

ditinggalakan, salah

satunya yaitu titi

laras atau tangga

nada sunda yang

digunakan pada jenis

alat musik karawitan

(gamelan) yang

merupakan salah

satu seni kebudayaan

Jawa Barat

Membuat media

berupa game kuis

dengan tema tebak

nada sunda sebagai

media untuk dapat

melestarikan budaya

sunda, dengan

menerapkan algoritma

Fisher Yates dan

Fuzzy Tsukamoto

pada game kuis

tersebut.

Dengan diterapkannya media berupa

game kuis tersebut, cukup signifikan

untuk menangani masalah mengenai

banyaknya warisan budaya Indonesia

yang ditinggalkan, dan pada aplikasi

kuis “Tebak Nada Sunda” dapat

dinyatakan menarik berdasarkan hasil

kuesioner yang diambil dari 40

responden secara acak sebesar 77.75%

dan aplikasi ini dinyatakan

userfriendly/ mudah digunakan dengan

hasil kuesioner sebesar 82.25%.

Pada penelitian ini,

penggunaan database pada

aplikasi sebagai

penyimpanan data masih

bersifat lokal, artinya konten

aplikasi bersifat statis

sehingga konten yang

terdapat di dalam aplikasi

tidak bisa dikelola lebih

lanjut.

Page 54: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

37

Tabel 2.3 Tabel State Of The Art (Lanjutan).

No Peneliti Judul Masalah Solusi Evaluasi Kritik

3 Miftah Farid

Adiwisastra

(2015)

Perancangan

Game Kuis

Interaktif

Sebagai

Multimedia

Pembelajaran

Drill And

Practice

Untuk

Meningkatkan

Hasil Belajar

Siswa

Masalah dari

penelitian ini

adaalah fokus pada

bagaimana cara

untuk meningkatkan

hasil belajar siswa.

Membangun aplikasi

game berbasis

multimedia

pembelajaran

menggunakan model

drill and practice.

Dengan diterapkannya aplikasi

berupa game berbasis multimedia

pembelajaran dengan menggunakan

model drill and practice pada siswa ,

berdasarkan hasil quesioner, siswa

memberikan penilaian sangat baik

terhadap multimedia pembelajaran

game kuis interaktif dengan

persentase penilaian sebesar

91.979%, dan mengalami

peningkatan hasil belajar.

Pada penelitian ini,

seharusnya dapat

diterapkan menu untuk

informasi berupa

materi-materi yang bisa

dibaca oleh siswa

artinya tidak hanya

menyediakan

pertanyaan saja.

Dan pada penelitian ini

penggunaan konsep

client-server secara

lokal, sehingga aplikasi

hanya dapat dipakai

ketika jam

pelajaran/jam sekolah

dilaksanakan. Serta

pada penelitian masih

berbasis desktop

sehingga hanya dapat

digunakan pada

perangkat komputer.

Page 55: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

38

Tabel 2.3 Tabel State Of The Art (Lanjutan).

No Peneliti Judul Masalah Solusi Evaluasi Kritik

4 Reti Yuliana

Setyaningsih,

dkk.

(2009)

Game

Matematika

Untuk

Pembelajaran

Murid SD

Kurangnya minat

siswa terhadap

konsep pembelajaran

matematika secara

manual, yang

bersifat

membosankan bagi

anak- anak karena

desain yang kurang

menarik dan

interaktif.

Dibuat suatu aplikasi

yang mempunyai

tampilan

menarik dan interaktif

sesuai dengan dunia

anak – anak sehingga

dapat menambah

minat belajar dan

memudahkan

murid sekolah SD

untuk belajar

matematika.

Dengan diterapkannya aplikasi

berupa game berbasis multimedia

pembelajaran yang mempunyai

tampilan

menarik dan interaktif sesuai dengan

dunia anak – anak, memang dapat

menambah minat siswa untuk belajar

matematika, ini dibuktikan dengan

kuesioner yang disebar rata - rata

siswa dapat menyelesaikan semua

soal pada level 1 – 6 menghabiskan

waktu antara 60 detik keatas

untuk soal perkalian, berbeda lagi

waktu yang dihabiskan untuk

menjawab semua soal pada

pemfaktoran user lebih banyak

antara 130 detik ke atas, dan untuk

yang pembagian user

menghabiskan waktu 80 detik ke

atas.

Pada penelitian ini data

yang ada pada database

bersifat statis, artinya

data tidak dapat diubah

ataupun ditambah.

Sehingga soal-soal yang

ada pada aplikasi

besifat terbatas. Serta

pada penelitian masih

berbasis desktop

sehingga hanya dapat

digunakan pada

perangkat komputer.

Page 56: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

39

Tabel 2.3 Tabel State Of The Art (Lanjutan).

No Peneliti Judul Masalah Solusi Evaluasi Kritik

5 Ukan Saokani

(2016)

Analisis

Perbandingan

Algoritma

Fisher Yates

Shuffle Dan

Linear

Congruent

Method

Untuk

Pengacakan

Soal Ilmu

Nahwu

Berbasis

Android.

Masih sedikit orang

yang dapat

memahami Ilmu

Nahwu, walaupun

dewasa ini banyak

orang yang

mempelajarinya.

Dan masalah

pemilihan algoritma

pada fungsi

pengacakan pada

soal.

Membuat media

berupa aplikasi kuis,

dengan materi Ilmu

Nahwu, dalam hal

latihan soal terutama

soal yang berbentuk

multiple choice (pilihan

ganda), perlu ada

sebuah fungsi

pengacakan soal.

Dengan menerapkan

algoritma Fisher

Yates dan

Linear Congruent

Method pada aplikasi

kuis tersebut.

Dengan diterapkannya media berupa

aplikasi kuis ilmu nahwu, cukup

signifikan untuk membantu banyak

orang dalam mempelajari ilmu

nahwu, karena pada aplikasi tersebut

terdapat materi sebagai program inti

dan kuis sebagai evaluasi dari hasil

pembelajaran materi, dan fungsi

pengacakan dengan menggunakan

algoritma Fisher Yates Shuffle Dan

Linear Congruent Method dengan

pada tersebut dapat diterapkan dan

berfungsi dengan baik.

Pada penelitian ini,

penggunaan database

pada aplikasi sebagai

penyimpanan data

masih bersifat lokal,

artinya konten aplikasi

bersifat statis sehingga

konten yang terdapat di

dalam aplikasi tidak

bisa dikelola lebih

lanjut.

Page 57: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

40

Berikut merupakan tabel yang membahas mengenai perbandingan

penelitian yang dijadikan sebagai state of the art pada tabel 2.4.

Tabel 2. 4 Tabel perbandingan state of the art.

Sefryan

Daru,

Ajib

Susanto.

(2013)

Imam

Haditama,

dkk.

(2016)

Miftah

Farid. A

(2015)

Reti YS,

dkk.

(2009)

Ukan

Saokani.

(2016)

Posisi

Peneliti

Algoritma

Fisher-

Yates

Algoritma

LCG

Web

Services

REST

Berbasis

Android

Berbasis

Desktop

Secara keseluruhan media pembelajaran berbasis game kuis ini dilihat dari

hasil penelitian-penelitian yang sudah dibahas sebelumnya, dimana hasil dari

penelitian-penelitian sebelumnya mengatakan game kuis pembelajaran ini dapat

meningkatkan hasil belajar siswa. dan berdasarkan hasil kuisioner hampir seluruh

siswa memberikan respon positif mengenai pembelajaran yang menggunakan

multimedia pembelajaran, dalam konteks dapat membawa manfaat, menarik, dan

bisa meningkatkan hasil belajar siswa. Sehingga dengan adanya nilai edukatif pada

game, user/pemain tidak hanya mendapatkan nilai hiburan saja, tetapi juga bisa

mendapatkan nilai edukasi/pembelajaran dari game tersebut namun pada

Page 58: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

41

penelitian-penelitian yang telah dibahas, terdapat beberapa kekurangan

diantantranya tidak diterapkan sebuah algoritma di dalamnya.

Selanjutnya data yang ada pada database bersifat statis, artinya data tidak

dapat diubah ataupun ditambah, sehingga soal-soal yang ada pada aplikasi besifat

terbatas. ada juga yang menggunakan konsep client-server secara lokal, sehingga

aplikasi hanya dapat dipakai ketika jam-jam tertentu. Maka dari itu perlu adanya

kontribusi penelitian baru yang dapat memperharui penelitian yang sudah ada serta

menutupi setiap kekurangan yang ada pada penelitian sebelumnya, untuk menjawab

semua itu saya mengajukan sebuah penelitian yang berjudul Penerapan

Representational State Transfer (REST) Web Service Pada Game Kuis

Pembelajaran Agama Islam Menggunakan Algoritma Fisher-Yates Shuffle.

Page 59: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

42

BAB III

ANALISIS DAN PERANCANGAN

Perancangan aplikasi yang dibuat dalam tugas akhir ini menggunakan RUP

(Rational Unified Process). Metode ini memiliki tahapan seperti yang telah ditulis

pada BAB I, yaitu Inception (Permulaan) dan Elaboration (Perluasan/Perencanaan)

akan dibahas dalam BAB III ini. Sedangkan Construction (Konstruksi) dan

Transition (Transisi) akan dilanjutkan di BAB IV.

3.1 Inception (Permulaan)

Tahap yang merupakan langkah awal untuk pengindetifikasian kebutuhan-

kebutuhan sistem yang akan dibuat. Hal-hal yang dilakukan dalam tahap ini adalah

business modelling workflow dan requirement workflow yaitu menganalisis,

merumuskan dan menentukan perencanaan.

3.2 Analisis Masalah

Game adalah salah satu media hiburan yang sangat popular dikalangan

masyarakat, baik untuk menghilangkan kejenuhan atau hanya untuk mengisi waktu

luang. Namun dewasa ini banyak game yang masih menonjolkan nilai hiburan saja

tanpa adanya nilai edukasi atau pembelajaran di dalamnya, tentunya hal ini dapat

berdampak negatif apabila yang dimainkan adalah game yang tidak bersifat

edukasional.

Disisi lain pendidikan agama, merupakan pendidikan yang sangat penting,

karena agama merupakan sumber moral, dan agama juga menjadi benteng dari

sikap atau perilaku manusia.

Page 60: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

43

Sebagaimana penjelasan di atas, maka solusi atau pemecahan masalah yang

ada adalah dengan membuat suatu aplikasi game yang mempunyai nilai edukatif,

agar user atau pemain tidak hanya mendapatkan nilai hiburan saja, tetapi juga bisa

mendapatkan nilai edukasi atau pengetahuan dari game tersebut, dimana game

tersebut mempunyai misi utama untuk menambah pengetahuan mengenai

pendidikan agama islam, karena pendidikan agama islam merupakan pendidikan

yang sangat penting bagi seluruh umat islam karena agama merupakan sumber

moral, dan agama juga menjadi benteng dari sikap atau perilaku manusia.

Sehingga dengan game kuis pembelajaran agama islam ini, user/pemain tidak

hanya mendapatkan hiburan saja, tetapi diharapkan akan mendapatkan nilai-nilai

pengetahuan agama islam di dalamnya sehingga kemudian bisa menjadi

pengetahuan baru dan bisa diterapkan pada kehidupan sehari-hari.

3.3 Analisis Sistem

Sebelum melakukan penerapan REST Web services dan penerapan Algoritma

Fisher Yates Shuffle pada sistem yang akan dikembangkan, maka perlu adanya

sebuah tahapan analisis sistem. Tahapan ini dibutuhkan untuk mengetahui berbagai

kebutuhan pengguna, yaitu mengenai masukan dan keluaran yang dibutuhkan.

Dengan analisis yang baik diharapkan aplikasi yang dibuat dapat berjalan dengan

baik pula dan sesuai dengan harapan.

3.3.1 Gambaran Umum Sistem

Penerapan Representational State Transfer (REST) pada media pembelajaran

kuis game islami ini digunakan sebagai konsep arsitektur client-server

menggunakan web service, dimana aplikasi client akan berinteraksi atau memanggil

Page 61: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

44

API yang ada di server dengan menggunakan HTTP_REQUEST dengan berbagai

metode di dalamnya. Begitu pula pada sisi server akan memberikan balikan dengan

menggunakan HTTP_RESPONSE yang dalam aplikasi akan diimplementasikan

berupa response file berformat json. Artinya secara sederhana materi dan soal akan

diupload lalu ditempatkan pada server dan akan direquest oleh client menggunakan

perangkat android. Selanjutnya penerapan Algoritma Fisher Yates Shuffle pada

kuis game islami ini digunakan sebagai metode pengacakan soal, sehingga soal-

soal yang muncul tidak beruntun dan tidak mudah ditebak oleh pemain.

Kuis pembelajaran agama Islam merupakan sebuah aplikasi permainan yang

dapat dimainkan oleh kalangan umum. Tujuan dari pembangunan aplikasi ini selain

sebagai media hiburan juga sebagai media pembelajaran dan pelatihan daya ingat

untuk pengguna permainan (user). Aturan permainan ini mudah, dalam menu

latihan soal, terdapat soal – soal dengan 4 pilihan ganda. Pengguna cukup memilih

salah satu pilihan ganda tersebut yang pengguna anggap benar/cocok dengan soal

yang ada. Dalam satu kali game, terdapat 25 pertanyaan. Setelah pemain menjawab

semua pertanyaan tersebut, maka aplikasi akan langsung menampilkan skor.

3.3.2 Fungsi Utama Sistem

Sesuai dengan penjelasan-penjelasan sebelumnya fungsi utama dari sistem ini

terbagi menjadi dua, yang pertama yaitu fungsi REST Web Services yang terbagi

menjadi dua yaitu REST Client dan REST Server, REST Server sebagai tempat

penyimpanan data serta tempat dimana pemain dapat meminta data dengan

menggunakan metode HTTP_REQUEST, dan REST Client (Android) sebagai

tempat pemain berinteraksi dengan aplikasi game kuis Islam yang didalamnya tetap

berhubungan dengan sistem server.

Page 62: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

45

Selanjutnya fungsi yang kedua yaitu fungsi pengacakan yang terdapat pada

soal, dimana pengacakannya menggunakan Algoritma Fisher Yates Shuffle,

pengacakan pada soal ini bertujuan agar soal-soal yang muncul tidak beruntun dan

tidak mudah ditebak oleh pemain.

3.3.3 Arsitektur Sistem

Arsitektur sistem adalah suatu penggambaran berjalannya suatu sistem, pada

gambar 3.1 digambarkan bahwa aplikasi mengirimkan sebuah request berupa JSON

ke web server, selanjutnya web server mengeksekusi query untuk mengakses

database. Setelah proses selesai, web server akan mengirimkan data/response hasil

request kepada aplikasi.

Gambar 3. 1 Arsitektur sistem.

3.3.4 Arsitektur Aplikasi

Arsitektur aplikasi adalah suatu penggambaran berjalannya suatu aplikasi, pada

gambar 3.2 digambarkan bahwa input pada aplikasi client yaitu mengirimkan

sebuah HTTP request, yang kemudian URI didefinisikan sebagai alamat atau lokasi

dari resource pada server, dan penggunaan GET sebagai method dari HTTP sebagai

proses request ke server selanjutnya web server mengeksekusi query untuk

Page 63: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

46

mengakses database. Setelah proses selesai, web server akan mengirimkan

data/response hasil request kepada aplikasi berupa materi, soal dan jawaban.

Gambar 3. 2 Arsitektur sistem.

3.4 Analisis Kebutuhan Sistem

Analisis kebutuhan sistem bertujuan untuk mengidentifikasi permasalahan

permasalahan yang ada pada aplikasi yang meliputi, perangkat keras (hardware),

perangkat lunak (software), pengguna (user) serta kebutuhan data dari sistem yang

dibuat. Analisis ini diperlukan sebagai dasar bagi tahapan perancangan sistem.

Analisis ini meliputi analisis data, spesifikasi perangkat keras, spesifikasi perangkat

lunak, spesifikasi pengguna/user, dan kebutuhan data.

3.4.1 Spesifikasi Perangkat Keras

Berikut spesifikasi standar minimal perangkat keras yang dapat digunakan

untuk membangun aplikasi ini dan spesifikasi minimal perangkat keras yang dapat

digunakan untuk menjalankan aplikasi ini, yaitu yang terlihat pada tabel 3.1 berikut:

Page 64: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

47

Tabel 3. 1 Spesifikasi Perangkat Keras

3.4.2 Spesifikasi Perangkat Lunak

Perangkat lunak digunakan dalam sebuah sistem merupakan kumpulan

perintah - perintah yang diberikan kepada perangkat keras agar saling berinteraksi

untuk melakukan suatu tugas.

Minimal perangkat lunak yang digunakan untuk membangun aplikasi ini

adalah sebagai berikut:

a. Sistem operasi Windows 7

b. JDK (Java Development Kit) versi 1.8.0_60, SDK (Software Developmenet

Kit) untuk Windows.

c. Android Studio Versi 2.2

d. Balsamiq Mockups

e. Sublime Text 3

f. Google Chrome

g. XAMPP Versi 3.2.2

No Perangakat

Keras

Spesifikasi

Perangkat Keras

Pembangun

(Komputer)

Spesifikasi

Perangkat

Keras Admin

(Komputer)

Spesifikasi

Perangkat Keras

Pengguna

(Android)

1 Prosesor Prosesor 2,4 GHz Prosesor 1,2

GHz

600 MHz

2 Resolusi

layar

1366 x 768 pixel 1366 x 768

pixel

480 x 600 pixel

3 Memori 4 Gb 1 Gb 128 MB RAM

Page 65: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

48

3.4.3 Spesifikasi Pengguna

Spesifikasi pengguna sistem dimaksudkan untuk mengetahui siapa saja aktor

yang terlibat dalam menjalankan sistem. Aplikasi ini menggunakan platform Web

dan platform teknologi Android. Terdapat dua pengguna sistem, yang pertama

adalah admin sebagai pengelola konten aplikasi dan yang kedua yaitu para

pengguna smartphone dengan platform android minimum versi 2.3 atau lebih

tinggi. Berikut ini karakteristik pengguna sistem yang ditunjukkan oleh tabel 3.2:

Tabel 3. 2 Spesifikasi Pengguna

Pengguna Hak Akses Pengalaman

Admin Mengakses aplikasi pada

platform web pengguna

dapat melihat dan

mengelola.

Mengerti konsep REST Web

Services,

Dapat mengoprasikan perintah

CRUD.

User Mengakses aplikasi pada

platform android pengguna

dapat melihat dan

menggunakan.

Tidak dibutuhkan pengalaman

karena aplikasi ini mudah untuk

digunakan.

3.4.4 Analisis Kebutuhan Data

Setelah melakukan analisis kebutuhan sistem, selanjutnya adalah melakukan

analisis kebutuhan data. Analisis ini bertujuan untuk memudahkan dalam

perancangan informasi. Adapun analisis kebutuhan data yang diperlukan antara lain

adalah data materi-materi tentang pembelajaran islam yaitu Fiqih, Akidah dan

Akhlak, Al-Qur’an dan Hadis serta Sejarah Kebudayaan Islam. Semua data itu

diperoleh dari beberapa sumber, yakni buku LKS Madrasah Aliyah kelas X, XI dan

XII dari penerbit.

Page 66: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

49

3.5 Analisis Arsitektur REST Web Services

3.5.1 Analisis REST

Dalam suatu proses permintaan data soal dan materi dari server ke client

(Android), dibutuhkan suatu arsitektur untuk melakukan sebuah aksi guna

menghubungkan aplikasi android dengan database yang ada di server. Berikut

tahapannya:

a. User/pemain memilih salah satu menu/class yang tersedia (kategori materi

atau soal). Pada setiap class sudah ditetapkan sebuah method dan sebuah

url. Method yang dimaksud adalah method get yaitu salah satu method

yang terdapat pada pemrograman PHP. Setelah itu berarti sudah terdapat

parameter yang dibutuhkan untuk menjalankan ke class API. Class ini

berfungsi menghubungi code PHP yang akan melakukan koneksi ke

database.

b. Setelah mempunyai sebuah parameter yang dibutuhkan, maka url tadi

akan digunakan sebagai alamat tujuan (dalam kasus ini ke file php)

sedangkan method digunakan untuk menjadi pilihan aksi get yang

dilakukan oleh fungsi tersebut. Metode get akan digunakan untuk

mengambil data dari server contohnya pada kasus ketika user/pemain akan

melihat materi ataupun soal kuis yang terdapat di server.

c. Setelah itu, pada file php akan dijalankan query-query dengan mengolah

nilai (value) yang telah dikirim oleh user melalui device android.

d. Setelah proses tersebut selesai, maka dari file php, dalam hal ini web server

ijn akan membalikan sebuah hasil yang dinamakan response.

Page 67: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

50

3.5.2 Dokumentasi API

Pada dokumentasi API ini, diperlihatkan sebuah tampilan JSON mengenai data

materi dan soal kuis yang terdapat pada server.

Method : GET

Gambar di bawah ini merupakan gambar dari dokumentasi API pada method get

(menampilkan response dari server).

Pada gambar 3.3 merupakan screenshot dokumentasi API dari soal yang terdapat

pada server:

Gambar 3. 3 Dokumentasi API kuis.

Pada gambar 3.4 merupakan screenshot dokumentasi API dari materi yang

terdapat pada server:

Page 68: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

51

Gambar 3. 4 Dokumentasi API materi.

3.5.3 Flowchart Arsitektur REST Web Services pada Aplikasi

Gambar 3.5 merupakan penggambaran alur proses untuk melakukan

pertukaran data, dimulai dengan user/pemain melakukan request. Lalu request di

pasring untuk mendapatkan alamat url. Setelah alamat ditemukan maka selanjutnya

mencocokan parameter dengan variabel yang ada dalam file php. Jika parameter

cocok maka fungsi yang ada di dalam file php dijalankan dan mengembalikan

sebuah response sebagai hasil dari proses dan client menerima response.

Page 69: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

52

Gambar 3. 5 Flowchart Arsitektur REST pada aplikasi.

3.6 Analisis Algoritma Fisher Yates Shuffle

Metode pengacakan yang baik sangatlah penting pada pengembangan suatu

aplikasi. Banyak metode pengacakan yang dapat dipakai tanpa terkecuali metode

Fisher-Yates Shuffle atau biasa dikenal dengan Algoritme Fisher-Yates. Kelebihan

Algoritme Fisher-Yates adalah efektifitas dari metode pengacakannya serta

kompleksitas algoritmenya yang optimal yaitu O (n).

Fisher Yates merupakan sebuah algoritma untuk menghasilkan suatu permutasi

acak dari suatu himpunan terhingga. Hasil dari pengacakan dengan menggunakan

algoritma Fisher Yates tidak akan berat sebelah, sehingga setiap permutasi memiliki

kemungkinan yang sama.

Page 70: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

53

Berikut di bawah ini gambar flowchart Algoritma Fisher Yates.

Gambar 3. 6 Flowchart Algoritma Fisher Yates.

Berikut merupakan simulasi untuk memberikan gambaran bagaimana

Algoritma Fisher Yates bekerja:

Pada gambar 3.7 - 3.10 merupakan simulasi pengacakan Algoritma Fisher

Yates Shuffle, warna coklat adalah posisi awal angka, warna merah adalah angka

yang diambil secara acak yang dipindah ke posisi akhir, dan warna hijau merupakan

angka yang pindah ke posisi asal angka yang dipindah ke belakang.

Mulai

Range Angka dari 1 sampai ke (n)

Pilih Angka Secara Acak (K) dari

Range yang Ada/Belum Dicoret

Coret K dari Range, atau Pindahkan K

ke Tempat Lain (Terakhir)

Pindahkan Angka yang Paling Akhir

dalam Range ke Posisi K yang

Dicoret/Dipindahkan

Cek Apakah Masih Ada

Angka (K) yang Belum

Dicoret/Dipindahkan

Selesai

Ya

Tidak

Page 71: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

54

Gambar 3. 7 Kondisi awal sebelum diacak.

Ambil secara acak sebuah angka, misalnya angka yang diambil acak adalah

angka ke-3, kemudian pindahkan angka yang telah terpilih ke posisi belakang dan

angka pada range terakhir (angka ke-4) dipindahkan ke posisi asal angka yang

terpilih (angka ke-3).

Gambar 3. 8 Simulasi Pengacakan Algoritma Fisher Yates Range 1-4.

Lakukan pengambilan acak kembali, misal angka ke-1, pindah posisi sebelum

angka ke-3 (yang telah dipindah sebelumnya), dan pindahkan angka ke-4 ke posisi

asal angka ke-1.

Page 72: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

55

Gambar 3. 9 Simulasi Pengacakan Algoritma Fisher Yates Range 1-3.

Lakukan pengambilan acak terakhir, misalnya angka ke-4, pindah posisi

sebelum angka ke-1 (yang telah dipindahkan sebelumnya), dan pindahkan angka

ke-2 ke posisi asal angka ke-4.

Gambar 3. 10 Simulasi Pengacakan Algoritma Fisher Yates Range 1-2.

Pada pengujian algoritma Fisher Yates di atas didapat urutan kemunculan

pilihan ganda sebagai berikut: 2, 4, 1, 3. Dari pengerjaan di atas bilangan acak yang

dibangkitkan 1 sampai 4 tidak terlihat pengulangan. Dan dapat dilihat bahwa

pengacakan dengan metode ini cukup baik karena dalam proses pengacakannya dari

bilangan yang di ambil secara random tersebut di shuffle dengan index yang belum

diacak, sehingga tidak akan ada index yang sama keluar dalam satu waktu.

Pada tabel 3.3 ditampilkan ringkasan dari contoh simulasi perhitungan

algoritma Fisher Yates Shuffle.

Page 73: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

56

Tabel 3. 3 Contoh perhitungan Fisher Yates Shuffle.

Range Angka acak yang

diambil

Penukaran dengan

elemen terakhir Hasil

1234

1-4 3 124 3

1-3 1 42 13

1-2 1 2 413

2413

3.7 Elaboration (Perluasan/Perencanaan)

3.7.1 Model Bisnis dan Kebutuhan

Secara garis besar model bisnis dan kebutuhan sistem sudah dijelaskan pada

tahapan sebelumnya (tahap inception), namun pada tahap ini bila diperlukan akan

dilakukan tambahan-tambahan untuk melengkapi apabila ada yang terlewat.

3.7.2 Analisis Kebutuhan dan Pembangunan Sistem

Berdasarkan kebutuhan-kebutuhan yang sudah didefinisikan sebelumnya,

maka dapat disimpulkan untuk pembangunan sistem ini akan terbagi menjadi dua

cakupan. Pertama adalah membangun web service yang menyediakan REST API

dengan memanfaatkan web server Apache dengan bahasa pemrograman PHP dan

penggunaan Framework Codeigniter serta database MySQL.

Kedua adalah membangun aplikasi mobile pihak klien yang nantinya akan

menggunakan beberapa HTTP method yang sudah dibuat sebelumnya sebagai

transaksi data terhadap web server atau web service.

Page 74: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

57

3.7.3 Perancangan Sistem

Karena dalam perencanaan dan pembangunan sistem ini menggunakan metode

pengembangan RUP, maka semua rancangan dan pengembangan menggunakan

konsep use case driven, yaitu semua berdasarkan kasus-kasus yang ada dalam

pembangunan aplikasi yang digambarkan dalam bentuk diagram use case.

Oleh karena itu semua berawal dari pembuatan use case dari kasus-kasus yang

ditemukan yang nantinya akan dikembangkan dan lebih dijelaskan dalam bentuk

diagram-diagram UML lainnya.

3.7.3.1 Use Case Diagram

Pada bagian use case diagram menjelaskan apa yang dapat dilakukan oleh

sistem yang akan dibangun dan siapa saja yang akan berinteraksi dengan sistem.

Use case diagram menjadi aktivitas pengguna. Use case diagram pada sistem yang

akan dibangun dapat dilihat pada gambar 3.11 berikut.

Gambar 3. 11 Use Case Diagram Sistem.

Page 75: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

58

Pada aplikasi ini memiliki dua aktor dan sepuluh use case. Aktor (user) dapat

melakukan beberapa kegiatan yang terdapat pada use case, diantanya yaitu memilih

materi, mengerjakan kuis, melihat skor, dan melihat tentang. Sedangkan aktor

(admin) dapat melakukan opsi mengelola data meteri maupun kuis, membuat push

notifikasi dan mengelola data admin.

Untuk penjelasan setiap use case secara lengkap, dapat dilihat pada tabel -

tabel dibawah ini.

a. Skenario use case memilih materi.

Nama use case : Memilih materi

Aktor : User

Tujuan : Untuk melihat/mempelajari materi.

Kondisi awal : User ingin melihat/mempelajari materi.

Kondisi akhir : User telah membuka materi yang ada.

Deskripsi : User masuk ke menu utama aplikasi, kemudian

memilih menu materi.

Tabel 3.4 menunjukan skenario use case memilih materi.

Tabel 3. 4 Skenario use case memilih materi.

Skenario use case memilih materi

Main Flow Event

Actor Action Application Response

1. User masuk ke halaman utama 2. Sistem menampilkan form

halaman utama.

3. User memilih menu materi. 4. Sistem menampilkan form yang

berisi list materi

Exceptional Flow of Event

Page 76: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

59

b. Skenario use case mengerjakan kuis.

Nama use case : Mengerjakan kuis

Aktor : User

Tujuan : Untuk melatih hasil pemahaman User terhadap

materi yang telah dipelajari

Kondisi awal : User ingin mengerjakan latihan soal.

Kondisi akhir : User telah mendapatkan hasil latihan.

Deskripsi : User masuk ke halaman utama aplikasi,

kemudian memilih menu latihan kuis.

Tabel 3.5 menunjukan skenario use case mengerjakan latihan.

Tabel 3. 5 Skenario use case mengerjakan latihan.

Skenario use case mengerjakan kuis

Main Flow Event

Actor Action Application Response

1. User masuk ke halaman utama 2. Sistem menampilkan form

halaman utama.

3. User memilih menu latihan. 4. Sistem menampilkan form yang

berisi latihan soal.

Exceptional Flow of Event

User hanya dapat memilih satu jawaban.

c. Skenario use case melihat skor.

Nama use case : Melihat skor

Aktor : User

Tujuan : Untuk menghitung skor hasil latihan kuis.

Kondisi awal : User mengerjakan soal latihan pada aplikasi

Page 77: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

60

Kondisi akhir : User mendapatkan skor hasil latihan.

Deskripsi : User memilih menu latihan kuis, setelah selesai

mengerjakan soal, sistem menampilkan hasil

skornya.

Tabel 3.6 menunjukan skenario use case menghitung skor.

Tabel 3. 6 Skenario use case menghitung skor.

Skenario use case melihat skor

Main Flow Event

Actor Action Application Response

1. User masuk ke halaman utama 2. Sistem menampilkan form

halaman utama.

3. User memilih menu latihan kuis. 4. Sistem menampilkan form yang

berisi latihan soal.

5. Sistem menampilkan skor hasil

latihan soal

Exceptional Flow of Event

d. Skenario use case memilih tentang.

Nama use case : Memilih tentang

Aktor : User

Tujuan : Untuk melihat informasi seputar aplikasi

Kondisi awal : User ingin melihat informasi aplikasi

Kondisi akhir : User telah masuk ke menu tentang

Deskripsi : User masuk ke halaman utama pada aplikasi

kemudian memilih menu tentang.

Page 78: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

61

Tabel 3.7 menunjukan skenario use case memilih tentang.

Tabel 3. 7 Skenario use case memilih tentang.

Skenario use case memilih tentang

Main Flow Event

Actor Action Application Response

1. User masuk ke halaman utama 2. Sistem menampilkan form

halaman utama.

3. User memilih menu tentang. 4. Sistem menampilkan halaman

tentang.

Exceptional Flow of Event

e. Skenario use case mengelola data materi.

Nama use case : Mengelola data materi

Aktor : Admin

Tujuan : Untuk mengelola data materi pada server.

Kondisi awal : Admin ingin melihat/mengelola data materi.

Kondisi akhir : Admin telah melihat/mengelola data materi yang

ada.

Deskripsi : Admin masuk ke halaman dashboard, kemudian

memilih menu materi.

Tabel 3.8 menunjukan skenario use case menelola data materi.

Tabel 3. 8 Skenario use case mengelola data materi.

Skenario use case mengelola data materi

Main Flow Event

Actor Action Application Response

1. Admin masuk ke halaman

dashboard

2. Sistem menampilkan form

halaman dashboard.

Page 79: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

62

Tabel 3.8 Skenario use case mengelola data materi (Lanjutan).

3. Admin memilih menu materi. 4. Sistem menampilkan form yang

berisi opsi list untuk mengelola

materi

Exceptional Flow of Event

Dalam fitur pencarian data materi jika materi tidak ditemukan, sistem

akan memberikan pesan.

f. Skenario use case mengelola data kuis.

Nama use case : Mengelola data kuis

Aktor : Admin

Tujuan : Untuk mengelola data kuis pada server.

Kondisi awal : Admin ingin melihat/mengelola data kuis.

Kondisi akhir : Admin telah melihat/mengelola data kuis yang

ada

Deskripsi : Admin masuk ke halaman dashboard, kemudian

memilih menu game kuis.

Tabel 3.9 menunjukan skenario use case mengelola data kuisd.

Tabel 3. 9 Skenario use case mengelola data kuis.

Skenario use case mengelola data kuis

Main Flow Event

Actor Action Application Response

1. Admin masuk ke halaman

dashboard

2. Sistem menampilkan form

halaman dashboard.

3. Admin memilih menu game kuis. 4. Sistem menampilkan form yang

berisi opsi list untuk mengelola

data kuis

Exceptional Flow of Event

Page 80: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

63

g. Skenario use case mengacak soal.

Nama use case : Mengacak soal

Aktor : User

Tujuan : Untuk mengacak soal.

Kondisi awal : User membuka soal kuis pada aplikasi.

Kondisi akhir : Sistem mengacak kuis pada aplikasi.

Deskripsi : User memilih menu kuis, sistem melakukan

pengacakan.

Tabel 3.10 menunjukan skenario use case mengacak soal.

Tabel 3. 10 Skenario use case mengacak soal.

Skenario use case mengacak soal

Main Flow Event

Actor Action Application Response

1. User masuk ke halaman utama 2. Sistem menampilkan form

halaman utama.

3. User memilih menu latihan. 4. Sistem mengacak soal dari

server

5. Sistem menampilkan form yang

berisi latihan soal.

Exceptional Flow of Event

User hanya dapat memilih satu jawaban.

h. Skenario use case membuat push notifikasi.

Nama use case : Membuat push notifikasi

Aktor : Admin

Tujuan : Untuk membuat push notifikasi yaang akan

ditampilkan pada client.

Page 81: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

64

Kondisi awal : Admin ingin membuat notifikasi.

Kondisi akhir : Admin telah membuat notifikasi

Deskripsi : Admin masuk ke halaman dashboard, kemudian

memilih menu push notifikasi.

Tabel 3.11 menunjukan skenario use case membuat push notifikasi.

Tabel 3. 11 Skenario use case membuat push notifikasi.

Skenario use case membuat push notifikasi

Main Flow Event

Actor Action Application Response

1. Admin masuk ke halaman

dashboard

2. Sistem menampilkan form

halaman dashboard.

3. Admin memilih menu push

notifikasi.

4. Sistem menampilkan form yang

berisi dialog untuk membuat

notifikasi

Exceptional Flow of Event

i. Skenario use case mengelola data admin.

Nama use case : Mengelola data admin

Aktor : Admin

Tujuan : Untuk mengelola data admin pada server.

Kondisi awal : Admin ingin melihat/mengelola data admin.

Kondisi akhir : Admin telah melihat/mengelola data admin yang

ada

Deskripsi : Admin masuk ke halaman dashboard, kemudian

memilih menu setting.

Page 82: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

65

Tabel 3.12 menunjukan skenario use case mengelola data admin.

Tabel 3. 12 Skenario use case mengelola data admin.

Skenario use case mengelola data admin

Main Flow Event

Actor Action Application Response

1. Admin masuk ke halaman

dashboard

2. Sistem menampilkan form

halaman dashboard.

3. Admin memilih menu setting. 4. Sistem menampilkan form yang

berisi opsi untuk mengelola data

admin

Exceptional Flow of Event

Dalam fitur ini, jika input password tidak sama, maka sistem akan

menampilkan pesan warning.

j. Skenario use case mengelola proses Web Services.

Nama use case : Proses Web Services

Aktor : Admin/User

Tujuan : Untuk fungsi transfer/pertukaran data data dari

server ke client ataupun sebaliknya.

Kondisi awal : Admin menyediakan resource data materi/kuis

pada server.

Kondisi akhir : Client berhasil melakukan request pada server

dan kemudian server memberikan response pada

client

Deskripsi : Client melakukan request pada server dan

kemudian server memberikan response pada

client.

Page 83: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

66

Tabel 3.13 menunjukan skenario use case proses web services.

Tabel 3. 13 Skenario use case proses web services.

Skenario use case proses web services

Main Flow Event

Actor Action Application Response

1. Admin menginputkan data

materi/kuis pada server

2. Sistem menyimpan inputan dari

admin berupa resource data.

3. User melakukan request pada

aplikasi client.

4. Sistem memberikan response

data pada client

Exceptional Flow of Event

3.7.3.2 Activity Diagram

Perancangan activity diagram menggambarkan berbagai alir aktivitas dalam

sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision

yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat

menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.

Adapun Activity diagram pada sistem yang akan dibangun meliputi:

Pada gambar 3.12 berikut menujukkan activity diagram proses web

services.

Gambar 3. 12 Activity diagram proses web services.

Page 84: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

67

Gambar 3.12 menjelaskan aktivitas yang menggambarkan ruang lingkup

dari REST, pada proses pertama user/client memanggil/request data ke server

menggunakan HTTP METHOD, selanjutnya server akan mengecek parameter yang

dikirimkan oleh user/client, jika parameter yang dikirim user/client tidak sesuai/

tidak terdapat pada server, maka server akan memberikan notifikasi kosong pada

user/client, namun jika kondisi parameter yang dikirim user/client sesuai/terdapat

pada server maka server akan memproses kueri yang akan dikirimkan pada

database, selanjutnya database akan mengeksekusi kueri dan mengembalikan data

pada server, server kemudian akan melakukan response data pada client, dan pada

proses terakhir, user/client akan menampilkan hasil response dari server.

3.7.3.2.1 Activity Diagram Server Side

a. Activity diagram mengelola data materi

Pada gambar 3.13 berikut menujukkan activity diagram mengelola

data materi.

Gambar 3. 13 Activity diagram mengelola data materi.

Page 85: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

68

Gambar 3.13 menjelaskan aktivitas yang dilakukan admin pada saat

mengelola data materi. Proses pertama yang akan dilakukan admin yaitu

masuk kedalam aplikasi selanjunya sistem akan menampilkan halaman

dashboard aplikasi, lalu admin memilih menu materi yang ada pada aplikasi,

kemudian sistem akan menampilkan halaman materi yang di dalamnya

terdapat opsi untuk mengelola materi (tambah, hapus, edit, cari, lihat) data,

selanjunya admin kembali memilih opsi yang terdapat pada menu materi,

selanjutnya pada proses terakhir, sistem memproses opsi yang sudah dipilih

oleh admin.

b. Activity diagram mengelola data kuis

Pada gambar 3.14 berikut menujukkan activity diagram mengelola

data kuis.

Gambar 3. 14 Activity diagram mengelola data kuis.

Page 86: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

69

Gambar 3.14 menjelaskan aktivitas yang dilakukan admin pada saat

mengelola data kuis. Proses pertama yang akan dilakukan admin yaitu

masuk kedalam aplikasi selanjunya sistem akan menampilkan halaman

dashboard aplikasi, lalu admin memilih menug game kuis yang ada pada

aplikasi, kemudian sistem akan menampilkan halaman kuis yang di

dalamnya terdapat opsi untuk mengelola kuis (tambah, hapus, edit, cari,

lihat) data, selanjunya admin kembali memilih opsi yang terdapat pada

menu kuis, selanjutnya pada proses terakhir, sistem memproses opsi yang

sudah dipilih oleh admin.

c. Activity diagram membuat push notifikasi

Pada gambar 3.15 berikut menujukkan activity diagram membuat

push notifikasi.

Gambar 3. 15 Activity diagram membuat push notifikasi.

Gambar 3.15 menjelaskan aktivitas yang dilakukan admin pada saat

membuat push notifikasi. Proses pertama yang akan dilakukan admin yaitu

Page 87: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

70

masuk ke dalam aplikasi, selanjunya sistem akan menampilkan halaman

dashboard aplikasi, lalu admin memilih menu push notifikasi yang ada pada

aplikasi, kemudian sistem akan menampilkan halaman push notifikasi yang

di dalamnya terdapat opsi untuk memasukkan judul dan pesan notifikasi,

selanjunya admin memasukkan data notifikasi dan melakukan submit

notifikasi, dan proses terakhir, sistem akan memproses push notifikasi.

d. Activity diagram mengelola data admin

Pada gambar 3.16 berikut menujukkan activity diagram mengelola

data admin.

Gambar 3. 16 Activity diagram mengelola data admin.

Gambar 3.16 menjelaskan aktivitas yang dilakukan admin pada saat

mengelola data admin. Proses pertama yang akan dilakukan admin yaitu

masuk ke dalam aplikasi, selanjunya sistem akan menampilkan halaman

dashboard aplikasi, lalu admin memilih menu setting yang ada pada

aplikasi, kemudian sistem akan menampilkan halaman setting yang di

Page 88: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

71

dalamnya terdapat opsi untuk mengubah data admin, selanjunya admin

memasukkan data untuk mengubah data admin dan melakukan submit,

selanjutnya proses terakhir, sistem akan memproses permintaan admin.

3.7.3.2.2 Activity Diagram Client Side

a. Activity diagram memilih materi

Pada gambar 3.17 berikut menujukkan activity diagram memilih materi.

Gambar 3. 17 Activity diagram memilih materi.

Gambar 3.17 menjelaskan aktivitas yang dilakukan user pada saat

memilih materi. Proses pertama yang akan dilakukan user yaitu masuk

kedalam aplikasi selanjunya sistem akan menampilkan halaman utama pada

aplikasi, lalu user memilih menu materi yang ada pada aplikasi, kemudian

sistem akan menampilkan halaman kategori materi pada aplikasi,

selanjunya user kembali memilih kategori materi yang terdapat pada

Page 89: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

72

aplikasi, kemudian pada proses terakhir sistem akan menampilkan halaman

kategori yang sudah dipilih oleh user.

b. Activity diagram mengerjakan kuis

Pada gambar 3.18 berikut menujukkan activity diagram mengerjakan kuis.

Gambar 3. 18 Activity diagram mengerjakan kuis.

Gambar 3.18 menjelaskan aktivitas yang dilakukan user pada saat

memilih menu mengerjakan kuis. Proses pertama yang akan dilakukan user

yaitu masuk kedalam aplikasi selanjunya sistem akan menampilkan

halaman utama pada aplikasi, lalu user memilih menu kuis yang ada pada

aplikasi, kemudian pada proses terakhir sistem akan menampilkan halaman

kuis pada aplikasi.

c. Activity diagram melihat skor

Pada gambar 3.19 berikut menujukkan activity diagram melihat skor.

Gambar 3. 19 Activity diagram melihat skor.

Page 90: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

73

Gambar 3.19 menjelaskan aktivitas yang dilakukan user pada saat

proses melihat skor. Proses pertama yang akan dilakukan user yaitu masuk

ke dalam aplikasi selanjunya sistem akan menampilkan halaman utama pada

aplikasi, lalu user memilih menu kuis yang ada pada aplikasi, kemudian

sistem akan menampilkan halaman kuis pada aplikasi, lalu user

mengerjakan soal kuis yang ada pada aplikasi sampai selesai, kemudian

pada proses terakhir sistem akan menampilkan skor hasil pengerjaain kuis.

d. Activity diagram memilih tentang

Pada gambar 3.20 berikut menujukkan activity diagram memilih tentang.

Gambar 3. 20 Activity diagram memilih tentang.

Gambar 3.20 menjelaskan aktivitas yang dilakukan user pada saat

memilih menu tentang. Proses pertama yang akan dilakukan user yaitu

masuk kedalam aplikasi, selanjutnya sistem akan menampilkan halaman

utama pada aplikasi, lalu user memilih menu tentang yang ada pada aplikasi,

kemudian pada proses terakhir, sistem akan menampilkan halaman tentang

pada aplikasi.

Page 91: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

74

3.7.3.3 Class Diagram

Class diagram (Diagram Kelas) merupakan sebuah diagram yang digunakan

untuk memodelkan kelas-kelas yang digunakan di dalam sistem beserta hubungan

antar kelas dalam sistem tersebut. Beberapa elemen penting dalam diagram kelas

adalah kelas dan relasi antar kelas. Berikut merupakan class diagram pada sistem

yang akan dibangun.

3.7.3.3.1 Class Diagram Server Side

Gambar 3. 21 Class diagram server side.

3.7.3.3.2 Class Diagram Client Side

Gambar 3. 22 Class diagram client side.

Page 92: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

75

3.7.3.4 Sequence Diagram

3.7.3.4.1 Sequence Diagram Server Side

a. Sequence diagram mengelola data materi

Gambar 3.23 ini merupakan sequence diagram mengelola data

materi yang menampilkan detail data materi saat admin memilih tombol

materi pada menu dashboard server. Object dari sequence diagram ini

adalah Admin, Dashboard, dan Materi.

Gambar 3. 23 Sequence diagram mengelola data materi.

b. Sequence diagram mengelola data kuis

Gambar 3.24 ini merupakan sequence diagram mengelola data kuis

yang menampilkan detail data kuis saat admin memilih tombol game kuis

Page 93: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

76

pada menu dashboard server. Object dari sequence diagram ini adalah

Admin, Dashboard, dan Kuis.

Gambar 3. 24 Sequence diagram mengelola data kuis.

c. Sequence diagram membuat push notifikasi

Gambar 3.25 ini merupakan sequence diagram membuat push

notifikasi yang menampilkan detail push notifikasi saat admin memilih

tombol push notifikasi pada menu dashboard server. Object dari sequence

diagram ini adalah Admin, Dashboard, dan Push Notifikasi.

Page 94: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

77

Gambar 3. 25 Sequence diagram membuat push notifikasi.

d. Sequence diagram mengelola data admin

Gambar 3.26 ini merupakan sequence diagram mengelola data

admin yang menampilkan detail pengelolaan data admin saat admin

memilih tombol setting pada menu dashboard server. Object dari sequence

diagram ini adalah Admin, Dashboard, dan Setting.

Gambar 3. 26 Sequence diagram mengelola data admin.

Page 95: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

78

3.7.3.4.2 Sequence Diagram Client Side

a. Sequence diagram memilih materi

Gambar 3.27 ini merupakan sequence diagram memilih materi yang

menampilkan detail materi saat user memilih tombol materi pada menu

utama. Object dari sequence diagram ini adalah user, SplashScreen,

MenuUtama, Materi, DetailMateri, dan ServiceHandler.

Gambar 3. 27 Sequence diagram memilih materi.

b. Sequence diagram memilih kuis

Gambar 3.28 ini merupakan sequence diagram mengerjakan kuis

yang menampilkan soal latihan saat user memilih tombol latihan pada menu

utama. Object dari sequence diagram ini adalah user, SplashScreen,

MenuUtama, Kuis ServiceHandler dan API.

Page 96: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

79

Gambar 3. 28 Sequence diagram memilih kuis.

c. Sequence diagram melihat skor

Gambar 3.29 ini merupakan sequence diagram melihat skor yang

menampilkan total skor yang didapatkan setelah mengerjakan kuis. Object

dari sequence diagram ini adaah user, SplashScreen, MenuUtama, Kuis,

ServiceHandler dan API.

Gambar 3. 29 Sequence diagram melihat skor.

d. Sequence diagram memilih tentang

Gambar 3.30 ini merupakan sequence diagram memilih tentang

yang menampilkan detail keterangan aplikasi saat user memilih tombol

tentang pada menu utama. Object dari sequence diagram ini adalah user,

SplashScreen, MenuUtama dan Tentang.

Page 97: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

80

Gambar 3. 30 Sequence diagram memilih tentang.

3.7.3.5 Perancangan Database

3.7.3.5.1 Perancangan Tabel

a. Tabel Materi

Primary key : id

Foreign key : -

Fungsi : Merupakan tabel untuk menyimpan data materi

Tabel 3.14 berikut menujukkan perancangan dari tabel materi.

Tabel 3. 14 Perancangan tabel materi.

Nama Field Tipe Data Keterangan

Id Integer Id sebagai primary key

Judul Varchar Judul sebagai judul materi

Kategori Varchar Sebagai kategori materi

Materi Text Sebagai deskripsi materi

b. Tabel Kuis

Primary key : id

Foreign key : -

Fungsi : Merupakan tabel untuk menyimpan data kuis

Page 98: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

81

Tabel 3.15 berikut menujukkan perancangan dari tabel kuis.

Tabel 3. 15 Perancangan tabel kuis.

Nama Field Tipe Data Keterangan

Id Integer id sebagai primary key

Kategori Integer Sebagai kategori soal

Pertanyaan Varchar Sebagai pertanyaan pada soal – soal

A Text Sebagai opsi jawaban

B Text Sebagai opsi jawaban

C Text Sebagai opsi jawaban

D Text Sebagai opsi jawaban

Jawaban Integer Sebagai kunci jawaban

c. Tabel push notifikasi

Primary key : id

Foreign key : -

Fungsi : Merupakan tabel untuk proses push notifikasi

Tabel 3.16 berikut menujukkan perancangan dari tabel admin.

Tabel 3. 16 Perancangan tabel push notifikasi.

Nama Field Tipe Data Keterangan

Id Integer id sebagai primary key

Token Varchar Sebagai penyimpanan token

d. Tabel admin

Primary key : id

Foreign key : -

Fungsi : Merupakan tabel untuk mengelola data admin

Page 99: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

82

Tabel 3.17 berikut menujukkan perancangan dari tabel admin.

Tabel 3. 17 Perancangan tabel admin.

Nama Field Tipe Data Keterangan

Id Integer id sebagai primary key

Email Varchar Sebagai email admin

Username Varchar Sebagai username admin

Password Varchar Sebagai password admin

3.7.3.6 Perancangan Antar Muka

Perancangan antar muka aplikasi bertujuan untuk memberikan gambaran

tentang aplikasi yang akan dibangun, sehingga akan mempermudah dalam

mengimplementasikan pembuatannya.

3.7.3.6.1 Server Side

a. Halaman Login Admin

Gambar 3.31 berikut menujukkan desain halaman login admin.

Gambar 3. 31 Halaman login admin.

Page 100: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

83

b. Halaman Dashboard

Gambar 3.32 berikut menujukkan desain halaman dashboard.

Gambar 3. 32 Halaman dashboard.

c. Halaman Status Materi

Gambar 3.33 berikut menujukkan desain halaman status materi.

Gambar 3. 33 Halaman status materi.

d. Halaman Detail Materi

Gambar 3.34 berikut menujukkan desain halaman detail materi.

Gambar 3. 34 Halaman detail materi.

Page 101: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

84

e. Halaman Tambah Materi

Gambar 3.35 berikut menujukkan desain halaman tambah materi.

Gambar 3. 35 Halaman tambah materi.

f. Halaman Edit Materi

Gambar 3.36 berikut menujukkan desain halaman edit materi.

Gambar 3. 36 Halaman edit materi.

g. Halaman Hapus Materi

Gambar 3.37 berikut menujukkan desain halaman hapus materi.

Gambar 3. 37 Halaman hapus materi.

Page 102: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

85

h. Halaman Status Kuis

Gambar 3.38 berikut menujukkan desain halaman status kuis.

Gambar 3. 38 Halaman status kuis.

i. Halaman Detail Kuis

Gambar 3.39 berikut menujukkan desain halaman detail kuis.

Gambar 3. 39 Halaman detail kuis.

j. Halaman Tambah Kuis

Gambar 3.40 berikut menujukkan desain halaman tambah kuis.

Gambar 3. 40 Halaman tambah kuis.

Page 103: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

86

k. Halaman Edit Kuis

Gambar 3.41 berikut menujukkan desain halaman edit kuis.

Gambar 3. 41 Halaman edit kuis.

l. Halaman Hapus kuis

Gambar 3.42 berikut menujukkan desain halaman hapus kuis.

Gambar 3. 42 Halaman hapus kuis.

m. Halaman Push Notifikasi

Gambar 3.43 berikut menujukkan desain halaman push notifikasi.

Gambar 3. 43 Halaman push notifikasi.

Page 104: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

87

n. Halaman Setting/Edit Admin

Gambar 3.44 berikut menujukkan desain halaman setting/edit

admin.

Gambar 3. 44 Halaman setting/edit admin

3.7.3.6.2 Client Side

a. Halaman Menu Utama

Gambar 3.45 berikut menujukkan desain halaman menu utama.

Gambar 3. 45 Halaman menu utama.

b. Halaman Kategori Materi

Gambar 3.46 berikut menujukkan desain halaman kategori materi.

Page 105: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

88

Gambar 3. 46 Halaman kategori materi.

c. Halaman Detail Materi

Gambar 3.47 berikut menujukkan desain halaman detail materi.

Gambar 3. 47 Halaman detail materi.

d. Halaman Kategori Kuis

Gambar 3.48 berikut menujukkan desain halaman kategori kuis.

Gambar 3. 48 Halaman kategori kuis.

Page 106: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

89

e. Halaman Kuis

Gambar 3.49 berikut menujukkan desain halaman kuis.

Gambar 3. 49 Halaman kuis.

f. Halaman Skor

Gambar 3.50 berikut menujukkan desain halaman skor.

Gambar 3. 50 Halaman skor.

g. Halaman Exit Dialog

Gambar 3.51 berikut menujukkan desain halaman exit dialog.

Gambar 3. 51 Halaman exit dialog.

Page 107: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

90

BAB IV

IMPLEMENTASI DAN PENGUJIAN

4.1 Construction (Konstruksi)

Tahap Construction (Konstruksi) merupakan tahap pengkodean (coding),

dimana pembuatan sistem dilakukan secara nyata. Pembuatan tersebut tentunya

harus mengacu kepada parameter yang telah ditentukan dari fase sebelumnya.

Setelah tahap pengkodean, sistem diuji untuk mengetahui tingkat kesalahan pada

sistem tersebut.

Pada tahap ini terdapat beberapa langkah yang perlu dilakukan untuk

pembangunan sistem, yaitu:

4.2 Implementasi Sistem

Dalam tahap implementasi sistem ini merupakan tahap selanjutnya dari tahap

perancangan sistem yang telah didesain sedemikian rupa. Lalu pada Bab IV inilah

implementasi dari perancangan tersebut. Implementasi merupakan suatu prosuder

atau uraian mengenai tahapan yang telah dilakukan dan menjelaskan segala sesuatu

yang dibutuhkan dalam proses implementasi yang berupa komputerisasi sistem.

4.3 Perangkat Pendukung

Dalam pembuatan aplikasi/program ini tentunya dibutuhkan perangkat keras

(hardware) dan perangkat lunak (software). Berikut spesifikasi perangkat keras dan

perangkat lunak yang digunakan dalam pembangunan aplikasi.

Page 108: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

91

4.3.1 Perangkat Keras

Spesifikasi minimum perangkat keras (hardware) pendukung yang digunakan

dalam proses implementasi pembangunan aplikasi ini diantaranya.

4.3.1.1 Perangkat Keras Server

Komputer dengan processor 1.2 GHz, harddisk dengan kapasitas minimal 80

GigaByte (GB) untuk penyimpanan data, Random Access Memory (RAM) 1

GigaByte (GB), serta VGA Card dengan minimal kapasitas 512 MegaByte (MB).

Tabel 4. 1 Spesifikasi perangkat keras server.

Perangkat Keras Keterangan

Processor 1.2 GHz

Memory 1 GB

Harddisk 80 GB

Video Card 512 MB

4.3.1.2 Perangkat Keras Client

Perangkat keras (hardware) yang digunakan untuk client yaitu smartphone

berbasis android dengan spesifikasi minimal processor 1 GHz, memory 1 GB dan

resolusi layar 720 x 1280 pixel.

Tabel 4. 2 Spesifikasi perangkat keras client.

Perangkat Keras Keterangan

Processor 1 GHz

Memory 1 GB

Resolusi layar 720 x 1280 pixel

Page 109: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

92

4.3.2 Perangkat Lunak

Spesifikasi minimum perangkat lunak (software) pendukung yang digunakan

dalam proses implementasi pembangunan aplikasi ini diantaranya.

4.3.2.1 Perangkat Lunak Server

Perangkat lunak server yang digunakan dalam pembuatan sistem ini dengan

spesifikasi minimal yaitu:

a. Sistem Operasi Windows 7 32/64 Bit

b. Apache Web Server versi 2.4.9

c. Scripting Framework Codeigniter versi 3.1.0

d. Database MySql versi 5.6.17

e. Browser Mozilla Firefox

4.3.2.2 Perangkat Lunak Client

Perangkat lunak client yang digunakan dalam pembuatan sistem ini dengan

spesifikasi minimal yaitu:

a. Sistem Operasi Android versi 4.2.2 (Jelly Bean)

4.4 Implementasi Database

Implementasi database dibuat dengan aplikasi HeidiSQL dengan XAMPP

control panel sebagai paket servis lokal versi 3.2.2. Terdapat tiga tabel yang berada

di dalam database yaitu tabel materi, tabel kuis dan tabel admin.

4.4.1 Implementasi Tabel Materi

Pada tabel ini terdapat empat kolom dengan satu buah Primary Key yaitu

kolom id. Tabel ini dibuat dengan kueri:

Page 110: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

93

CREATE TABLE `tbl_materi` (

`id` INT(10) NOT NULL AUTO_INCREMENT,

`judul` VARCHAR(50) NOT NULL,

`kategori` VARCHAR(25) NOT NULL,

`materi` TEXT NOT NULL,

PRIMARY KEY (`id`)

);

Gambar 4.1 menunjukan implementasi dari tabel materi.

Gambar 4. 1 Tabel Materi.

4.4.2 Implementasi Tabel Kuis

Pada tabel ini terdapat delapan kolom dengan satu buah Primary Key yaitu

kolom id. Tabel ini dibuat dengan kueri:

CREATE TABLE `tbl_kuis` (

`id` INT(5) NOT NULL AUTO_INCREMENT,

`kategori` INT(1) NOT NULL,

`pertanyaan` TEXT NOT NULL,

`a` TEXT NOT NULL,

`b` TEXT NOT NULL,

`c` TEXT NOT NULL,

`d` TEXT NOT NULL,

`jawaban` INT(2) NOT NULL,

PRIMARY KEY (`id`)

);

Gambar 4.2 menunjukan implementasi dari tabel kuis.

Gambar 4. 2 Tabel Kuis.

Page 111: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

94

4.4.3 Implementasi Tabel Notifikasi

Pada tabel ini terdapat dua kolom dengan satu buah Primary Key yaitu

kolom id. Tabel ini dibuat dengan kueri:

CREATE TABLE `tbl_notifikasi` (

`id` INT(20) NOT NULL AUTO_INCREMENT,

`Token` VARCHAR(200) NOT NULL,

PRIMARY KEY (`id`),

UNIQUE INDEX `Token` (`Token`)

);

Gambar 4.3 menunjukan implementasi dari tabel notifikasi.

Gambar 4. 3 Tabel Notifikasi.

4.4.4 Implementasi Tabel Admin

Pada tabel ini terdapat empat kolom dengan satu buah Primary Key yaitu

kolom id. Tabel ini dibuat dengan kueri:

CREATE TABLE `tbl_admin` (

`id` INT(3) NOT NULL,

`email` VARCHAR(50) NOT NULL,

`username` VARCHAR(30) NOT NULL,

`password` VARCHAR(50) NOT NULL,

PRIMARY KEY (`id`)

);

Gambar 4.4 menunjukan implementasi dari tabel admin.

Gambar 4. 4 Tabel Admin.

Page 112: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

95

4.5 Implementasi Antar Muka

Pada implementasi antar muka (interface) dibagi menjadi dua bagian yaitu

antar muka (interface) server side dan antar muka (interface) client side.

4.5.1 Implementasi Antar Muka Server (Admin)

Implementasi antarmuka pada server berisi tampilan-tampilan dari sistem

yang dijalankan, diantaranya tampilan login, dashboard, menu materi, menu kuis,

menu push notifikasi dan menu setting.

4.5.1.1 Tampilan Halaman Login

Halaman login pada gambar 4.5 merupakan tampilan pertama yang muncul

ketika admin menjalankan sistem. Dimana admin harus memasukkan terlebih

dahulu akun berupa username dan password agar bisa masuk ke halaman

selanjutnya (halaman dashboard).

Gambar 4. 5 Tampilan Halaman Login.

4.5.1.2 Tampilan Halaman Dashboard

Halaman dashboard pada gambar 4.6 merupakan tampilan yang muncul

ketika admin berhasil melakukan login. Halaman ini berisi opsi-opsi menu yang

Page 113: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

96

akan dipilih oleh admin dalam mengelola aplikasi, di dalam menu dashboard ini

terdapat pilihan menu materi, menu kuis, menu setting dan logout sistem.

Gambar 4. 6 Tampilan Halaman Dashboard.

4.5.1.3 Tampilan Halaman Menu Materi

Halaman menu materi pada gambar 4.7 merupakan tampilan yang muncul

ketika admin memilih menu materi pada halaman dashboard. Pada halaman ini

berisi opsi untuk mengelola data materi yang dapat dilakukan oleh admin

diantaranya, menambah data baru, mengedit data yang sudah ada, menghapus data,

melihat detail data, dan melakukan pencarian data.

Gambar 4. 7 Tampilan Halaman Menu Materi.

Page 114: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

97

4.5.1.4 Tampilan Halaman Menu Kuis

Halaman menu kuis pada gambar 4.8 merupakan tampilan yang muncul

ketika admin memilih menu kuis pada halaman dashboard. Pada halaman ini berisi

opsi untuk mengelola data kuis yang dapat dilakukan oleh admin diantaranya,

menambah data baru, mengedit data yang sudah ada, menghapus data, melihat

detail data, dan melakukan pencarian data.

Gambar 4. 8 Tampilan Halaman Menu Kuis.

4.5.1.5 Tampilan Halaman Push Notifikasi

Halaman menu kuis pada gambar 4.9 merupakan tampilan yang muncul

ketika admin memilih menu kuis pada halaman dashboard. Pada halaman ini berisi

opsi untuk mengelola data kuis yang dapat dilakukan oleh admin diantaranya,

menambah data baru, mengedit data yang sudah ada, menghapus data, melihat

detail data, dan melakukan pencarian data.

Page 115: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

98

Gambar 4. 9 Tampilan Halaman Push Notifikasi.

4.5.1.6 Tampilan Halaman Setting

Halaman setting pada gambar 4.10 merupakan tampilan yang muncul ketika

admin memilih menu setting pada halaman dashboard. Pada halaman ini berisi opsi

untuk mengelola data admin, diantaranya melakukan penggantian username dan

password admin.

Gambar 4. 10 Tampilan Halaman Setting.

Page 116: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

99

4.5.2 Implementasi Antar Muka Client Side (User)

Implementasi antarmuka client atau pengguna, berisi tampilan-tampilan

pada sistem operasi android, diantaranya tampilan splash screen, menu utama,

menu materi yang berisi kategori materi, menu detail materi, menu kategori kuis

yang berisi kategori kuis, menu game play kuis, menu skor dan menu tentang

aplikasi.

4.5.2.1 Tampilan Halaman Splash Screen

Halaman splash screen pada gambar 4.11 merupakan tampilan yang muncul

ketika user pertama kali membuka aplikasi pembelajaran dan kuis Islami ini.

Gambar 4. 11 Tampilan Halaman Splash Screen.

4.5.2.2 Tampilan Halaman Menu Utama

Halaman menu utama pada gambar 4.12 merupakan tampilan yang muncul

setelah halaman splash screen. Halaman ini berisi opsi-opsi menu yang akan dipilih

Page 117: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

100

oleh user, dimana pada menu utama ini terdapat opsi menu materi, menu kuis,

menu tentang aplikasi dan menu keluar dari aplikasi.

Gambar 4. 12 Tampilan Halaman Menu Utama.

4.5.2.3 Tampilan Halaman Menu Materi

Halaman menu materi pada gambar 4.13 merupakan tampilan yang muncul

ketika user memilih menu materi pada halaman menu utama. Halaman ini berisi

opsi list kategori untuk memilih materi yang akan dipelajari oleh user, dimana

terdapat empat kategori materi yang dapat dipilih oleh user yaitu Akidah Akhlak,

Al-Qur’an Hadis, Fiqih dan SKI.

Page 118: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

101

Gambar 4. 13 Tampilan Halaman Menu Materi.

4.5.2.4 Tampilan Halaman Menu Detail Materi

Halaman menu detail materi pada gambar 4.14 merupakan tampilan yang

muncul ketika user memilih opsi judul materi yang ada pada salah satu list kategori

materi. Halaman ini berisi opsi untuk melihat detail materi yang akan dipelajari oleh

user.

Page 119: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

102

Gambar 4. 14 Tampilan Halaman Menu Detail Materi.

4.5.2.5 Tampilan Halaman Menu Kuis

Halaman menu kuis pada gambar 4.15 merupakan tampilan yang muncul

ketika user memilih menu kuis pada halaman menu utama. Halaman ini berisi opsi

list kategori untuk memilih game play kuis yang akan dipilih oleh user, dimana

terdapat empat opsi kategori game play kuis yang dapat dipilih oleh user yaitu

Akidah Akhlak, Al-Qur’an Hadis, Fiqih dan SKI.

Page 120: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

103

Gambar 4. 15 Tampilan Halaman Menu Kuis.

4.5.2.6 Tampilan Halaman Menu Game Play Kuis

Halaman menu game play kuis pada gambar 4.16 merupakan tampilan yang

muncul ketika user memilih opsi materi kuis yang ada pada salah satu list kategori

kuis. Halaman untuk menyediakan latihan – latihan soal untuk proses evaluasi dari

pembelajaran yang sudah dilakukan user.

Page 121: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

104

Gambar 4. 16 Tampilan Halaman Game Play Kuis.

4.5.2.7 Tampilan Halaman Skor

Halaman skor pada gambar 4.17 merupakan tampilan yang muncul ketika

user telah selesai melaksanakan evaluasi dengan menjawab soal-soal latihan yang

diberikan secara acak oleh sistem pada menu game play.

Gambar 4. 17 Tampilan Halaman Skor.

Page 122: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

105

4.5.2.8 Tampilan Halaman Tentang Aplikasi

Halaman tentang aplikasi pada gambar 4.18 merupakan tampilan yang

muncul ketika user memilih menu tentang pada halaman menu utama. Halaman ini

berisi keterangan tentang aplikasi. Di dalamnya juga ada terdapat informasi tentang

pengembangan aplikasi ini.

Gambar 4. 18 Tampilan Halaman Menu Tentang.

4.6 Pengujian Sistem

4.6.1 Pengujian Interface (Antar Muka)

Pada penelitian ini digunakan metode pengujian black-box, dimana

merupakan pengujian yang berfokus pada persyaratan fungsional dari perangkat

lunak yang dibangun. Pengujian black-box dilakukan setelah proses pembuatan

aplikasi selesai dan sebelum aplikasi di distribusikan kepada pengguna. Di bawah

ini adalah hasil pengujian dengan metode black-box atau pengujian fungsionalitas

sistem yang dilakukan pada lingkungan pengembang.

Page 123: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

106

4.6.1.1 Pengujian Interface (Antar Muka) Server

4.6.1.1.1 Uji Halaman Login

Dilakukan beberapa pengujian pada halaman login, yang dicantumkan

dalam Tabel 4.3 di bawah ini:

Tabel 4. 3 Uji skenario halaman login.

Skenario Hasil Keterangan

Berhasil Gagal

Login dengan

username dan

password yang

benar

Sistem berhasil menampilkan

menu dashboard.

Login dengan

username dan

password yang salah √

Sistem memberikan pesan

kesalahan.

Tidak bisa masuk ke halaman

dashboard.

Mengisi halaman

login dengan data

kosong kemudian

submit

Sistem memberikan pesan

kesalahan.

Tidak bisa masuk ke halaman

dashboard.

4.6.1.1.2 Uji Halaman Dashboard

Dilakukan beberapa pengujian pada halaman dashboard, yang dicantumkan

dalam Tabel 4.4 di bawah ini:

Tabel 4. 4 Uji skenario halaman dashboard.

Skenario Hasil Keterangan

Berhasil Gagal

Klik Menu Materi √

Sistem berhasil menampilkan

menu materi.

Klik Menu Kuis √

Sistem berhasil menampilkan

menu kuis.

Page 124: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

107

Skenario Hasil Keterangan

Berhasil Gagal

Klik Menu Setting √

Sistem berhasil menampilkan

menu setting.

Klik Menu Logout √ Berhasil logout sistem

4.6.1.1.3 Uji Halaman Menu Materi

Dilakukan beberapa pengujian pada halaman menu materi, yang

dicantumkan dalam Tabel 4.5 di bawah ini:

Tabel 4. 5 Uji skenario halaman menu materi.

Skenario Hasil Keterangan

Berhasil Gagal

Menampilkan data

Sistem berhasil menampilkan data

dari database dengan format

tabel.

Mencari data √

Sistem berhasil menampilkan

pencarian data.

Menambah data

Sistem berhasil menampilkan

menu tambah data dan berhasil

melakukan penyimpanan data.

Melihat detail data √

Sistem berhasil menampilkan

detail data materi.

Mengedit data

Sistem berhasil menampilkan

menu edit data dan berhasil

melakukan penyimpanan hasil

pengeditan data.

Menghapus data

Sistem berhasil menampilkan

dialog hapus data dan berhasil

melakukan penghapusan data

Page 125: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

108

4.6.1.1.4 Uji Halaman Menu Kuis

Dilakukan beberapa pengujian pada halaman menu kuis, yang dicantumkan

dalam Tabel 4.6 di bawah ini:

Tabel 4. 6 Uji skenario halaman menu kuis

Skenario Hasil Keterangan

Berhasil Gagal

Menampilkan data

Sistem berhasil menampilkan data

dari database dengan format

tabel.

Mencari data √

Sistem berhasil menampilkan

pencarian data.

Menambah data

Sistem berhasil menampilkan

menu tambah data dan berhasil

melakukan penyimpanan data.

Melihat detail data √

Sistem berhasil menampilkan

detail data kuis.

Mengedit data

Sistem berhasil menampilkan

menu edit data dan berhasil

melakukan penyimpanan hasil

pengeditan data.

Menghapus data

Sistem berhasil menampilkan

dialog hapus data dan berhasil

melakukan penghapusan data

4.6.1.1.5 Uji Halaman Push Notifikasi

Dilakukan beberapa pengujian pada halaman push notifikasi, yang

dicantumkan dalam Tabel 4.7 di bawah ini:

Page 126: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

109

Tabel 4. 7 Uji skenario halaman push notifikasi.

Skenario Hasil Keterangan

Berhasil Gagal

Menampilkan data √

Sistem berhasil menampilkan data

dari menu push notifikasi.

Mengosongkan form

pesan kemudian

submit √

Sistem memberikan pesan

kesalahan.

Form pesan harus diisi.

4.6.1.1.6 Uji Halaman Setting

Dilakukan beberapa pengujian pada halaman setting, yang dicantumkan

dalam Tabel 4.8 di bawah ini:

Tabel 4. 8 Uji skenario halaman setting.

Skenario Hasil Keterangan

Berhasil Gagal

Menampilkan data √

Sistem berhasil menampilkan data

dari admin.

Mengisi form

password pertama

dan password kedua

dengan value yang

berbeda kemudian

submit

Sistem memberikan pesan

kesalahan.

Tidak bisa mengubah akun.

Mengosongkan salah

satu form kemudian

submit √

Sistem memberikan pesan

kesalahan.

Tidak bisa mengubah akun.

Mengubah data

admin dengan

mengisi keseluruhan

form secara benar

Sistem berhasil melakukan

pengubahan data admin.

Page 127: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

110

4.6.1.2 Pengujian Interface (Antar Muka) Client

4.6.1.2.1 Uji Halaman Splash Screen

Dilakukan beberapa pengujian pada halaman splash screen, yang

dicantumkan dalam Tabel 4.9 di bawah ini:

Tabel 4. 9 Uji skenario halaman splash screen.

Skenario Hasil Keterangan

Berhasil Gagal

Tampil halaman

Splash Screen √ Sistem berhasil menampilkan

halaman splash screen.

Tampil halaman

Menu Utama √ Sistem berhasil menampilkan

halaman menu utama.

4.6.1.2.2 Uji Halaman Menu Utama

Dilakukan beberapa pengujian pada halaman menu utama, yang

dicantumkan dalam Tabel 4.10 di bawah ini:

Tabel 4. 10 Uji skenario halaman menu utama.

Skenario Hasil Keterangan

Berhasil Gagal

Klik Menu Materi √

Sistem berhasil menampilkan

menu materi.

Klik Menu Kuis √

Sistem berhasil menampilkan

menu kuis.

Klik Menu Tentang √

Sistem berhasil menampilkan

menu tentang.

Klik Menu Keluar √ Berhasil keluar dari aplikasi.

Page 128: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

111

4.6.1.2.3 Uji Halaman Menu Materi

Dilakukan beberapa pengujian pada halaman menu materi, yang

dicantumkan dalam Tabel 4.11 di bawah ini:

Tabel 4. 11 Uji skenario halaman menu materi.

Skenario Hasil Keterangan

Berhasil Gagal

Klik tombol materi √

Sistem berhasil menampilkan list

kategori materi

Memilih salah satu

kategori dari list

kategori materi

dengan status paket

data (internet)

nonaktif

Sistem menampilkan pesan

notifikasi bahwa internet tidak

aktif.

Memilih salah satu

kategori dari list

kategori materi

dengan status paket

data (internet) aktif

Sistem berhasil menampilkan

materi berdasarkan list kategori

materi yang dipilih.

Memilih salah satu

materi dari list

kategori materi yang

dipilih

Sistem berhasil menampilkan

detail materi.

4.6.1.2.4 Uji Halaman Menu Kuis

Dilakukan beberapa pengujian pada halaman menu kuis, yang dicantumkan

dalam Tabel 4.12 di bawah ini:

Page 129: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

112

Tabel 4. 12 Uji skenario halaman menu kuis.

Skenario Hasil Keterangan

Berhasil Gagal

Klik tombol kuis √

Sistem berhasil menampilkan list

kategori kuis

Memilih salah satu

kategori dari list

kategori kuis dengan

status paket data

(internet) nonaktif

Sistem menampilkan pesan

notifikasi bahwa internet tidak

aktif.

Memilih salah satu

kategori dari list

kategori kuis dengan

status paket data

(internet) aktif

Sistem berhasil menampilkan

game play kuis berdasarkan list

kategori kuis yang dipilih.

4.6.1.2.5 Uji Halaman Game Play Kuis

Dilakukan beberapa pengujian pada halaman menu game play kuis, yang

dicantumkan dalam Tabel 4.13 di bawah ini:

Tabel 4. 13 Uji skenario halaman menu game play kuis.

Skenario Hasil Keterangan

Berhasil Gagal

Klik tombol

selanjutnya √ Sistem berhasil menampilkan soal

selanjutnya.

Klik tombol

sebelumnya √ Sistem berhasil menampilkan soal

sebelumnya.

Klik tombol selesai √

Sistem berhasil menampilkan skor

hasil latihan soal.

Waktu selesai √

Sistem otomatis menampilkan

skor hasil latihan soal.

Page 130: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

113

4.6.1.2.6 Uji Halaman Skor

Dilakukan beberapa pengujian pada halaman skor, yang dicantumkan dalam

Tabel 4.14 di bawah ini:

Tabel 4. 14 Uji skenario halaman menu skor.

Skenario Hasil Keterangan

Berhasil Gagal

Selesai mengerjakan

kuis √

Sistem berhasil melakukan

penghitungan skor dan

menampilkannya.

Waktu habis saat

game play √

Sistem otomatis melakukan

penghitungan skor dan

menampilkannya.

4.6.1.2.7 Uji Halaman Tentang Aplikasi

Dilakukan beberapa pengujian pada halaman menu tentang aplikasi, yang

dicantumkan dalam Tabel 4.15 di bawah ini:

Tabel 4. 15 Uji skenario halaman menu tentang aplikasi.

Skenario Hasil Keterangan

Berhasil Gagal

Klik tombol tentang √

Sistem berhasil menampilkan

halaman keterangan aplikasi.

4.6.2 Pengujian Pengacakan soal dengan Algoritma Fisher Yattes

Pada tahap pengujian ini dilakukkan pemeriksaan langsung pada aplikasi

apakah soal-soal latihan kuis evaluasi pembelajaran berhasil diacak atau tidak. Dimana

dilakukan pengujian sebanyak 10 kali percobaan dengan jumlah 20 soal. Pada tabel

4.16 ini dapat dilihat hasil pengujian penggunaan algoritma fisher yates shuffle

terhadap pengacakkan soal-soal latihan kuis dapat dilihat sebagai berikut:

Page 131: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

114

Tabel 4. 16 Pengujian Pengacakan soal dengan Algoritma Fisher Yattes.

Pengujian Ke- Hasil Kemunculan Nomor Soal

1 18, 12, 10, 16, 3, 9, 20, 14, 8, 11, 15, 6, 19, 17, 13, 1, 4, 5, 7, 2

2 16, 14, 5, 2, 1, 3, 17, 8, 13, 11, 10, 15, 12, 18, 9, 20, 19, 6, 7, 4

3 11, 9, 4, 5, 7, 19, 15, 14, 1, 17, 12, 6, 16, 3, 20, 18, 8, 10, 2, 13

4 10, 17, 20, 1, 15, 14, 8, 2, 9, 16, 11, 4, 3, 5, 7, 6, 12, 13, 18, 19

5 6, 10, 1, 18, 2, 5, 9, 13, 17, 19, 12, 8, 3, 16, 14, 20, 7, 11, 4, 15

6 14, 15, 4, 2, 9, 5, 11, 1, 20, 17, 6, 18, 13, 10, 8, 12, 3, 7, 16, 19

7 1, 9, 14, 3, 5, 10, 16, 20, 12, 17, 15, 4, 13, 18, 6, 2, 8, 19, 11, 7

8 7, 14, 9, 15, 12, 6, 8, 20, 5, 18, 2, 4, 17, 11, 10, 3, 1, 19,16, 13

9 6, 2, 20, 5, 14, 18, 16, 4, 12, 10, 13, 1, 8, 7, 17, 11, 19, 3, 15, 9

10 4, 15, 8, 10, 11, 19, 6, 17, 12, 2, 5, 18, 14, 1, 7, 13, 3, 9, 16, 20

Dan berikut merupakan source code penggunaan Algoritma Fisher Yates

Shuffle dalam pengacakan soal yang terdapat pada server.

Gambar 4. 19 Screenshot source code Algoritma Fisher Yates Shuffle.

Berdasarkan 10 kali pengujian yang telah dilakukkan menunjukkan bahwa

algoritma fisher yates shuffle dapat mengacak dengan benar, perulangan dilakukan

Page 132: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

115

sebanyak data yang ada, dan data yang sudah diambil tidak akan diambil kembali,

sehingga dalam setiap pengujian/iterasi tidak terdapat data yang sama. Berdasarkan

pengujian tersebut, maka algoritma fisher yates shuffle dapat diterapkan dalam

aplikasi pembelajaran dan kuis agama Islam dan setiap kali membuka menu game

play kuis terjadi kemunculan acak pada soal yang ditampilkan.

Selanjutnya dilakukan komparasi terhadap metode pengacakan random

generator, pada pengacakan menggunakan random generator dilakukan hal yang

sama yaitu menggunakan pengujian sebanyak 10 kali percobaan dengan jumlah 20

soal. Pada tabel 4.17 ini dapat dilihat hasil pengujian penggunaan random generator

terhadap pengacakkan soal-soal latihan kuis dapat dilihat sebagai berikut:

Tabel 4. 17 Pengujian Pengacakan dengan random generator.

Pengujian Ke- Hasil Kemunculan Nomor Soal

1 15, 14, 11, 6, 20, 2, 11, 17, 1, 3, 1, 5, 2, 14, 20, 3, 18, 1, 17, 12

2 13, 2, 11, 4, 1, 4, 12, 1, 7, 3, 19, 16, 5, 6, 2, 9, 20, 10, 19, 13

3 5, 2, 1, 10, 6, 19, 7, 11, 17, 7, 6, 18, 1, 4, 17, 4, 14, 16, 11, 10

4 20, 1, 5, 8, 13, 5, 10, 20, 17, 5, 5, 17, 8, 8, 19, 2, 8, 11, 12, 7

5 13, 20, 13, 13, 8, 13, 2, 12, 5, 17, 7, 6, 11, 7, 9, 8, 18, 12, 16, 18

6 12, 8, 8, 9, 7, 2, 14, 2, 7, 11, 14, 10, 7, 1, 18, 15, 11, 10, 3, 7

7 14, 4, 1, 10, 19, 1, 10, 15, 1, 7, 19, 3, 5, 18, 8, 8, 4, 3, 7, 10

8 4, 18, 14, 1, 19, 9, 20, 4, 12, 14, 3, 10, 19, 19, 12, 1, 4, 2, 8, 9

9 9, 14, 17, 15, 20, 6, 7, 12, 19, 9, 16, 18, 14, 15, 4, 16, 1, 2, 4, 1

10 8, 14, 3, 8, 14, 12, 20, 6, 7, 6, 4, 6, 15, 5, 17, 13, 13, 10, 10, 20

Jika dibandingkan dengan Algoritma Fisher-Yates Shuffle, random generator

menghasilkan beberapa data yang sama seperti pada pengujian/iterasi ke 1 terdapat

14 sebanyak 2 kali, 11 sebanyak 2 kali, 20 sebanyak 2 kali, 2 sebanyak 2 kali, 17

sebanyak 2 kali, 1 sebanyak 3 kali dan yang terakhir 3 sebanyak 2 kali. Berdasarkan

Page 133: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

116

pengujian tersebut dapat ditarik sebuah kesimpulan bahwa penggunaan metode

random generator tidak efisien dalam melakukan pengacakan, karena terdapat

kemungkinan kemunculan nomor soal yang sama dalam satu periode pengacakan.

4.6.3 Pengujian REST (Representational State Transfer) Web Services

Pada tahap pengujian REST (Representational State Transfer) Web Services ini

dilakukkan pemeriksaan menggunakan Postman yang merupakan sebuah aplikasi

(berupa plugin) untuk browser chrome, yang berfungsi sebagai REST Client atau dalam

istilahnya adalah aplikasi yang digunakan untuk melakukan uji coba REST API yang

telah dibuat. Dimana terdapat dua fokus utama pada pengujian ini yaitu pada fungsi

request data materi pada server dan fungsi request data kuis pada server, dimana

keduanya menggunakan method GET dalam proses request data.

Pada gambar 4.20 ini dapat dilihat hasil pengujian request untuk menampilkan

seluruh data materi pada server dengan menggunakan method GET, dapat dilihat

sebagai berikut:

Gambar 4. 20 Pengujian request data materi dengan method GET.

Dan berikut pada gambar 4.21 merupakan screenshot source code untuk

menampilkan resource data materi yang terdapat pada server.

Page 134: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

117

Gambar 4. 21 Screenshot source code resource data materi.

Selanjutnya pada gambar 4.22 ini dapat dilihat hasil pengujian request untuk

menampilkan seluruh data kuis pada server dengan menggunakan method GET, dapat

dilihat sebagai berikut:

Gambar 4. 22 Pengujian request data kuis dengan method GET.

Dan berikut pada gambar 4.23 merupakan source code untuk menampilkan

resource data kuis yang terdapat pada server.

Page 135: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

118

Gambar 4. 23 Screenshot source code resource data kuis.

Berdasarkan pengujian yang telah dilakukkan menunjukkan bahwa penggunaan

REST Web Services dapat diterapkan dalam aplikasi pembelajaran dan kuis agama

Islam dan setiap kali user membuka menu materi ataupun kuis, maka secara otomatis

client akan membuat request pada server dan selanjutnya server akan membuat

response berdasarkan method yang di request oleh client.

4.7 Transition (Transisi)

Dengan selesainya tahap ini maka berakhirlah proses pembangunan sistem ini.

Peluncuran sistem, sosialisasi dan implementasi dilakukan ditahap ini dan

maintenance selanjutnya diserahkan kepada client.

Page 136: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

119

BAB V

PENUTUP

5.1 Kesimpulan

Kesimpulan yang dapat diambil dari Tugas Akhir dengan judul “Penerapan

Algoritma Fisher-Yates Shuffle pada Game Kuis Pembelajaran Agama Islam

Menggunakan Arsitektur Representational State Transfer (REST) Web Service” ini

sebagai berikut :

1. Algoritma Fisher-Yates Shuffle dapat diaplikasikan untuk pengacakan

pertanyaan pada game kuis pembelajaran agama islam dengan baik dan

optimal. Pertanyaan dimasukkan kedalam sebuah arraylist dengan panjang

20 (N=20) atau (array[0..19]) kemudian dilakukan pengacakan pada

perulangan dan pengecekan. Hasilnya, dari data yang terurut yaitu 1-2-3-4-

5-6-7-8-9-10-11-12-13-14-15-16-17-18-19-20, teracak menjadi 18-12-10-

16-3-9-20-14-8-11-15-6-19-17-13-1-4-5-7-2. Ini membuktikan bahwa hasil

pengacakan 100% telah berjalan dengan benar.

2. Representational State Transfer (REST) Web Services dalam game kuis

pembelajaran agama Islam berhasil diterapkan, dan berfungsi sebagai

arsitektur pertukaran data antara server dengan client. Dengan adanya

teknologi Representational State Transfer (REST) Web Services maka para

developer aplikasi sangat terbantu karena dalam pembangunan sebuah

sistem atau aplikasi dapat menggunakan service atau API yang sudah ada

tidak perlu membangun pula seluruh modul.

Page 137: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

120

5.2 Saran

Dalam pengembangannya, aplikasi ini masih jauh dari sempurna oleh karena

itu diperlukan lagi pengembangan lebih lanjut, untuk itu saran akan sangat

membantu proses pengembangan penelitian dan aplikasi ke depannya. Adapun ide

atau saran yang dapat dijadikan sebagai bahan perbaikan, pengembangan atau

penyempurnaan implementasi ini kedepannya antara lain:

1. Pembuatan fitur favorit pada materi, dimana pengguna dapat menyimpan

materi yang menjadi favorit atau materi yang ingin dibaca kembali.

2. Untuk pengembangan selanjutnya bisa ditambahkan algoritma lain untuk

proses pengacakan.

3. Untuk pengembangan selanjutnya bisa ditambahkan fitur keamanan pada

proses pertukaran data antar client dan server (web services).

Page 138: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

121

DAFTAR PUSTAKA

[1] Sumanto, “Implementasi REST Web Service Pada Permainan Asah Otak

Berbasis Android” Universitas Esa Unggul, Jakarta, 2015.

[2] Ummi, “Ummi - Online,” 13 11 2014. [Online]. Available:

http://www.ummi-online.com/8-bahaya-anak-kecanduan-game.html.

[Diakses 07 12 2016].

[3] F. N. F. Zain, “Rancang bangun game edukasi model guessing game

dalam materi perangkat keras,” Universitas Pendidikan Indonesia,

Bandung, 2014.

[4] M. dan e. a. , Paradigma Pendidikan Islam, Upaya Mengefektifkan

Pendidikan Agama Islam di Sekolah, Bandung: PT. Remaja Rosda Karya,

2008.

[5] U. Saokani, “Analisis Perbandingan Algoritma Fisher Yates Shuffle Dan

Linear Congruent Method Untuk Pengacakan Soal Ilmu Nahwu

Berbasis Android,” Jurnal Informatika, 2016.

[6] I. Haditama, “Implementasi Algoritma Fisher-Yates Dan Fuzzy

Tsukamoto Dalam Game Kuis Tebak Nada Sunda Berbasis Android,”

Teknik Informtika UIN SGD Bandung, vol. I No. 1, p. 58, 2016.

[7] M. D. S. H. Luarsa Sigit, “Penerapan Algoritme Fisher Yates pada Game

Edukasi Eco Mania Berbasis Unity 3D.,” STMIK Global Informatika MDP.

Palembang , 2015.

[8] F. Rohim, “Implementasi Model Arsitektur Representational State

Transfer (REST) Pada Aplikasi Web API Jejaring Sosial,” Teknik

Informatika UIN SGD Bandung, Bandung, 2013.

[9] B. H. I. &. E. Raharjo, Modul Pemrograman Web (HTML/PHP &

MySQL), Bandung: Modula, 2010.

[10] B. Susanto, “Pemrograman XML Security,” 08 2007. [Online]. Available:

http://budsus.files.wordpress.com/2007/08/xmlsecurity.pdf. [Diakses 27 09

2016].

[11] “Pengenalan JSON,” [Online]. Available: http://json.org/json-id.html.

[Diakses 27 09 2016].

Page 139: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

122

[12] M. Muthu, “Web services - A Practical Approach,” [Online]. Available:

http://www.slideshare.net/madhaiyanm/web-services-a-practical-approach.

[Diakses 13 10 2016].

[13] A. d. H. Susanto, “Perancangan Ujian Online pada STMIK GI MDP

Berbasis Web,” Jurnal Teknik Informatika, Jurusan Teknik Informatika

STMIK GI MDP , 2008.

[14] “Digital library - Perpustakaan Pusat Unikom,” [Online]. Available:

http://elib.unikom.ac.id/download.php?id=255390. [Diakses 13 10 2016].

[15] Daryanto, Media Pembelajaran, Bandung: Satu Nusa, 2010.

[16] A. Faizata, “Media Pembelajaran Baca Al-Quran Menggunakan Metode

Gharib/Musykilat Berbasis Multimedia,” Teknik Informatika UIN SGD

Bandung, Bandung, 2012.

[17] M. P. S. Matematika, “Strategi Pembelajaran,” FKIP UNRAM, Mataram,

2011.

[18] M. S. Sutikno dan I. Rosyidah, Media Pembelajaran, Bandung: Prospect,

2009.

[19] O. T. Syahri, “Aplikasi Pembelajaran Berbantuan Komputer Berbasis

Konstruktivisme Pokok Bahasan Kimia Senyawa Hidrokarbon,”

Universitas Sumatera Utara, Medan, 2010.

[20] O. Hamalik, Kurikulum dan Pembelajaran Hal 57, Jakarta: Bumi Aksara,

2011.

[21] Muhaimin, Peradigma Pendidikan Islam, Hal 183, Bandung: Rosda.

[22] E. Priyanto, “Banjir Embun,” [Online]. Available:

http://banjirembun.blogspot.co.id/2014/10/pengertian-pembelajaran-

pendidikan.html. [Diakses 27 09 2016].

[23] N. . H. Safaat, Android Pemrograman Aplikasi Mobile Smartphone dan

Tablet PC Berbasis Android, Bandung: Penerbit Informatika, 2012.

[24] A. Pratama, Codeigniter: Cara Mudah Membangun Aplikasi PHP,

Jakarta: Mediakita, 2010.

[25] R. S. Pressman, Rekayasa Perangkat Lunak: Pendekatan Praktisi.

Diterjemahkan oleh: LN Harnaningrum, Yogyakarta: Andi, 2002.

[26] S. Daru dan A. Susanto, “Implementasi Rest Web Service Pada Game Kuis

“Ensiklopedia Indonesia” Berbasis Android,” Universitas Dian

Nuswantoro, Semarang, 2013.

Page 140: PENERAPAN ALGORITMA FISHER-YATES …digilib.uinsgd.ac.id/4466/1/1_cover.pdfIslamic Quiz is a learning application with the material scope of Islam, consists of four categories: Morals

123

[27] M. F. Adiwisastra, “Perancangan Game Kuis Interaktif Sebagai

Multimedia Pembelajaran Drill And Practice Untuk Meningkatkan

Hasil Belajar Siswa,” Jurnal Informatika, vol. II No. 1, p. 211, 2015.

[28] R. Y. d. Setyaningsih, “Game Matematika Untuk Pembelajaran Murid

SD,” Institut Teknologi Sepuluh Nopember, Surabaya, 2009.