Anda di halaman 1dari 25

PROPOSAL SKRIPSI

IMPLEMENTASI ALGORITMA FISHER YATES SHUFFLE


UNTUK PENGACAKAN SOAL ILMU NAHWU
BERBASIS ANDROID
Oleh :
Ukan saokani
1127050164

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
SUNAN GUNUNG DJATI
BANDUNG

2016LEMBAR PERSETUJUAN PROPOSAL

Nama

: Ukan Saokani

NIM

: 1127050164

Jurusan

: Teknik Informatika

Judul Skripsi

: Implementasi Algoritma Fisher Yates Shuffle Untuk


Pengacakan Soal Ilmu Nahwu Berbasis Android
(Implementation Of Fisher Yates Shuffle Algorithm For
Randomization Questions Of Nahwu Based Android)

Proposal ini telah disetujui di seminar pada


tanggal ..

Ketua Jurusan,

Penelaah,

H. Cecep Nurul Alam, MT.


NIP. 197804172005001005

Cepy Slamet, ST., M.Kom.


NIP. 198002252011011007

KATA PENGANTAR

Bismillahirahmanirrahim.
Puji dan Syukur kepada Allah SWT yang telah melimpahkan rahmat dan
karunia-Nya, sehingga dapat diselesaikannya proposal skripsi ini yang berjudul
. Tidak lupa shalawat serta salam senantiasa tercurah limpahkan kepada Nabi
besar Muhammad SAW beserta keluarga, sahabat dan juga pengikutnya.
Tujuan penulisan proposal skripsi dibuat sebagai salah satu syarat untuk
menyelesaikan perkuliahan di Jurusan Teknik Informatika. Sebagai bahan
penulisan diambil berdasarkan hasil penelitian, observasi, wawancara dan
beberapa sumber literatur yang mendukung penulisan ini. Disadari bahwa tanpa
bimbingan dan dorongan dari semua pihak, maka penulisan proposal ini tidak
akan berjalan lancar. Oleh karena itu pada kesempatan kali ini, penulis
menyampaikan ucapan terima kasih kepada :
1. Allah SWT, karena tanpa kehendak dan izin-Nya proposal skripsi ini

tidak akan selesai dengan baik dan tepat waktu.


2. Kedua orang tua yang senantiasa mendampingi, mendoakan dan

memberi dukungan yang tulus tanpa tiada henti.


3. Bapak H. Cecep Nurul Alam, S.T., M.T, selaku Ketua Jurusan Teknik

Informatika yang telah memberikan kesempatan dan dukungannya


kepada penulis dalam penyusunan proposal skripsi ini.
4. Bapak Dr. H. A. Rusdiana, M.M, selaku dosen pembimbing akademik
yang telah memberikan dukungannya dan membimbing penulis dari
awal semester hingga saat ini.
5. Bapak Jumadi, S.T., M.Cs., yang telah memberikan masukan serta
semangat kepada penulis dalam pembuatan proposal skripsi ini.
6. Bapak , selaku penguji dari seminar proposal, sosok yang senantiasa
menjadi inspirasi bagi penulis, mudah-mudahan ilmu yang bapak
berikan, akan bermanfaat khususnya bagi penulis, umumnya bagi
semua.
7. Seluruh pihak yang tak bisa penulis sebutkan satu persatu yang tentu
saja banyak memberikan jasa pada penulis dalam segala hal.
Proposal ini masih jauh dari sempurna, oleh karena itu diharapkan kritik
serta saran yang bersifat membangun demi kesempurnaan penulisan dimasa yang
akan datang. Akhir kata semoga laporan ini dapat bermanfaat bagi para pembaca
maupun penulis.

Bandung, April 2016

Penulis

DAFTAR ISI

LEMBAR PERSETUJUAN PROPOSAL.......................................................................i


KATA PENGANTAR.......................................................................................................ii
DAFTAR ISI....................................................................................................................iv
DAFTAR GAMBAR.......................................................................................................vi
DAFTAR TABEL...........................................................................................................vii
1.

Judul Usulan Skripsi................................................................................................1

2.

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

3.

Rumusan Masalah....................................................................................................2

4.

Tujuan.......................................................................................................................2

5.

Manfaat Penelitian...................................................................................................2

6.

Batasan Masalah......................................................................................................3

7.

State of The Art..........................................................................................................3

8.

Kerangka Pemikiran................................................................................................6

9.

Tinjauan Pustaka.....................................................................................................7
9.1.

Ilmu Nahwu......................................................................................................7

9.2.

Algoritma Fisher Yates Shuffle........................................................................8

9.3.

Metodologi Rational Unified Process (RUP)...................................................8

9.4.

Aplikasi............................................................................................................11

9.5.

Aplikasi Mobile...............................................................................................11

9.6.

Android...........................................................................................................12

9.7.

SDK (Software Development Kit)...................................................................12

9.8.

JDK (Java Development Kit)..........................................................................12

9.9.

Arsitektur Android.........................................................................................12

9.10.

Java..............................................................................................................13

9.11.

Android Studio...........................................................................................13

9.12.

HTML..........................................................................................................14

9.13.

CSS..............................................................................................................14

9.14.

UML (Unified Modeling Language)...........................................................14

10.

Metode Penelitian...............................................................................................14

10.1.

Metode Pengumpulan Data...........................................................................15

10.2.

Metode Pengembangan Perangkat Lunak...................................................15

11.

Arsitektur Sistem................................................................................................16

12.

Jadwal Penelitian................................................................................................17

13.

Mockup Aplikasi.................................................................................................17
5

14.

Daftar Pustaka....................................................................................................18

DAFTAR GAMBAR
Gambar 1. 1 Kerangka Pemikiran..................................................................................7
Gambar 1. 2 Arsitektur Rational Unified Process.........................................................9
Gambar 1. 3 Arsitektur Android (https://en.wikipedia.org)..........................................13
Gambar 1. 4 Arsitektur Sistem......................................................................................17

DAFTAR TABEL
Tabel 1. 1 State Of TheArt...............................................................................................5
Tabel 1. 2 Jadwal Penelitian..........................................................................................17

1. Judul Usulan Skripsi


Implementasi Algoritma Fisher Yates Shuffle Untuk Pengacakan Soal
Ilmu Nahwu Berbasis Android
2. Latar Belakang Masalah

Bahasa adalah satu media yang dipakai di berbagai negara karena


merupakan salah satu penyambung komunikasi antar manusia, dari berbagai
bahasa yang digunakan. Bahasa arab adalah bahasa islam, bahasa Al Quran,
bahasa Sunnah dan bahasa pengetahuan, oleh karena itu maka mempelajari bahasa
arab menjadi sangat penting, terutama dalam upaya memahai Al Quran dan
Sunnah nabi, serta buku buku ilmiyah yang menggunakan bahasa arab sebagai
media artikulasinya.
Dalam mempelajari bahasa arab mungkin tidak persis sama dengan
bahasabahasa lain seperti bahasa Indonesia, Inggris, dan sebagainya. Hal itu
disebabkan karena adanya karakteristik tertentu (dibaca : sifat sifat khusus) yang
dimiliki oleh masing masing bahasa. Salah satu cabang ilmu bahasa arab yang
paling mendasar dan menjadi sebuah kemestian untuk dipelajari adalah ilmu
Nahwu (sintaksis), yaitu ilmu yang mempelajari aturan aturan yang dugunakan
dalam menyusun kalimat. [1]
Sekarang banyak orang yang mempelajari ilmu Nahwu namun sedikit
orang yang dapat memahaminya. Kesulitan memahami ilmu Nahwu diantaranya
disebabkan karena cara pembelajarannya yang cukup hanya dengan membaca
materinya saja. Sehingga ketika dihadapkan dengan contoh contoh kalimat
bahasa arab yang tidak memakai shakal (baris) akan kesulitan untuk
membacanya. Untuk itu, perlu adanya tindak lanjut untuk dapat memahami ilmu
tersebut diantaranya dengan pemberian latihan soal.
Dalam hal latihan soal terutama soal yang berbentuk multiple choice
(pilihan ganda), perlu ada sebuah fungsi pengacakan. Fungsi pengacakan
(Randomization) adalah sebuah fungsi yang biasanya dilakukan untuk mengacak
sebuah urutan. Masalah yang sering ditemui adalah kemungkinan kemunculan
yang terjadi dapat diketahui oleh user. Karena kemungkinan munculnya urutan
kombinasi tidak seimbang. Kombinasi urutan tertentu muncul lebih sering dan
kombinasi urutan yang lainnya muncul lebih sedikit, sehingga kombinasi urutan
dapat diketahui dan dapat ditebak. Fungsi pengacakan dalam sebuah soal pilihan
ganda sangatlah diperlukan agar pilihan ganda tersebut memiliki tingkat kesulitan
yang dapat memberikan tantangan dan pengalaman kepada pengguna atau user.
Berdasarkan penelitian yang sudah dilakukan sebelumnya dalam hal
penggunaan fungsi pengacakan, algoritma Fisher Yates Shuffle dapat digunakan
untuk mengacak soal dalam bentuk pilihan ganda (multiple choice). Dengan
alasan tersebut, penulis tertarik untuk membuat suatu aplikasi berbasis mobile
sebagai solusi dari masalah yang ada dengan judul IMPLEMENTASI

ALGORITMA FISHER YATES SHUFFLE UNTUK PENGACAKAN SOAL


ILMU NAHWU BERBASIS ANDROID.
3. Rumusan Masalah

Berdasarkan latar belakang diatas, dapat dirumuskan sebuah permasalahan


yaitu bagaimana menerapkan algoritma Fisher Yates Shuffle untuk pengacakan
soal ilmu Nahwu berbasis android.
4. Tujuan

Berdasarkan permasalahan yang diteliti, maka tujuan dari penulisan ini


yaitu menerapkan algoritma Fisher Yates Shuffle untuk pengacakan soal ilmu
Nahwu berbasis android.
5. Manfaat Penelitian

Adapun manfaat yang diharapkan dari penelitian ini adalah sebagai


berikut.

a.

b.

Untuk pembuat
Menambah wawasan dan pengetahuan dalam merancang suatu
aplikasi berbasis mobile dengan menggunakan bahasa pemrograman
Java.
Untuk pengguna
Diharapkan dapat membantu pengguna dalam memahami bahasa arab
khususnya ilmu Nahwu.

6. Batasan Masalah

Untuk menghindari meluasnya pembahasan dalam penelitian ini yang


mengakibatkan meluasnya materi pembelajaran, maka perlu adanya batasan
batasan sebagai berikut :
a. Aplikasi ini dapat dijalankan pada perangkat mobile dengan sistem operasi
Android dan minimum API level 2.3 (Gingerbread).
b. Banyaknya soal yang keluar pada setiap latihan adalah 10 soal.
c. Aplikasi ini dirancang menggunakan model perancangan UML (Unified
Modeling Language).
d. Aplikasi dibangun menggunakan bahasa Java dan berbasis Android.
e. Algoritma yang diimplementasikan dalam penelitian ini menggunakan
algoritma Fisher Yates Shuffle.
7. State of The Art

Banyak penelitian yang telah dilakukan dalam membahas aplikasi


pembelajaran dan penerapan algoritma Fisher Yates Shuffle dalam sebuah
program aplikasi. Beberapa penelitian yang terkait yaitu sebagai berikut :
10

a. Colour Image Steganography Using LZW Compression and Fisher-Yates

Shuffle Algorithm
Oleh : Tejeshwar G.
Penelitian ini mengimplementasikan algoritma Fisher-Yates Shuffle
yang berfungsi untuk mengacak pixel dari gambar rahasia, sedangkan LZW
Compression yang berfungsi sebagai pengkodean dilakukan dengan
pengacakan gambar/pesan rahasia sebelum embedding dan setiap bit LZW
penyandian gambar/pesan tertanam di dalam gambar cover dengan mengubah
dua bit paling signifikan (LSB) dari masing-masing dengan pixel intensitas
dari gambar cover. [2]
b. A Simulated Enhancement of Fisher-Yates Algorithm for Shuffling in Virtual

Card Games using Domain-Specific Data Structures


Oleh : Ade-Ibijola, Abejide Olu
Penelitian ini membuat suatu aplikasi untuk simulasi permainan kartu
secara virtual dengan Algoritma Fisher Yates dan Domain-Specific Data
Structures. Dari 54 buah kartu yang ditarik ke tempat secara acak.pengacakan
kartu dapat berjalan sesuai alur. Aplikasi ini bisa di terapkan dalam desktop
dengan desain dan kecepatan yang dapat disesuaikan. [3]
c. Perancangan Ujian Online pada STMIK GI MDP Berbasis Web

Oleh : Antony Susanto dan Henky Honggo


Penelitian ini membuat perancangan ujian online pada STMIK GI
MDP berbasis web. Aplikasi ini mengimplementasikan algoritma FisherYates dalam subuah aplikasi website untuk ujian secara online. Aplikasi ujian
ini dapat diterapkan pada mata kuliah sehari-hari, tetapi soal teori dan tidak
dapat diterapkan pada semua jenis mata kuliah. Penggunaan algoritma
Fisher-Yates Shuffle untuk pengacakan soal dan jawaban dapat membuat
mahasiswa mendapatkan urutan soal dan jawaban pada soal pilihan ganda
yang berbeda-beda. Penggunaan algoritma Levenshtein Distance dapat
membantu mengurangi kesalahan ketik mahasiswa dalam pengetikan jawaban
pada format soal jawaban pendek. [4]
d. Rancang Bangun Game Edukasi Aritmatika Berbasis HTML 5 Menggunakan
Algoritma SFY (Shuffle Fisher Yates).
Oleh : Sena Kurniawan
Penelitian ini membuat game edukasi aritmatika dasar untuk anak
kelas 2 sekolah dasar. Game ini dibangun menggunakan bahasa pemrograman
HTML5. Dalam game ini hanya terdapat aritmatika dasar seperti
pertambahan, pengurangan, pembagian, dan pengurangan. Algoritma yang
diterapkan pada game ini adalah algoritma Fisher Yates Shuffle.[5]
e. Penerapan Algoritma Fisher Yates dan Algoritma A-STAR Pada Game
Matching Images Puzzle Untuk Perangkat Mobile.
Oleh : Muhamad Irfan

11

Penelitian ini berisi tentang game matching images fuzzle. Game ini
memiliki 2 mode permainan, yang pertama mode Puzzle dan yang kedua
mode Strategy-Puzzle. Banyak gambar yang diacak pada mode Puzzle biasa
sebanyak 10-25 pasang gambar. Banyak gambar yang diacak pada mode
Strategi-Puzzle sebanyak 10 pasang gambar. Game ini mererapkan 2
algoritma, yaitu algoritma Fisher Yates dan algoritma A-Star.[6]
Tabel 1. 1 State Of TheArt
No.
1

Nama
Peneliti
Tejeshwar G.
(2014)

Judul Penelitian

Metode

Colour Image
1. LZW
Steganography Using
Compression
LZW Compression and 2. Fisher Yates
Fisher-Yates Shuffle
Shuffle
Algorithm

Hasil
Penyembunyian pesan
dalam gambar

Yates Permainan kartu virtual


Ade-Ibijola dan A
Simulated1. Fisher
Shuffle
Abejide Olu
Enhancement
of
(2012)
Fisher-Yates
Algorithm
for
Shuffling in Virtual
Card Games using
Domain-Specific
Data Structures
Antony
Perancangan Ujian1. Levenshtein
Sistem ujian online
Susanto dan
Onine Pada STMIK Distance
Henky
GI MDP Berbasis2. Fisher Yates
Honggo (2013) Web
Shuffle
Senna
Rancang
Bangun1. Fisher Yates Game
edukasi
Kurniawan
Game
Edukasi Shuffle
aritmatika
(2014)
Aritmatika Berbasis
HTML
5
Menggunakan
Algoritma
SFY
(Shuffle
Fisher
Yates)
Muhamad
Penerapan
1.
Fisher Yates Game
Matching
Irfan(2014)
Algoritma
Fisher Shuffle
Images Puzzle
Yates dan Algoritma2. A-Star
A-STAR Pada Game
Matching
Images
Puzzle
Untuk
Perangkat Mobile

8. Kerangka Pemikiran

12

Pemilihan dan penggunaan metode mengajar memiliki arti penting untuk


mencapai keberhasilan dalam pendidikan. Keberhasilan pendidikan banyak
ditentukan oleh pendidik dalam menggunakan model pembelajaran.
Adapun tujuan umum pembelajaran ilmu Nahwu adalah agar dapat
memahami bahasa arab. Berdasarkan tujuan ini, maka pendidik harus memiliki
keahlian dalam menggunakan metode dan model yang efektif dan efisien, agar
bisa memberikan kecerahan berfikir bagi peserta didik yang dapat menghasilkan
hasil belajar yang baik bagi peserta didik. Tentunya dengan mengikuti
perkembangan teknologi. Maka, penulis menilai model pembelajaran berbasis
Mobile berpengaruh terhadap keefektifan pembelajaran.

Problems
Kesulitan dalam memahami ilmu Nahwu.

Opportunity
Banyak orang yang menggunakan smartphone Android

Approach
Android Aplication.
Fisher Yates Shuffle

Software Implementations

Software Development

Materi serta latihan soal - soal

Software Spesification & Design : UML (Unified Modelling Language)


Java
Android Studio

Result
Pengacakan Soal pada Aplikasi pembelajaran ilmu Nahwu berbasis Android menggunakan algoritma Fisher Yates Shuffle

Gambar 1. 1 Kerangka Pemikiran

13

9. Tinjauan Pustaka
9.1. Ilmu Nahwu

Salah satu cabang ilmu bahasa Arab yang paling mendasar dan menjadi
sebuah kemestian untuk dipelajari adalah ilmu Nahwu (sintaksis), yaitu ilmu
yang mempelajari aturan aturan yang digunakan dalam menyusun kalimat.
Berikut adalah contoh perbandingan antara bahasa Arab dengan bahasa
Indonesia.

: ini Sebuah Buku.


: saya membeli sebuah buku.
: saya mendapatkan pengetahuan dari sebuah buku.
Kata buku dalam bahasa Indonesia pada tiga contoh diatas, tidak
mengalami perubahan bunyi sedikitpun. Sedangkan kata kitab dalam bahasa
arab pada contoh tersebut, bunyi akhirnya berbeda beda, antara bunyi un,
an, dan in. hal ini terjadi karena adanya perbedaan irob (dibaca :
kedudukan/tata letak kata) dalam suatu susunan kalimat.
Perubahan seperti pada contoh diatas, dalam bahasa arab menjadi objek
kajian ilmu Nahwu. Dengan demikian, secara sederhana dapat dikatakan bahwa
ilmu Nahwu adalah ilmu yang mempelajari bahasa Arab dari segi perubahan
akhir kata, karena adanya perbedaan tata letak kata tersebut dalam suatu
susunan kalimat. [1]
Algoritma Fisher Yates Shuffle
Fisher-Yates shuffle (diambil dari nama Ronald Fisher dan Frank
Yates) atau juga dikenal dengan nama Knuth shuffle (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. Fisher-Yates shuffle jika diimplementasikan dengan benar,
maka hasil dari algoritma ini tidak akan berat sebelah, sehingga setiap
permutasi memiliki kemungkinan yang sama. [8]
9.2.

Metodologi Rational Unified Process (RUP)


Rational Unified Process (RUP) merupakan suatu metode rekayasa
perangkat lunak yang dikembangkan dengan mengumpulkan berbagai best
practises yang terdapat dalam industri pengembangan perangkat lunak. Ciri
utama metode ini adalah menggunakan use-case driven dan pendekatan iteratif
untuk siklus pengembangan perankat lunak. Gambar dibawah menunjukkan
secara keseluruhan arsitektur yang dimiliki RUP. [9]
RUP menggunakan konsep object oriented, dengan aktifitas yang
berfokus pada pengembangan model dengan menggunakan Unified Model
Language (UML). Melalui gambar dibawah dapat dilihat bahwa RUP
memiliki, yaitu:
a. Dimensi pertama digambarkan secara horizontal. Dimensi ini mewakili
9.3.

aspek-aspek dinamis dari pengembangan perangkat lunak. Aspek ini


dijabarkan dalam tahapan pengembangan atau fase. Setiap fase akan
memiliki suatu major milestone yang menandakan akhir dari awal dari

14

phase selanjutnya. Setiap phase dapat berdiri dari satu beberapa iterasi.
Dimensi ini terdiri atas Inception, Elaboration, Construction, dan
Transition.
b. Dimensi kedua digambarkan secara vertikal. Dimensi ini mewakili aspekaspek

statis

dari

proses

pengembangan

perangkat

lunak

yang

dikelompokkan ke dalam beberapa disiplin. Proses pengembangan


perangkat lunak yang dijelaskan kedalam beberapa disiplin terdiri dari
empat elemen penting, yakni who is doing, what, how dan when. Dimensi
ini terdiri atas
Business Modeling, Requirement, Analysis and Design, Implementation,
Test, Deployment, Configuration dan Change Manegement, Project
Management, Environtment.

Gambar 1. 2 Arsitektur Rational Unified Process

Pada penggunaan kedua standard tersebut diatas yang berorientasi


obyek (object orinted) memiliki manfaat yakni:
a. Improve productivity

15

Standard ini dapat memanfaatkan kembali komponen-komponen yang


telah tersedia/dibuat sehingga dapat meningkatkan produktifitas
b. Deliver high quality system
Kualitas sistem informasi dapat ditingkatkan sebagai sistem yang
dibuat pada komponenkomponen yang telah teruji (well-tested dan wellproven) sehingga dapat mempercepat delivery sistem informasi yang dibuat
dengan kualitas yang tinggi.
c. Lower maintenance cost
Standard ini dapat membantu untuk menyakinkan dampak perubahan
yang terlokalisasi dan masalah dapat dengan mudah terdeteksi sehingga
hasilnya biaya pemeliharaan dapat dioptimalkan atau lebih rendah dengan
pengembangan informasi tanpa standard yang jelas.
d. Facilitate reuse
Standard ini memiliki kemampuan yang mengembangkan komponenkomponen yang dapat digunakan kembali untuk pengembangan aplikasi yang
lainnya.
e. Manage complexity
Standard ini mudah untuk mengatur dan memonitor semua proses dari
semua tahapan yang ada sehingga suatu pengembangan sistem informasi yang
amat kompleks dapat dilakukan dengan aman dan sesuai dengan harapan
semua manajer proyek IT/IS yakni deliver good quality software within cost
and schedule time and the users accepted.

Fase RUP
1. Inception
a. Menentukan Ruang lingkup proyek
b. Membuat Business Case
c. Menjawab pertanyaan apakah yang dikerjakan dapat menciptakan

16

good business sense sehingga proyek dapat dilanjutkan


2. Elaboration
a. Menganalisa berbagai persyaratan dan resiko
b. Menetapkan base line
c. Merencanakan fase berikutnya yaitu construction
3. Construction
a. Melakukan sederetan iterasi
b. Pada setiap iterasi akan melibatkan proses berikut: analisa desain,
implementasi dan testing
4. Transition
a. Membuat apa yang sudah dimodelkan menjadi suatu produk jadi
b. Dalam fase ini dilakukan:
1) Beta dan performance testing
2) Membuat dokumentasi tambahan seperti; training, user
guides dan sales kit
3) Membuat rencana peluncuran produk ke komunitas
pengguna.
Aplikasi
Aplikasi adalah suatu subkelas perangkat lunak komputer yang
memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas
yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak
sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak
secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu
tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi
adalah pengolah kata, lembar kerja, dan pemutar media. [10]
9.4.

Aplikasi Mobile
Aplikasi mobile adalah istilah yang digunakan untuk medeskripsikan
aplikasi internet yang berjalan pada smartphone atau piranti mobile lainnya.
Aplikasi mobile biasanya membantu para penggunanya untuk terkoneksi
dengan layanan internet yang biasa diakses pada PC atau mempermudah
mereka untuk menggunakan aplikasi internet pada piranti yang bisa dibawa.
[11]
9.5.

Android
Android adalah sebuah system operasi untuk perangkat mobile
berbasis linux yang mencakup sistem operasi, middleware dan aplikasi.
9.6.

17

Android menyediakan platform terbuka


menciptakan aplikasi mereka. [7]

bagi

para pengembang

untuk

SDK (Software Development Kit)


Android SDK (Software Development Kit) adalah tools API yang
diperlukan untuk memulai mengembangkan aplikasi pada platform Android
menggunakan bahasa pemrograman Java. [7]
9.7.

JDK (Java Development Kit)


JDK (Java Development Kit) berisi sekumpulan kakas baris perintah
(command-line tool) untuk menciptakan program Java. [12] Berikut adalah
daftar utama komponen JDK :
a. Kompilator (javac)
b. Interpreter program Java (java)
c. Applet viewer (appletviewer)
d. Debugger (jdb)
e. Class file disassembler (javap)
f. Header and stub file generator (javah)
g. Documentation generator (javadoc)
h. Applet demo
9.8.

Arsitektur Android
Secara garis besar Arsitektur Android dapat di jelaskan dan di
gambarkan sebagai berikut:
1. Application dan Widgets
2. Application framework
3. Libraries
4. Android Run Time
5. Linux Kernel
9.9.

18

Gambar 1. 3 Arsitektur Android (https://en.wikipedia.org)

7.
8.
9.
9.2.
9.3.
9.4.
9.5.
9.6.
9.7.
9.8.
9.9.
9.10. Java

Bahasa Java merupakan bahasa akhir abad 20, diciptakan Sun


Microsystem pada 1995-an. Bahasa Java adalah bahasa modern yang telah
diterima masyarakat komputasi. Hamper semua perusahaan perangkat lunak
bersatu mendukung dan mengambangkan sistem berbasis Java. Bahasa Java
tidak mensyaratkan platform tertentu. Aplikasi yang dibuat dengan Java dapat
di jalankan pada platform manapun. [12]
9.11. Android Studio

Android studio merupakan sebuah Integrated Development Environment


(IDE) untuk platform Android. Android Studio ini diumumkan pada tanggal 16
Mei 2013 pada Konferensi Google I/O oleh Produk Manajer Google, Ellie
Powers. Android studio bersifat free dibawah Apache License 2.0. Android
Studio awalnya dimulai dengan versi 0.1 pada bulan mei 2013, Kemudian
dibuat versi beta 0.8 yang dirilis pada bulan juni 2014. Yang paling stabil dirilis
pada bulan Desember 2014, dimulai dari versi 1.0. Berbasiskan JetBrainns

19

IntelliJ IDEA, Studio di desain khusus untuk Android Development. Ini sudah
bisa di download untuk Windows, Mac OS X, dan Linux. [13]
9.12. HTML

HTML atau Hypertext Markup Language merupakan salah satu format


yang digunakandalam pembuatan dokumen dan aplikasi yang berjalan di
halaman web. Dokumen ini dikenal sebagai web page. Dokumen HTML
merupakan dokumen yang disajikan pada web browser. [14]
9.13. CSS

CSS (Cascading Style Sheet) adalah suatu bahasa stylesheet yang


digunakan untuk mengatur style suatu dokumen. Pada umumnya CSS
digunakan untuk memformat tampilan halaman web yang dibuat dengan
bahasa HTML atau XHML. CSS adalah sebuah dokumen yang berdiri sendiri
dan dapat dimasukan dalam kode HTML atau sekedar menjadi rujukan oleh
HTML dalam pendefinisian style. CSS memungkinkan web developer untuk
memisahkan HTML dari aturan-aturan untuk membentuk tampilan sebuah
website. [14]

9.14. UML (Unified Modeling Language)

UML (Unified Modeling Language) adalah alat bantu analisis serta


perancangan perangkat lunak berbasis objek. UML merupakan suatu
kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan system
yang besar dan kompleks. UML tidak hanya digunakan dalam proses
pemodelan perangkat lunak, namun hampir dalam semua bidang yang
membutuhkan pemodelan.
10. Metode Penelitian

Metode penelitian yaitu cara yang digunakan untuk menganalisa,


mengerjakan, dan mengatasi masalah yang di hadapi. Metode penelitian sangat
penting, karena baik buruknya hasil penelitian tergantung metodologi yang
digunakan.
10.1. Metode Pengumpulan Data

Metode yang digunakan untuk proses pengumpulan data dalam


penelitian ini adalah sebagai berikut :
a. Studi literatur

Pada tahap ini akan dilakukan studi terhadap literatur literatur yang
berhubungan dengan pemrograman java. Pengumpulan data dilakukan
20

dengan cara mengumpulkan bacaan bacaan yang berkaitan dengan


masalah yang diteliti, mempelajari buku buku referensi, jurnal, paper,
dan bacaan bacaan lain yang berhubungan dengan Java Programming.
b. Wawancara (Interview)

Pengumpulan data dengan cara melakukan tanya jawab secara langsung


dengan pihak yang bersangkutan.
c. Pengamatan (Observasi)

Pengumpulan data dengan cara mengadakan pengamatan atau peninjauan


langsung ke objek atau masalah yang sedang diteliti.
10.2. Metode Pengembangan Perangkat Lunak

Metodologi Rational Unified Process (RUP). Metode RUP merupakan


metode pengembangan kegiatan yang berorientasi pada proses. [9] Dalam
metode ini, terdapat empat tahap pengembangan perangkat lunak yaitu:

1.

Inception
Pada tahap ini pengembang mendefinisikan batasan kegiatan,
melakukan analisis kebutuhan user, dan melakukan perancangan awal
perangkat lunak (perancangan arsitektural dan use case). Pada akhir
fase ini, prototipe perangkat lunak versi Alpha harus sudah dirilis.

2.

Elaboration
Pada tahap ini dilakukan perancangan perangkat lunak mulai dari
menspesifikasikan fitur perangkat lunak hingga perilisan prototipe versi
Betha dari perangkat lunak.

3.

Construction

21

Pengimplementasian rancangan perangkat lunak yang telah dibuat


dilakukan pada tahap ini. Pada akhir tahap ini, perangkat lunak versi
akhir yang sudah disetujui administrator dirilis beserta dokumentasi
perangkat lunak.
4.

Transition
Instalasi , deployment dan sosialisasi perangkat lunak dilakukan pada
tahap ini.

11. Arsitektur Sistem

Secara garis besar, arsitektur system dari aplikasi ini dapat dilihat pada
gambar 1.2

Gambar 1. 4 Arsitektur Sistem


12. Jadwal Penelitian

Tabel 1. 2 Jadwal Penelitian


No

Kegiatan

1.

Penentuan Judul

2.

TA
Penyusunan

3.

Proposal
Pengajuan

Desember Januari Februari Maret


April
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

22

4.
5.
6.
7.
8.

Proposal
Inception
Elaboration
Construction
Transition
Dokumentasi

13. Mockup Aplikasi

Splash Screen

Hal. Utama

23

Hal. Materi

Hal. Latihan

Hal. Skor

Hal. Tentang

14. Daftar Pustaka

[1] Wahyudin. Yuyun. 2002. Mengenal Ilmu Nahwu. Edisi Pertama. Bandung:
eLSIP Al Falah 2 Project.
[2] G, Tejeshwar, June 2014. Colour Image Steganography Using LZW
Compression and Fisher-Yates Shuffle Algorithm, International
Journal of Innovative Research & Development(2278 - 0211) Vol. 3
Issue 6.
[3] Ade-Ibijola, Abejide Olu, September 2012. A Simulated Enhancement of
Fisher-Yates Algorithm for Shuffling in Virtual Card Games using
Domain-Specific Data Structures, International Journal of Computer
Applications (0975-8887), Vol. 54 No. 11.
[4] Susanto, Antony, Honggo, Henky 2013, Perancangan Ujian Onine Pada
STMIK
GI
MDP Berbasis
Web,
STMIK
GI
MDP,
http://eprints.mdp.ac.id/965/, diakses tanggal 3 Januari 2016.
[5] Kurniawan, Sena. 2014. Rancang Bangun Game Edukasi Aritmatika
Berbasis HTML5 Menggunakan Algoritma SFY (Shuffle Fisher Yates).
[6] Muhammad., Irfan. 2014. Penerapan Algoritma Fisher Yates dan
Algoritma A-STAR Pada Game Matching Images Puzzle Untuk
Perangkat Mobile.
[7] Safaat H, Nazruddin. 2012. Android Pemrograman Aplikasi Mobile
Smartphone dan Tablet PC Berbasis Android. Penerbit Informatika:
Bandung.

24

[8] Wikipedia. Fisher-Yates Shuffle,


<URL: https://en.wikipedia.org/wiki/Fisher-Yates_shuffle>, diakses
tanggal 3 Januari 2016.
[9] Suryana, Taryana. 2007. Metode RUP. Bandung: STMIK LIKMI
BANDUNG.
<URL: sms.unikom.ac.id/taryana/download/metode_rup.doc>, diakses
tanggal 3 Januari 2016.
[10] Wikipedia. Pengertian Aplikasi,
<URL: https://id.wikipedia.org/wiki/Aplikasi>, diakses tanggal 3
Januari 2016.
[11] Turban,
2013.
Pengertian
aplikasi
mobile,
<URL:
http://library.binus.ac.id/eColls/eThesisdoc/Bab2HTML/2013100969
SIBab2001/page24.html , diakses tanggal 3 Januari 2016.
[12] Hariyanto, Bambang. 2011. Esensi Esensi Bahasa Pemrograman Java.
Penerbit Informatika: Bandung.
[13] Syaputra, Rizki, Modul Programming Android dengan Android Studio,
<URL:
https://www.academia.edu/9990291/Modul_Programming_Android_dengan_
Android_Studio_-_I >, diakses tanggal 3 Januari 2016.

[14] Kadir, Abdul. 2008. Dasar Menggunakan Web Dinamis Menggunakan


PHP. Penerbit Andi : Yogyakarta.

25

Anda mungkin juga menyukai