• Tidak ada hasil yang ditemukan

Analisis Dan Implementasi Algoritma Linear Search Pada Permainan Word Scramble

N/A
N/A
Protected

Academic year: 2016

Membagikan "Analisis Dan Implementasi Algoritma Linear Search Pada Permainan Word Scramble"

Copied!
73
0
0

Teks penuh

(1)

ANALISIS DAN IMPLEMENTASI ALGORITMA

LINEAR SEARCH

PADA PERMAINAN

WORD SCRAMBLE

SKRIPSI

AMMAHLI FAKAR TARIGAN

071401071

PROGRAM STUDI S1 ILMU KOMPUTER

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(2)

ANALISIS DAN IMPLEMENTASI ALGORITMA LINEAR SEARCH

PADA PERMAINAN WORD SCRAMBLE

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

AMMAHLI FAKAR TARIGAN 071401071

PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : ANALISIS DAN IMPLEMENTASI ALGORITMA

LINEAR SEARCH PADA PERMAINAN WORD

SCRAMBLE

Kategori : SKRIPSI

Nama : AMMAHLI FAKAR TARIGAN

Nomor Induk Mahasiswa : 071401071

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, 24 Mei 2012

Komisi Pembimbing :

Pembimbing II, Pembimbing I,

M. Andri Budiman, ST, MCompSc, MEM Dr. Poltak Sihombing, M.Kom

NIP. 197510082008011001 NIP. 196203171991031001

Program Studi S1 Ilmu Komputer Ketua,

(4)

PERNYATAAN

ANALISIS DAN IMPLEMENTASI ALGORITMA LINEAR SEARCH

PADA PERMAINAN WORD SCRAMBLE

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 13 April 2012

(5)

PENGHARGAAN

Alhamdulillahirabbil’alamin penulis ucapkan kepada Allah SWT yang telah melimpahkan rahmat dan karunia-Nya sehingga skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

Skripsi ini merupakan salah satu syarat yang wajib diselesaikan guna meraih gelar Sarjana Komputer pada jurusan S1 Ilmu Komputer Universitas Sumatera Utara. Adapun judul yang diangkat penulis dalam skripsi ini adalah Analisis dan Implementasi Algoritma Linear Search pada Permainan Word Scramble. Tidak dapat dipungkiri bahwa dalam penyelesaian skripsi ini tidak luput dari campur tangan banyak pihak yang telah memberikan bantuan dan motivasi bagi penulis. Maka, dalam kesempatan ini, penulis mengucapkan terima kasih kepada:

1. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Jurusan S1 Ilmu Komputer

serta pembimbing I dan Bapak M. Andri Budiman, S.T., M.Comp.Sc., M.E.M selaku pembimbing II yang telah memberikan panduan dan penuh kepercayaan kepada penulis untuk menyelesaikan skripsi ini.

2. Ibu Dian Rachmawati, S.Si, M.Kom dan Bapak Dahlan Sitompul M.Eng selaku

dosen penguji yang telah memberikan panduan ringkas, padat dan profesional kepada penulis guna menyempurnakan skripsi ini.

3. Sekretaris Jurusan S1 Ilmu Komputer Ibu Maya Silvi Lydia, B.Sc., M.Sc., Dekan

dan Pembantu Dekan Fakultas MIPA beserta para pegawai/staf S1 Ilmu Komputer.

4. Keluarga tercinta, Ayahanda Drs. H. Enda Tarigan dan Ibunda Dra. Hj. Nilva

Yenisda, Ammamiarihta, Ammazizzaky Tarigan, dan Ammanawwara yang selalu memberikan doa, dukungan, perhatian, kasih sayang yang tulus, pengorbanan yang tidak ternilai harganya serta dukungan moril maupun materiil selama kehidupan penulis.

5. Dely Utari, S.Kom yang selalu memberikan doa, perhatian, kasih sayang, motivasi dan semangat yang luar biasa bagi penulis.

6. Teman-teman setim Istiqlal FC khususnya Fatih, Wahyu, Safri, Hanafi, Febrian

dan Faisal, yang selama ini telah berbagi semangat dan canda tawa dengan penulis, serta sahabat-sahabat lain yang pernah mengisi perjalanan hidup penulis yang tidak dapat disebutkan satu per satu.

7. Teman-teman seperjuangan, mahasiswa S1 Ilmu Komputer stambuk 2007

(6)

8. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini. Semoga Allah SWT memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan, perhatian serta kerja samanya kepada penulis dalam menyelesaikan tugas akhir ini.

Penulis menyadari bahwa dalam penyelesaian skripsi ini masih jauh dari sempurna. Untuk itu penulis sangat mengharapkan kritik dan saran yang membangun guna penyempurnaan di masa mendatang.

Akhirnya penulis berharap semoga skripsi ini dapat bermanfaat bagi pribadi penulis, keluarga, masyarakat, organisasi dan negara.

Medan, 13 April 2012

(7)

ABSTRAK

Permainan adalah salah satu solusi alternatif untuk pembelajaran murid. Tidak sedikit murid yang merasa bosan ketika belajar sehingga dapat menghambat proses belajar mengajar. Permainan dapat membantu dan menyemangati banyak murid untuk dapat terus menjaga ketertarikan mereka untuk belajar. WordScramble termasuk salah satu jenis permainan kata yang dapat menambah wawasan kosakata Bahasa Inggris. Permainan ini menuntut kemampuan berpikir pemain untuk mencari kosakata yang bisa disusun dari huruf acak di papan permainan. Huruf-huruf yang diperoleh harus terhubung langsung secara horizontal, vertikal, atau diagonal. Kata tebakan pemain diperiksa oleh komputer apakah kata tersebut terdapat di dalam kamus yang sudah

ditentukan dengan menggunakan algoritma pencarian Linear Search. Penelusuran

dimulai dengan membandingkan kata tebakan dengan kata pada indeks pertama di

dalam kamus yang berbentuk array. Apabila kedua kata tersebut sama, maka data

telah ditemukan dan jawaban pemain benar. Jika tidak, penelusuran dilakukan pada kata pada indeks selanjutnya hingga ditemukan jawaban yang benar. Algoritma Linear Search dapat diimplementasikan pada permainan ini untuk mencocokkan jawaban dan tidak perlu dilakukan pengurutan data sehingga penelusuran dapat langsung dilakukan.

(8)

ANALYSIS AND IMPLEMENTATION OF BRUTE FORCE ALGORITHM ON WORD SCRAMBLE GAME

ABSTRACT

Game is one of the alternative solutions for student learning. Not a few students feel bored when learning that can hinder the learning process. Games can help and encourage more students to be able to maintain their interest in learning. Word Scramble is one kind of word game that can add insight into the English vocabulary. This game requires player’s thinking ability to find the word that can be composed from the letters results of randomization on the game’s board. The letters must be directly connected horizontally, vertically, or diagonally. Player’s guess word is checked by the computer whether the word is found in the dictionary that has been determined by using Linear Search Algorithm. Search begins by comparing the guess word with the first word at the first index in the dictionary. If those two words are equals, the data have been found and the player answers correctly. If not, search performed on the next word at the next index until the correct answer is found. Linear Search algorithm can be implemented in this game to match the answers and doesn’t need to sort the data so the searches can be performed directly.

(9)

DAFTAR ISI

Karakteristik Algoritma Pencarian Linear 7

2.3.3 Pseudocode Algoritma Pencarian Linear 8

2.3.4 Kompleksitas Algoritma Pencarian Linear 8

2.4 Pengacakan Huruf 9

2.5 Word Scramble 11

2.5.1 Aturan Permainan Word Scramble 11

2.6 Penilaian Kualitas Aplikasi 12

(10)

3.1.2.8 Flowchart CariKata() 28

3.1.2.9 Flowchart Nilai() 29

3.2 Perancangan Sistem 30

3.2.1 Perancangan Aplikasi Permainan 30

3.2.2 Perancangan Antarmuka 31

Bab 4 Implementasi dan Pengujian 35

4.1 Implementasi Sistem 35

4.1.1 Spesifikasi Perangkat Lunak 35

4.1.2 Spesifikasi Perangkat Keras 35

4.1.3 Implementasi Rancangan Fungsi 36

4.1.4 Implementasi Rancangan Antarmuka 36

4.1.4.1 Tampilan Utama 36

4.1.4.2 Tampilan Arena Permainan 37

4.1.4.3 Tampilan Aturan Permainan 38

4.1.4.4 Tampilan Tentang Permainan 39

4.2 Pengujian Aplikasi 39

4.2.1 Pengujian Integrasi Aplikasi 40

4.2.1.1 Proses pada Tampilan Utama 40

4.2.1.2 Proses pada Tampilan Arena Permainan 41

4.2.1.3 Proses pada Tampilan Aturan Permainan 41

4.2.1.4 Proses pada Tampilan Tentang Permainan 42

4.2.2 Pengujian Responden 42

4.2.2.1 Aspek Antarmuka Aplikasi 42

4.2.2.2 Aspek Penggunaan Aplikasi 44

4.2.2.3 Aspek Penilaian Aplikasi 45

Bab 5 Kesimpulan dan Saran 47

5.1 Kesimpulan 47

5.2 Saran 48

Daftar Pustaka 49

LAMPIRAN A: LISTING PROGRAM

(11)

DAFTAR TABEL

Halaman

2.1 Daftar Nilai Frekuensi Huruf yang Akan Diacak 10

3.1 Hasil Daftar Nilai 14

4.1 Hasil Evaluasi Proses pada Tampilan Utama 40

4.2 Hasil Evaluasi Proses pada Tampilan Arena Permainan 41

4.3 Hasil Evaluasi Proses pada Tampilan Aturan Permainan 41

4.4 Hasil Evaluasi Proses pada Tampilan Tentang Permainan 42

4.5 Hasil Kuisioner Aspek Antarmuka Aplikasi 43

4.6 Hasil Kuisioner Aspek Penggunaan Aplikasi 44

(12)

DAFTAR GAMBAR

Halaman

2.1 Papan Permainan Word Scramble 12

3.1 Langkah 1 19

3.2 Langkah 3 20

3.3 Flowchart Alur Permainan 21

3.4 Flowchart HurufAcak() 22

3.5 Flowchart HurufTerpilih() 23

3.6 Flowchart Ketetanggaan 24

3.7 Flowchart KataBaru() 25

3.8 Flowchart PeriksaKata() 26

3.9 FlowchartFlowchart SudahKetemu() 27

3.10 Flowchart CariKata() 28

3.11 Flowchart Nilai() 29

3.12 Flowchart Aplikasi 30

3.13 Frame Menu 31

3.14 Frame Arena Permainan 32

3.15 Frame Aturan Permainan 33

3.16 Frame Tentang Permainan 34

4.1 Tampilan Utama 36

4.2 Tampilan Arena Permainan 37

4.3 Tampilan Arena Permainan Ketika Permainan Sedang Berlangsung 37

4.4 Tampilan Arena Permainan Ketika Permainan Selesai 38

4.5 Tampilan Aturan Permainan 38

(13)

ABSTRAK

Permainan adalah salah satu solusi alternatif untuk pembelajaran murid. Tidak sedikit murid yang merasa bosan ketika belajar sehingga dapat menghambat proses belajar mengajar. Permainan dapat membantu dan menyemangati banyak murid untuk dapat terus menjaga ketertarikan mereka untuk belajar. WordScramble termasuk salah satu jenis permainan kata yang dapat menambah wawasan kosakata Bahasa Inggris. Permainan ini menuntut kemampuan berpikir pemain untuk mencari kosakata yang bisa disusun dari huruf acak di papan permainan. Huruf-huruf yang diperoleh harus terhubung langsung secara horizontal, vertikal, atau diagonal. Kata tebakan pemain diperiksa oleh komputer apakah kata tersebut terdapat di dalam kamus yang sudah

ditentukan dengan menggunakan algoritma pencarian Linear Search. Penelusuran

dimulai dengan membandingkan kata tebakan dengan kata pada indeks pertama di

dalam kamus yang berbentuk array. Apabila kedua kata tersebut sama, maka data

telah ditemukan dan jawaban pemain benar. Jika tidak, penelusuran dilakukan pada kata pada indeks selanjutnya hingga ditemukan jawaban yang benar. Algoritma Linear Search dapat diimplementasikan pada permainan ini untuk mencocokkan jawaban dan tidak perlu dilakukan pengurutan data sehingga penelusuran dapat langsung dilakukan.

(14)

ANALYSIS AND IMPLEMENTATION OF BRUTE FORCE ALGORITHM ON WORD SCRAMBLE GAME

ABSTRACT

Game is one of the alternative solutions for student learning. Not a few students feel bored when learning that can hinder the learning process. Games can help and encourage more students to be able to maintain their interest in learning. Word Scramble is one kind of word game that can add insight into the English vocabulary. This game requires player’s thinking ability to find the word that can be composed from the letters results of randomization on the game’s board. The letters must be directly connected horizontally, vertically, or diagonally. Player’s guess word is checked by the computer whether the word is found in the dictionary that has been determined by using Linear Search Algorithm. Search begins by comparing the guess word with the first word at the first index in the dictionary. If those two words are equals, the data have been found and the player answers correctly. If not, search performed on the next word at the next index until the correct answer is found. Linear Search algorithm can be implemented in this game to match the answers and doesn’t need to sort the data so the searches can be performed directly.

(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Permainan atau sering disebut dengan game merupakan suatu sarana hiburan yang

diminati dan dimainkan oleh banyak orang baik dari kalangan anak-anak, remaja

maupun orang dewasa. Permainan juga dapat berguna untuk melatih dan mengasah

kemampuan berpikir seseorang.

Permainan adalah salah satu solusi alternatif untuk pembelajaran murid. Tidak

sedikit murid yang merasa bosan ketika belajar sehingga dapat menghambat proses

belajar mengajar. Faktanya permainan dapat membantu dan menyemangati banyak

murid untuk dapat terus menjaga ketertarikan mereka untuk belajar. Saat ini, terdapat

berbagai macam permainan yang bertujuan untuk menambah wawasan kosakata

Bahasa Inggris, salah satunya adalah word game (permainan kata).

Dari sekian banyak macam jenis permainan kata yang ada, Word Scramble

termasuk salah satu jenis permainan kata yang populer. Permainan Word Scramble

diawali dengan pengacakan huruf oleh komputer, kemudian pemain mencari kosakata

yang bisa disusun dari huruf acak tersebut. Huruf-huruf tersebut harus terhubung

secara vertikal, horizontal atau diagonal pada papan permainan.

Pada permainan ini terdapat beberapa permasalahan seperti pengacakan huruf

pada papan permainan agar pola pengacakannya dapat mempermudah pemain untuk

menemukan lebih banyak kata, pencocokan jawaban pemain oleh komputer dengan

kata pada kamus, tampilan antarmuka aplikasi permainan, dan sistem penilaian untuk

(16)

Oleh karena itu, penulis mengangkat judul “Analisis dan Implementasi Algoritma

Linear Search pada Permainan WordScramble” untuk mencari tahu apakah algoritma

Linear Search dapat diimplementasikan pada permainan Word Scramble.

1.2Rumusan Masalah

Permasalahan yang akan diteliti dan diuraikan disini adalah:

1. Bagaimana mengimplementasikan algoritma Linear Search pada permainan

Word Scramble.

2. Bagaimana komputer dapat melakukan pencarian kata pada kamus yang sesuai

dengan jawaban pemain dengan menggu nakan algoritma Linear Search.

1.3 Batasan Masalah

Batasan masalah pada tugas akhir ini adalah:

1. Papan permainan berukuran 4x4.

2. Huruf diacak berdasarkan frekuensi huruf yang paling sering muncul dalam

Bahasa Inggris.

3. Pencarian jawaban yang valid menggunakan algoritma Linear Search.

4. Kata-kata yang akan ditebak disimpan dalam kamus dengan format .txt.

5. Kata-kata dalam kamus tidak dapat dimodifikasi.

6. Permainan ini bersifat single player.

7. Pembangunan permainan ini menggunakan aplikasi Adobe Flash CS5 dan

ActionScript 3.

1.4Tujuan Penelitian

Tujuan penelitian ini adalah sebagai berikut:

1. Menerapkan algoritma Linear Search pada proses pencarian kata yang

diperoleh pemain dengan kata dalam kamus.

2. Membuat sebuah permainan komputer dimana pemain ditugaskan untuk

mencari kosakata Bahasa Inggris pada papan permainan yang berisi

(17)

1.5 Manfaat Penelitian

Manfaat dari tugas akhir ini adalah sebagai berikut:

1. Mengimplementasikan algoritma Linear Search dalam permainan Word

Scramble.

2. Mengasah kemampuan pemain dalam intuisi bermain, khususnya pada

permainan kata.

1.6Metodologi Penelitian

Metodologi penelitian yang akan digunakan adalah:

1. Studi Pustaka

Pada tahap ini dilakukan studi pustaka yaitu mengumpulkan bahan referensi dari

buku, artikel, jurnal, makalah, maupun internet mengenai penerapan algoritma

Linear Search pada permainan Word Scramble.

2. Pengumpulan Data

Pada tahap ini dilakukan pengumpulkan data yang berupa kosakata Bahasa Inggris

yang akan disimpan dalam basis data.

3. Analisis Masalah

Pada tahap ini akan dilakukan analisis terhadap cara bermain Word Scramble dan

bagaimana solusi penyelesaiannya dengan menerapkan algoritma Linear Search

dalam bentuk flowchart.

4. Implementasi Sistem

Pada tahap ini hasil analisis dari solusi penyelesaian pada permainan Word

Scramble diterapkan dalam source code dan perancangan aplikasinya sehingga

menghasilkan bentuk antarmuka yang mudah digunakan oleh pemain.

5. Pengujian Sistem

Pada tahap ini aplikasi permainan Word Scramble akan diuji untuk memastikan

semuanya telah bekerja sesuai dengan tujuan yang diinginkan.

6. Penulisan Skripsi

Pada tahap ini seluruh kegiatan dari awal hingga akhir penelitian akan dituliskan

(18)

1.7 Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai

berikut:

BAB 1: PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi

”Analisis dan Implementasi Algoritma Linear Search pada Permainan Word

Scramble”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat

penelitian, metode penelitian, dan sistematika penulisan.

BAB 2: LANDASAN TEORI

Bab ini akan membahas teori-teori yang berkaitan dengan algoritma

pencarian, algoritma Linear Search, pengacakan huruf, dan permainan Word

Scramble.

BAB 3: ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

Bab ini akan membahas mengenai analisis kebutuhan sistem yang meliputi

analisis permainan, analisis algoritma, dan perancangan sistem.

BAB 4: IMPLEMENTASI DAN PENGUJIAN

Bab ini menjelaskan prasyarat dan syarat yang harus dipenuhi agar perangkat

lunak yang dikembangkan dapat dijalankan secara baik serta pengujian

terhadap perangkat lunak tersebut.

BAB 5: KESIMPULAN DAN SARAN

Bab ini memuat kesimpulan dari uraian bab-bab sebelumnya dan hasil

penelitian yang diperoleh. Bab ini juga memuat saran yang diharapkan dapat

(19)

BAB 2

LANDASAN TEORI

2.1 Algoritma

Algoritma berasal dari nama ilmuwan muslim dari Uzbekistan, Abu Ja’far

Muhammad bin Musa Al-Khuwarizmi (780-846M). Pada awalnya kata algoritma

adalah istilah yang merujuk kepada aturan-aturan aritmetika untuk menyelesaikan

persoalan dengan menggunakan bilangan numerik arab. Pada abad ke-18, istilah ini

berkembang menjadi algoritma, yang mencakup semua prosedur atau urutan langkah

yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan. Pemecahan

sebuah masalah pada hakikatnya adalah menemukan langkah-langkah tertentu yang

jika dijalankan efeknya akan memecahkan masalah tersebut [7].

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang

disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma.

Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai

salah atau benar [8].

Ada beberapa tipe masalah algoritma, antara lain [2]:

1. Pengurutan

Masalah pengurutan berhubungan dengan bagaimana mengurutkan kembali

unsur-unsur dari suatu daftar yang diberikan.

2. Pencarian

Masalah pencarian berhubungan dengan bagaimana menemukan suatu nilai

(20)

3. Pemrosesan String

Salah satu masalahnya yaitu mencari kata tertentu dalam teks yang disebut

pencocokan

4. Masalah Grafik

string.

Dalam algoritma, masalah grafik mencakup graph traversal algorithms dan

shortest-path algorithms.

5. Masalah Kombinatoris

Prespektik abstrak, masalah traveling salesman, dan masalah pewarnaan grafik

merupakan contoh dari masalah kombinatorik.

6. Masalah Geometris

Masalah ini berhubungan dengan objek geometris, seperti titik, garis, dan

poligon.

7. Masalah Numerik

Algoritma ini banyak dikembangkan pada masalah yang mencakup objek

matematis yang bersifat menyelesaikan persamaan dan sistem persamaan,

menghitung integral tertentu, dan mengevaluasi sebuah fungsi.

2.2 Algoritma Pencarian

Pengertian string menurut Dictionary of Algorithms and Data Structures, National

Institute of Standards and Technology (NIST) adalah susunan dari karakter-karakter

(angka, alfabet atau karakter yang lain) dan biasanya direpresentasikan sebagai

struktur data array. String dapat berupa kata, frase, atau kalimat [9].

Algoritma pencarian adalah algoritma untuk mencari nilai dalam struktur data

[9]. Pencocokan string merupakan bagian penting dari sebuah proses pencarian string

(string searching) dalam sebuah dokumen. Hasil dari pencarian sebuah string dalam

dokumen tergantung dari teknik atau cara pencocokan string yang digunakan.

Untuk mengukur performansi metode pencarian, terdapat empat kriteria yang

dapat digunakan [1] :

1. Completeness : apakah metode tersebut menjamin penemuan solusi jika

(21)

2. Time complexity : berapa lama waktu yang diperlukan,

3. Space complexity : berapa banyak memori yang diperlukan,

4. Optimality : apakah metode tersebut menjamin menemukan solusi yang terbaik

jika terdapat beberapa solusi berbeda.

2.3 Algoritma Pencarian Linear

Algoritma Pencarian Linear (Linear Search) adalah algoritma yang digunakan untuk

mencari nilai pada sebuah array atau daftar nilai dengan cara memeriksa satu per satu

[9]. Linear Search atau yang juga dikenal sebagai Sequential Search (Pencarian

Beruntun) bekerja dengan memeriksa setiap elemen dari sebuah list sampai sebuah

kecocokan ditemukan. Pencarian Linear tidak membutuhkan pengurutan data terlebih

dahulu.

Kelebihan dari algoritma Linear Search antara lain:

1.

2.

Algoritma pencarian sekuensial ini cocok untuk pencarian nilai tertentu pada

sekumpulan data terurut maupun tidak.

3.

Keunggulan algoritma ini adalah dalam mencari sebuah nilai dari sekumpulan

kecil data.

Termasuk algoritma yang sederhana dan cepat karena tidak memerlukan

proses persiapan data (misalnya: pengurutan).

Sedangkan kelemahan algoritma Linear Search adalah bahwa dalam kasus

terburuk (nilai tidak ditemukan), pembandingan nilai dilakukan sebanyak jumlah data

dalam kumpulan nilai. Dengan demikian, proses pencarian akan bertambah lambat

secara linear dengan bertambahnya banyaknya jumlah data.

2.3.1 Karakteristik Algoritma Pencarian Linear

Karakteristik algoritma Pencarian Linear

1. Pencarian dapat dilakukan di struktur data apapun yang dapat diakses secara

(22)

kadang hanya bisa digunakan pada struktur data yang bisa diakses secara

random (misalnya binary search)

2. Data tidak harus terurut

3. Worst case dan expected cost untuk pencarian linear adalah O(n)

2.3.2 Cara Kerja Algoritma Pencarian Linear

Algoritma pencarian linear dapat dituliskan sebagai berikut :

1. i⇽ 0

2. Ketemu ⇽ false

3. Selama (tidak ketemu) dan (i<=N) kerjakan baris 4

4. Jika (data[i] = x) maka ketemu ⇽ true, jikan tidak i ⇽ i + 1

5. Jika (ketemu) maka i adalah indeks dari data yang dicari, jika tidak data tidak

ditemuka n.

2.3.3 Pseudocode Algoritma Pencarian Linear

Pseudocode algoritma Pencarian Linear adalah:

ketemu  false {belum ketemu }

n  1 { mulai dari elemen pertama }

while ((n < ukuran) and (not ketemu)) do

if (array[n] = kunci) then { dibandingkan }

ketemu  true { data ketemu }

i  n { pada posisi ke-i, posisi disimpan }

endif

else n  n+1 { cek data berikutnya }

endwhile

if ketemu then pencarianLinier  I { data ketemu pada posisi ke-i }

else pencarianLinier  -1 { data tidak ketemu }

endif end

2.3.4 Kompleksitas Algoritma Pencarian Linear

Jika linear search dimulai dari kiri, maka posisi berawal dari elemen ke-1 dan

membandingkannya sampai ketemu. Kemungkinan terbaik (best case) dari algoritma

(23)

pertama) sehingga waktu yang dibutuhkan untuk pencarian data sangat sebentar

(minimal). Kemungkinan terburuk (worst case) adalah jika data yang dicari terletak di

indeks array terakhir (elemen array terakhir) sehingga waktu yang dibutuhkan untuk

pencarian data sangat lama (maksimal). Kompleksitas dari algoritma ini sebanyak n

pebandingan untuk kasus terburuk (data tidak ditemukan atau berada di posisi

terakhir). Bila rata-rata posisi data ada ditengah, maka kompleksitas menjadi 1/2 n.

Penelitian yang dilakukan Sabdifha, 2010 menggunakan algoritma Depth-First

Search pada permainan Word Scramble. Kotak-kotak pada papan permainan

direpresentasikan sebagai simpul sehingga setiap kotak akan memiliki indeks.

Program akan mengacak huruf dengan menggunakan frekuensi dari Hidden Markov

Models (HMM) untuk selanjutnya kotak tersebut akan diisi dengan huruf acak.

Selanjutnya komputer akan mencari kata yang dapat dibentuk dari huruf-huruf

tersebut sebagai jawaban yang valid dengan menggunakan algoritma DFS. Kemudian

permainan oleh user (pemain). Pemain diberi waktu untuk menebak kata yang dapat

dibentuk dari huruf-huruf yang ada pada papan permainan sebanyak mungkin.

Jawaban pemain akan dicocokkan dengan jawaban valid dari komputer. Jika jawaban

pemain benar maka pemain akan memperoleh nilai berdasarkan jumlah huruf dari

kata-kata yang diperolehnya. Permainan akan berakhir ketika waktu habis.

2.4 Pengacakan Huruf

Proses ini berfungsi sebagai pengacak huruf yang akan keluar di setiap kotak pada

papan permainan. Huruf-huruf pada setiap kotak diacak sedemikian rupa agar huruf

acak yang diperoleh adalah huruf-huruf yang memiliki frekuensi kemunculan yang

tinggi, sehingga lebih mudah untuk mendapatkan campuran yang baik antara vokal

dan konsonan. Oleh karena itu, dibutuhkan suatu daftar frekuensi huruf yang paling

sering muncul dalam bahasa Inggris.

Frase mnemonik “ETAOIN SHRDLU” sering digunakan untuk mengingat 12

(24)

Tabel 2.1 Daftar Nilai Frekuensi Huruf yang Akan Diacak

No. Huruf Frekuensi Inisialisasi

1 E 12.702% 12

(Robert Lewand, 2000)

Menurut table di atas, jumlah seluruh inisialisasinya adalah 100, maka dapat

didefinisikan sebuah array dengan interval 0 sampai 99 seperti ini:

alfabet[0] = [0-7] (Huruf A memiliki nilai frekuensi 0 sampai 7)

alfabet[1] = [8] (Huruf B memiliki nilai frekuensi 8)

...

alfabet[24] = [97-98] (Huruf Y memiliki nilai frekuensi 97 sampai 98)

alfabet[25] = [99] (Huruf Z memiliki nilai frekuensi 99)

Kemudian saat proses generalisasi angka acak frekuensi pada interval 0 hingga

99, program hanya mencari dalam interval array dan mendapatkan huruf yang

terdapat pada interval tersebut.

alfabet = "A","B","C","D","E","F","G","H","I","J","K","L","M","N",

(25)

frek ← random()*99

if 0<= frek and frek <=7 then begin

alfabet[0] end

2.5 Word Scramble

Scramble merupakan pengembangan dari permainan scrabble yang sangat inspiratif.

Pola permainannya yang menjadi inspirasi dalam mengerjakan tugas akhir ini.

Permainan ini dimulai dengan mengacak huruf dengan tingkat frekuensi yang

berbeda-beda untuk diisi pada papan berukuran 4x4 kotak, masing-masing kotak diisi

dengan huruf berbeda atau sama tergantung nilai acak yang diperoleh. Selanjutnya

pemain harus mencari kata yang bisa dibentuk dari huruf yang sudah terisi pada

papan. Pemain akan diberikan waktu untuk menebak dan harus mencari kata sebanyak

mungkin. Pemain akan mendapatkan nilai sesuai dengan jumlah huruf pada setiap kata

valid yang berhasil ditebak.

2.5.1 Aturan Permainan Word Scramble

Aturan permainan Word Scramble secara umum adalah sebagai berikut:

1. Pemain mencari kata sebanyak-banyaknya dari huruf acak yang terdapat pada

papan permainan. Huruf-huruf tersebut harus terhubung secara vertikal,

horizontal atau diagonal.

2. Setiap kotak hanya bisa digunakan satu kali dalam satu kata.

3. Jawaban minimal terdiri dari tiga huruf.

4. Permainan berakhir ketika waktu habis.

(26)

Gambar 2.1 Papan Permainan Word Scramble

2.6 Penilaian Kualitas Aplikasi

Untuk menghitung penilaian kualitas dari aplikasi ini dapat dihitung dengan

menggunakan rumus (2.1) dan rumus (2.2):

Pk = (f/N) * Ikb

P

... ... (2.1)

total = ∑ Pk

/ n ... ... (2.2)

Dimana:

Pk

dan sangat baik

= persentase untuk k kondisi dalam hal tidak baik, kurang baik, baik,

f = total respon dalam k kondisi

N = jumlah responden

Ikb

baik 50%, baik 75%, dan sangat baik 100%)

= interpretasi k kondisi terbesar (dalam hal ini tidak baik 25%, kurang

Ptotal

n = banyak pertanyaan

= persentase untuk jumlah keseluruhan persentase pertanyaan

M

F

R

V

C

A

V

R

E

D

G

A

(27)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Pada analisis sistem ini akan dilakukan analisis terhadap permainan Word Scramble

dan algoritma pencarian Linear Search.

3.1.1 Analisis Permainan

Berikut ini aturan permainan yang telah ditetapkan penulis untuk aplikasi permainan

Word Scramble:

6. Pemain mencari kata sebanyak-banyaknya dari huruf acak yang terdapat pada

papan permainan. Huruf-huruf tersebut harus terhubung secara vertikal,

horizontal atau diagonal.

7. Setiap kotak hanya bisa digunakan satu kali dalam satu kata.

8. Huruf Q selalu berpasangan dengan huruf U (Qu).

9. Apabila tebakan pemain benar maka akan mendapatkan nilai dan jika salah

tidak akan mendapatkan nilai.

10.Jawaban minimal terdiri dari tiga huruf dan maksimal delapan huruf.

11.Kata yang sudah ditemukan tidak dapat diulangi.

12.Pemain diberikan waktu selama 120 detik untuk menemukan jawaban.

13.Permainan berakhir ketika waktu habis.

Kata yang ditemukan oleh pemain mempunyai nilai yang berbeda sesuai

dengan jumlah huruf pada setiap kata yang sudah masuk dalam daftar kata yang

(28)

Tabel 3.1 Daftar Nilai Jumlah Huruf Nilai

3 2

4 3

5 5

6 6

7 8

8 9

3.1.2 Analisis Algoritma

Algoritma yang digunakan untuk membangun permainan Word Scramble ini

adalah algoritma pencarian. Algoritma ini akan digunakan oleh Komputer

untuk mencocokkan antara jawaban pemain dengan kata di dalam kamus. Pada

algoritma Linear Search, ada beberapa properti yang perlu dipertimbangkan

yaitu data dan nilai. Berikut ini adalah penjabaran properti-properti tersebut:

1. Data

Data di dalam permainan Word Scramble ini berbentuk array yang

disebut kamus. Array ini berisi kosakata-kosakata bahasa Inggris.

Kata-kata tersebut merupakan simpul-simpul solusi dalam proses

penelusuran ini. Penelusuran dimulai dari kata pertama (indeks 0)

sampai kata terakhir (indeks n).

2. Nilai

Nilai (kata) yang akan ditelusuri yaitu jawaban pemain. Jika kata yang

menjadi jawaban pemain terdapat dalam kamus maka jawaban

dianggap benar.

Jika menggunakan Linear Search pada proses penelusuran, maka

semua simpul akan dibangkitkan tanpa melihat apakah simpul mendekati

solusi yang diinginkan atau tidak. Penelusuran nilai (kata) yang dicari dimulai

pada indeks 0. Apabila kata pada indeks tersebut sama dengan kata yang

dicari, maka nilai telah ketemu dan jawaban pemain benar. Apabila nilai yang

dicari belum ketemu, penelusuran dilanjutkan pada indeks berikutnya. Apabila

sampai akhir pemeriksaan tidak ada data yang sama, berarti nilai yang dicari

(29)

Algoritma Linear Search memeriksa semua posisi dalam array secara

berurutan dari indeks 0 sampai n apakah nilai(kata) yang dicari ada di dalam

kamus. Perbandingan karakter yang terjadi diharapkan n, dengan n adalah

jumlah kata pada kamus. Kamus pada permainan ini berisikan 80325 kata.

Pada kasus yang paling buruk, untuk n elemen data harus dilakukan pencarian

sebanyak n kali pula. Maka untuk kasus terburuk, kompleksitas algoritma

Linear Search pada permainan ini adalah O(80325).

Berikut ini adalah pseudocode dari beberapa prosedur dalam permainan Word

Scramble.

const kamus : kamus.txt panjang_kata : 3 huruf_menurun : 4 huruf_mendatar : 4 uk_tombol : 50 waktu : 121

nilai : Array = [null,0,0,2,3,5,6,8,9]

var loader : URLLoader

alfabet, kata, kata_ketemu, tombol : Array[] masukan : TextInput

kata_tebakan : String

status_kata,status_waktu : Label

tombol_terakhir,tombol_tambah,tombol_hapus, tombol_kembali : Button

hasil_nilai : TextArea t : Timer

i : int

procedure WordScramble() procedure Kamus()

procedure LoadKamus()

procedure LoadKamus2() begin

isi_kamus : String(kamus)

kata ← isi_kamus.split()

Tampilan()

alfabet = "A","B","C","D","E","F","G","H","I","J","K", "L","M","N","O","P","QU","R","S","T","U","V", "W","X","Y","Z"]

(30)

if 0<= frek and frek <=7 then

if not tombol_terakhir then begin

KataBaru(b.label) end

(31)

end

procedure TambahTebakan () begin

kata_tebakan ← kata_tebakan + huruf

end

procedure KataBaru () begin

for i ← 0 to tombol.length do

begin

tombol[i].enabled ← true

end

kata_tebakan ← huruf

end

procedure Ketetanggaan ()

var baris_sesudah ← (tombol_sesudah(tombol_sesudah + 3))

var kolom_sesudah ← (tombol_sesudah(tombol_sesudah + 3))

var baris_sebelum ← (tombol_sebelum(tombol_sebelum + 3))

var kolom_sebelum ← (tombol_sebelum(tombol_sebelum + 3))

begin

return baris_sebelum - baris_sesudah <= 1 and kolom_sebelum - kolom_sesudah <= 1 end

procedure TambahKata() begin

if kata_tebakan.length < panjang_kata then begin

KataBaru("") end

else if not SudahKetemu(kata_tebakan) then begin

var indeks_kata:Number ← CariKata(kata_tebakan)

if indeks_kata > -1 then begin

kata_tebakan ← kata_ketemu

KataBaru("")

(32)

end

for i ← 0 to kata_ketemu.length do

begin

var Kata:String

Kata ← kata_ketemu[i]

nilai_total ← nilai_total + nilai[Kata.length]

daftar_kata ← daftar_kata + Kata + "\n"

end

Berdasarkan pseudocode di atas, pada procedure HurufTerpilih() dapat dilihat

bahwa huruf-huruf yang dipilih pemain untuk membentuk sebuah kata harus

bertetangga secara vertikal, horizontal, atau diagonal. Apabila nilai ketetanggaannya

benar maka huruf-huruf tersebut dapat diajukan sebagai jawaban oleh pemain.

Panjang kata yang dibentuk pemain juga tidak boleh kurang dari tiga huruf dan tidak

melebihi delapan huruf. Selanjutnya kata tersebut akan dicari di dalam kamus.

Penelusuran dimulai dari kata awal hingga kata terakhir dalam kamus sampai

ditemukan kata yang sesuai. Apabila kata yang dicari telah ditemukan dalam kamus,

maka kata tersebut ditambahkan ke dalam daftar kata yang berhasil ditemukan

pemain. Pemain memperoleh nilai total dari hasil penjumlahan nilai masing-masing

(33)

Penerapan algoritma Linear Search pada permainan Word Scramble dijelaskan

dalam beberapa langkah berikut.

1. Langkah 1

Langkah 1 dimulai dengan melihat apakah huruf-huruf yang dipilih pemain

memiliki nilai ketetanggaan yang benar. Nilai ketetanggan tersebut bernilai

benar apabila huruf-huruf yang dipilih saling terhubung secara vertikal,

horizontal, atau diagonal baik ke arah kiri maupun kanan. Jika huruf yang

dipilih saling bertetangga, maka pemain dapat mengajukan jawabannya untuk

dijadikan sebagai nilai yang akan dicari di dalam kamus. Seperti yang dapat

dilihat pada Gambar , huruf F, A, C, dan E saling berhubungan secara secara

vertikal, horizontal, dan diagonal sehingga didapat kata FACE sebagai nilai

yang akan dicari keberadaannya di dalam kamus.

Gambar 3.1 Langkah 1

FACE

M F R V

C A V R

E

D G A

E E N A

W O

S C R A M B L E R D

Tambah

(34)

2. Langkah 2

Setelah pemain memasukkan kata tebakannya untuk dicari di dalam kamus,

selanjutnya akan diperiksa terlebih dahulu apakah kata tebakannya kurang dari

tiga huruf atau lebih dari delapan huruf sebelum dilakukan penelusuran lebih

lanjut. Jika kurang dari tiga huruf atau lebih dari delapan huruf, maka kata

tersebut tidak dapat dijadikan tebakan dan pemain harus mencari kata lain.

Misalkan kata yang dipilih adalah FACE. Kata tersebut terdiri dari empat

huruf maka kata tersebut dapat dilanjutkan penelusurannya di dalam kamus.

3. Langkah 3

Selanjutnya, penelusuran kata yang akan dicari di dalam kamus. Penelusuran

dimulai dari kata pertama sampai kata terakhir di dalam kamus. Apabila kata

atau pola yang dicari ditemukan maka pemain akan mendapatkan nilai yang

sesuai dengan jumlah huruf dari kata tebakannya tersebut. Jika kata yang dicari

tidak ditemukan, maka pemain harus mencari kata baru yang lain sebagai

tebakannya. Berdasarkan Tabel Daftar Nilai, untuk kata FACE yang terdiri

dari empat huruf maka pemain mendapatkan nilai 3 (tiga). Kata tersebut

dimasukkan ke dalam daftar kata yang berhasil ditebak oleh pemain. Pemain

dapat melanjutkan permainan sampai waktu yang telah ditentukan habis.

Gambar 3.2 Langkah 3

Kata Baru Ditemukan!

M F R V

C A V R

E

D G A

E E N A

Tambah

Hapus

Total nilai : 3

Daftar Kata :

FACE

W O

(35)

3.1.2.1 Flowchart Alur Permainan

Langkah-langkah bermain pada permainan Hangman akan digambarkan dengan

flowchart berdasarkan peraturan permainan yang telah ditentukan. Gambar 3.3 berikut

ini akan menjelaskan mengenai alur permainan Hangman.

Start

HurufAcak () waktu_sisa = 120

HurufTerpilih ()

TambahKata ()

waktu_sisa = 0 ?

End

Ya

Tidak

“Waktu habis !”

Gambar 3.3 Flowchart Alur Permainan

Keterangan:

waktu_sisa : jumlah waktu yang diberikan untuk menebak

3.1.2.2 Flowchart HurufAcak()

Flowchart ini menggambarkan bagaimana huruf acak yang akan dimasukkan pada

papan permainan diperoleh. Penentuan huruf acak didasarkan pada frekuensi huruf

acak pada Tabel 2.1 dengan jumlah seluruh frekuensi adalah 100. Gambar 3.4

(36)

Start alfabet[], frek frek = random(99)

frek = 0-7 ? alfabet[0]

frek = 8-9 ?

alfabet[1] Ya Tidak Ya

alfabet[3] frek = 10-14 ?

alfabet[2] Ya Tidak Ya

Tidak

frek = 15-17 ?

alfabet[4] frek = 29-30 ?

alfabet[5] Ya Tidak Ya

Tidak

frek = 18-28 ?

alfabet[7] frek = 31-32 ?

alfabet[6] Ya Tidak Ya

Tidak

frek = 33-35 ?

alfabet[8] frek = 43 ?

alfabet[9] Ya Tidak Ya

Tidak

frek = 36-42 ?

alfabet[11] frek = 44 ?

alfabet[10] Ya Tidak Ya

Tidak

frek = 45-49 ?

alfabet[12] frek = 53-59 ?

alfabet[13] Ya Tidak Ya

Tidak

frek = 50-52 ?

alfabet[15] frek = 60-66 ?

alfabet[14] Ya Tidak Ya

Tidak

frek = 67-69 ?

alfabet[16] frek = 71-77 ?

alfabet[17] Ya Tidak Ya

Tidak

frek = 70 ?

alfabet[19] frek = 78-83 ?

alfabet[18] Ya Tidak Ya

Tidak

frek = 84-90 ?

alfabet[20] frek = 94 ?

alfabet[21] Ya Tidak Ya

Tidak

frek = 91-93 ?

alfabet[23] frek = 95 ?

alfabet[22] Ya Tidak Ya

Tidak

(37)

Keterangan:

frek : nilai acak untuk alfabet

alfabet[] : array berisi huruf mulai dari A sampai Z

3.1.2.3 Flowchart HurufTerpilih()

HurufTerpilih() merupakan fungsi yang berguna untuk memeriksa apakah huruf-huruf

yang dipilih Pemain saling bertetangga atau tidak. Apabila nilai ketetanggaan antara

huruf yang terakhir dipilih dengan huruf yang sebelumnya telah dipilih adalah benar,

maka Pemain dapat melanjutkan tebakannya. Jika nilai ketetanggaannya salah, maka

Pemain harus memilih huruf lain yang bertetangga. Gambar 3.6 merupakan flowchart

HurufTerpilih().

Start

b, tombol_terakhir, Ketetanggaan, kata_tebakan, huruf

tombol_terakhir = null ?

Ketetanggaan (b, tombol_terakhir) =

true ?

KataBaru() Ya

Tidak

Tidak kata_tebakan = kata_tebakan + huruf Ya

tombol_terakhir = b

End

(38)

Keterangan:

b : tombol huruf yang dipilih Pemain sesudah tombol_terakhir

tombol_terakhir : tombol huruf terakhir yang dipilih Pemain

Ketetanggaan : tipe boolean untuk menyatakan ketetanggan antara b dan

tombol_terakhir

kata_tebakan : kata tebakan Pemain

huruf : huruf-huruf yang dipilih Pemain

3.1.2.4 Flowchart Ketetanggaan()

Flowchart ini menggambarkan bagaimana menentukan huruf-huruf yang dipilih

Pemain saling bertetangga atau tidak. Gambar 3.7 merupakan flowchart

Ketetanggaan().

Start

Ketetanggaan, baris_sebelum, baris_sesudah, kolom_sebelum,

kolom sesudah

baris_sebelum – baris_sesudah <= 1 ?

Ya

Tidak Tidak

Ya

End Ketetanggaan = true

kolom_sebelum – kolom_sesudah <= 1

?

Ketetanggaan = false

Gambar 3.6 Flowchart Ketetanggaan

Keterangan:

baris_sebelum : indeks huruf yang sebelumnya dipilih berdasarkan baris

baris_sesudah : indeks huruf yang terakhir dipilih berdasarkan baris

kolom_sebelum : indeks huruf yang sebelumnya dipilih berdasarkan kolom

(39)

3.1.2.5 Flowchart KataBaru()

Flowchart ini menggambarkan bagaimana huruf-huruf yang dipilih Pemain dirangkai

menjadi sebuah kata. Gambar 3.6 merupakan flowchart KataBaru().

Start

i, tombol[], kata_tebakan, huruf

i = 0

tombol[i] = enabled

i = tombol.length

?

kata_tebakan = huruf

End

i = i + 1

Ya

Tidak

Gambar 3.7 Flowchart KataBaru()

Keterangan:

i : jumlah variabel tombol huruf

tombol [] : array berisi tombol-tombol huruf

3.1.2.6 Flowchart PeriksaKata()

Flowchart ini menggambarkan bagaimana kata yang telah dirangkai oleh Pemain

(40)

Start (kata_tebakan) = true ?

indeks_kata =

Gambar 3.8 Flowchart PeriksaKata()

Keterangan:

panjang_kata : jumlah huruf minimal yang dapat dirangkai menjadi sebuah kata

SudahKetemu : tipe boolean untuk menyatakan apakah kata tebakan sudah ditemukan

sebelumnya atau belum

(41)

CariKata : nilai yang menyatakan apakah kata tebakan terdapat dalam kamus

kata_ketemu : array yang berisi kata tebakan yang benar

3.1.2.7 Flowchart SudahKetemu()

SudahKetemu() merupakan fungsi yang berguna untuk memeriksa apakah kata yang

dijadikan tebakan telah ditemukan sebelumnya. Gambar 3.8 merupakan flowchart

SudahKetemu().

Start

i, a, kata_ketemu, SudahKetemu

i = 0

a = kata_ketemu[i]

?

SudahKetemu = true

i =

kata_ketemu.length ?

SudahKetemu = false i = i + 1

End Ya

Tidak

Ya Tidak

Gambar 3.9 Flowchart SudahKetemu()

Keterangan:

i : jumlah variabel pada kata_ketemu

(42)

3.1.2.8 Flowchart CariKata()

CariKata() merupakan fungsi yang berguna untuk memeriksa apakah kata tebakan

Pemain terdapat di dalam kamus. Fungsi inilah yang menggunakan algoritma

pencarian untuk menemukan kata di dalam kamus. Gambar 3.9 merupakan flowchart

CariKata().

Start

i = 0

Kata = kata[i]

huruf = kata[i] ?

CariKata = i

i = kata.length ?

CariKata = -1 i = i + 1

End kata, huruf, i,

Kata, CariKata

Ya Ya

Tidak

Tidak

Gambar 3.10 Flowchart CariKata()

Keterangan:

kata : kata dalam kamus

i : jumlah kata dalam kamus

(43)

3.1.2.9 Flowchart Nilai()

Nilai() merupakan fungsi yang berguna untuk menghitung jumlah nilai yang diperoleh

dari tiap kata yang berhasil ditebak oleh Pemain. Penentuan nilai dari tiap kata

ditentukan dari banyaknya huruf yang membentuknya. Gambar 3.10 merupakan

flowchart Nilai().

Start

i, Kata, kata_ketemu, nilai_total, nilai,

daftar_kata

i = 0

Kata = kata_ketemu[i]

nilai_total = nilai_total + nilai[Kata.length]

daftar_kata = daftar_kata + Kata i =

kata_ketemu.length ? i = i + 1

“Total Nilai : nilai_total” “Daftar Kata : daftar_kata” End

Ya Tidak nilai_total = 0

Gambar 3.11 Flowchart Nilai()

Keterangan:

i : jumlah kata yang berhasil ditebak Pemain

nilai : nilai berdasarkan banyak huruf tiap kata

nilai_total : Total nilai yang diperoleh Pemain

(44)

3.2 Perancangan Sistem

Perancangan sistem yang akan dibahas meliputi perancangan aplikasi permainan dan

perancangan antarmuka.

3.2.1 Perancangan Aplikasi Permainan

Perancangan aplikasi permainan merupakan perancangan interaksi yang dapat

dilakukan pemain terhadap aplikasi permainan yang dibangun. Aplikasi akan dimulai

dengan menampilkan frame Menu yang tersedia tombol pilihan Mulai, Aturan,

Tentang dan Keluar. Setiap tombol akan memberikan tampilan pada frame-frame

berikutnya. Aplikasi akan berhenti jika pengguna memilih tombol Keluar. Berikut ini

adalah proses yang terjadi pada aplikasi permainan Word Scramble yang dapat dilihat

pada Gambar 3.11.

Start

Frame Tentang Permainan Pilih tombol Kembali

Bermain Word Scramble

(45)

Gambar 3.12 Flowchart Aplikasi

3.2.2 Perancangan Antarmuka

Perancangan antarmuka aplikasi permainan Word Scramble ini terdiri dari beberapa

frame, yaitu frame Menu, frame Arena Permainan, frame Aturan Permainan, dan

frame Tentang Permainan. Berikut ini adalah rancangan antarmuka frame- frame

tersebut.

1. Frame Menu

Frame Menu merupakan frame yang pertama kali ditampilkan pada saat

aplikasi dijalankan. Frame ini berisikan menu yang dapat dipilih oleh

pengguna yaitu Mulai, Aturan, Tentang dan Keluar. Rancangan antarmuka

frame ini dapat dilihat pada Gambar 3.12.

Gambar 3.13 Frame Menu

Keterangan :

1. Word Scramble merupakan judul aplikasi yang dirancang dengan

menggunakan komponen Graphic.

W O

S C R A M B L E

R D

1

4 3

5

(46)

2. Mulai merupakan tombol yang berfungsi untuk menampilkan frame

Arena Permainan yang dirancang dengan menggunakan komponen

Button.

3. Aturan merupakan tombol yang berfungsi untuk menampilkan frame

Aturan Permainan yang dirancang dengan menggunakan komponen

Button.

4. Tentang merupakan tombol yang berfungsi untuk menampilkan frame

Tentang Permainan yang dirancang dengan menggunakan komponen

Button.

5. Keluar merupakan tombol yang berfungsi untuk keluar dari aplikasi yang

dirancang dengan menggunakan komponen Button.

2. Frame Arena Permainan

Frame arena permainan merupakan frame yang digunakan untuk bermain

Word Scramble. Rancangan antarmuka frame ini dapat dilihat pada Gambar

3.13.

Gambar 3.14 Frame Arena Permainan

Keterangan :

1. Word Scramble merupakan judul aplikasi yang dirancang dengan

menggunakan komponen Graphic. 3

6

W O

S C R A M B L E R D

2

1

4

5

8

(47)

2. Papan merupakan komponen Button yang berfungsi untuk menampilkan

huruf acak yang akan ditebak.

3. Tambah merupakan komponen Button yang berfungsi untuk memeriksa

jawaban pemain apakah benar atau tidak.

4. Hapus merupakan komponen Button yang berfungsi untuk menghapus

jawaban sebelum diperiksa.

5. Kembali merupakan komponen Button yang berfungsi untuk kembali ke

frame Menu jika waktu sudah habis.

6. Hasil Nilai merupakan komponen Text Area yang berfungsi menampilkan

nilai dan semua jawaban benar yang diperoleh pemain.

7. Status Kata merupakan komponen Movie Clip yang berfungsi

menampilkan huruf yang dipilih.

8. Status Waktu merupakan komponen Movie Clip yang berfungsi

menampilkan jumlah waktu yang tersisa untuk menebak jawaban.

3. Frame Aturan Permainan

Frame aturan permainan merupakan frame yang berisikan peraturan sekaligus

cara bermain sehingga dapat memberikan informasi kepada pengguna tentang

permainan Word Scramble. Rancangan antarmuka frame ini dapat dilihat pada

Gambar 3.14.

Gambar 3.15 Frame Aturan Permainan

2

W O

S C R A M B L E R D

1

(48)

Keterangan :

1. Word Scramble merupakan judul aplikasi yang dirancang dengan

menggunakan komponen Graphic.

2. Komponen Static Text yang berfungsi untuk menampilkan aturan dan cara

bermain Word Scramble.

3. Kembali merupakan komponen Button yang berfungsi untuk kembali ke

frame awal.

4. Frame Tentang Permainan

Frame tentang permainan merupakan frame yang berisikan informasi

mengenai profil penulis. Rancangan antarmuka frame ini dapat dilihat pada

Gambar 3.15.

Gambar 3.16 Frame Tentang Permainan

Keterangan :

1. Word Scramble merupakan judul aplikasi yang dirancang dengan

menggunakan komponen Graphic.

2. Komponen Static Text yang berfungsi untuk menampilkan informasi

mengenai profil penulis.

3. Kembali merupakan komponen Button yang berfungsi untuk kembali ke

frame awal. 2

W O

S C R A M B L E R D

1

(49)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi Sistem

Tahap implementasi dilakukan sesuai dengan analisis dan perancangan sistem pada

bab sebelumnya. Implementasi aplikasi permainan Word Scramble meliputi

kebutuhan perangkat lunak dan perangkat keras untuk dapat membangun permainan

dengan optimal. Pada tahap ini seluruh spesifikasi dari aplikasi yang dirancang akan

diterjemahkan ke dalam source code dan rancangan antarmuka sehingga

menghasilkan sebuah aplikasi.

4.1.1 Spesifikasi Perangkat Lunak

Perangkat lunak yang digunakan dalam pembuatan permainan Word Scramble ini

adalah Adobe Flash CS5 dengan menggunakan ActionScript 3.0. Penggunaan

ActionScript 3.0 sebagai external class bertujuan agar pemrograman menjadi lebih

teroraganisir karena source code dan animasi tidak berada dalam satu timeline.

Aplikasi ini dibangun pada sistem operasi Windows 7 Home Premium.

4.1.2 Spesifikasi Perangkat Keras

Pada pengimplementasian aplikasi permainan Word Scramble, penulis menggunakan

sebuah laptop yang mempunyai spesifikasi perangkat keras sebagai berikut:

1. Prosesor Intel Core i3

2. Memory RAM 4 GB.

3. Hard Disk 320 GB.

(50)

4.1.3 Implementasi Rancangan Fungsi

Implementasi rancangan fungsi merupakan hasil transformasi dari proses perancangan

fungsi algoritma yang telah dijelaskan pada flowchart di bab sebelumnya menjadi

source code dalam aplikasi. Hasil list program dapat dilihat pada lampiran A.

4.1.4 Implementasi Rancangan Antarmuka

Berikut ini akan diperlihatkan tampilan antarmuka dari aplikasi permainan Word

Scramble.

4.1.4.1 Tampilan Utama

Tampilan utama dari aplikasi permainan Word Scramble ini dapat dilihat pada

Gambar 4.1. Gambar tersebut memperlihatkan tampilan daftar menu yang dapat

dipilih oleh pemain. Pada tampilan ini, pemain dapat memilih tombol Mulai yang

menampilkan Arena Permainan. Jika pemain memilih tombol Aturan, maka akan

ditampilkan Tampilan Aturan Permainan yang berisi peraturan dan cara bermain

permainan Word Scramble. Jika pemain memilih Tentang Permainan, maka akan

ditampilkan mengenai penulis. Jika pemain memilih Keluar, maka pemain akan keluar

dari aplikasi permainan ini. Tampilan Utama dapat dilihat pada Gambar 4.1 berikut.

(51)

4.1.4.2 Tampilan Arena Permainan

Tampilan arena permainan Word Scramble pada Gambar 4.2 memperlihatkan arena

permainan ketika permainan baru dimulai. Gambar 4.3 memperlihatkan arena

permainan ketika permainan sedang berlangsung.

Gambar 4.2 Tampilan Arena Permainan

(52)

Gambar 4.4 menampilkan arena permainan ketika permainan berakhir yaitu

dengan menunjukkan pesan bahwa waktu telah habis, tombol Kembali, Total Nilai

dan Daftar Kata yang diperoleh Pemain.

Gambar 4.4 Tampilan Arena Permainan Ketika Permainan Selesai

4.1.4.3 Tampilan Aturan Permainan

Pada tampilan ini, akan ditampilkan peraturan permainan Word Scramble yang

ditetapkan pada aplikasi sekaligus cara bermainnya dan tombol Kembali. Berikut ini

adalah Tampilan Aturan Permainan yang dapat dilihat pada Gambar 4.5.

(53)

4.1.4.4 Tampilan Tentang Permainan

Pada tampilan ini, akan ditampilkan informasi mengenai penulis. Berikut ini adalah

Tampilan Permainan yang dapat dilihat pada Gambar 4.6.

Gambar 4.6 Tampilan Tentang Permainan

4.2 Pengujian Aplikasi

Pada tahap pengujian ini akan dievaluasi apakah aplikasi yang dibangun sesuai

dengan tujuan yang diharapkan atau tidak. Pengujian ini dilakukan untuk menemukan

kelemahan yang ada pada aplikasi dan mendemonstrasikan fungsi-fungsinya apakah

telah bekerja sesuai dengan spesifikasi, kebutuhan serta kinerjanya. Pengujian yang

akan dilakukan pada aplikasi ini adalah pengujian integrasi aplikasi dan pengujian

responden.

Metode yang digunakan pada pengujian ini adalah Black Box. Dengan Black

Box, pengujian hanya dilakukan pada representasi sistem yang terlihat tanpa perlu

mengetahui bagaimana cara kerja sistem tersebut.

1.

Teknik yang digunakan dalam

pengujian Black Box antara lain:

(54)

2.

3.

Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang

dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang

ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut.

Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi

kebutuhan pemakai dapat diukur dan dapat diketahui kesalahan-kesalahannya.

4.2.1 Pengujian Integrasi Aplikasi

Pengujian integrasi dilakukan terhadap sistem dan subsistem lengkap beserta

komponen-komponen penyusunnya yang terintegrasi. Pengujian integrasi ini akan

dilakukan pada satu platform yaitu Windows untuk memastikan keadaan aplikasi pada

sistem operasi itu dapat bekerja dengan baik. Berikut ini adalah pengujian integrasi

aplikasi pada tiap proses pada platform Windows.

4.2.1.1 Proses pada Tampilan Utama

Berikut adalah hasil evaluasi proses pada Tampilan Utama pada platform Windows

yang dapat dilihat pada Tabel 4.1.

Tabel 4.1 Hasil Evaluasi Proses pada Tampilan Utama

No. Sasaran Pengujian Output Status

1. Uji tampilan aplikasi ketika dieksekusi

Tampilan Utama menampilkan tombol Mulai, tombol Aturan, tombol Tentang dan tombol Keluar

Baik

2. Uji pemilihan tombol Mulai

Tampilan Arena Permainan ditampilkan

Baik

3. Uji pemilihan tombol

Aturan

Tampilan Aturan Permainan ditampilkan

Baik

4. Uji pemilihan tombol Tentang

Tampilan Tentang pembuat aplikasi permainan ditampilkan

Baik

5. Uji pemilihan tombol

Keluar

Aplikasi berhenti dan pemain keluar dari aplikasi

(55)

4.2.1.2 Proses pada Tampilan Arena Permainan

Berikut adalah hasil evaluasi proses pada tampilan Arena Permainan pada platform

Windows yang dapat dilihat pada Tabel 4.2.

Tabel 4.2 Hasil Evaluasi Proses pada Tampilan Arena Permainan

No. Sasaran Pengujian Output Status

1. Uji tampilan Arena

Permainan

Arena Permainan menampilkan Papan Word Scramble, Status Kata, Status Waktu, Hasil Nilai, tombol Tambah, tombol Hapus, dan tombol Kembali.

Baik

2. Uji tampilan Papan

Word Scramble

Papan Word Scramble

menampilkan huruf acak

berdasarkan nilai frekuensi yang terpilih

Baik

3. Uji tampilan Status Kata

Huruf yang telah dipilih ditampilkan

Baik

4. Uji tampilan Status Waktu

Sisa waktu ditampilkan Baik

5. Uji tampilan Nilai Nilai yang diperoleh sesuai dengan

kata yang ditemukan

Baik

6. Uji pemilihan tombol

Tambah

Jawaban diperiksa apakah terdapat dalam kamus atau tidak

Baik

7. Uji pemilihan tombol

Hapus

Pemain membatalkan jawabannya untuk memulai jawaban yang baru

Baik

8. Uji pemilihan tombol

Kembali

Tampilan Utama ditampilkan Baik

4.2.1.3 Proses pada Tampilan Aturan Permainan

Berikut adalah hasil evaluasi proses pada tampilan Aturan Permainan pada platform

Windows yang dapat dilihat pada Tabel 4.3.

Tabel 4.3 Hasil Evaluasi Proses pada Tampilan Aturan Permainan

No. Sasaran Pengujian Output Status

1. Uji tampilan Aturan

Permainan

Tampilan Aturan Permainan menampilkan informasi

mengenai peraturan permainan, cara bermain dan tombol Kembali

Baik

2. Uji pemilihan tombol Kembali

(56)

4.2.1.4 Proses pada Tampilan Tentang Permainan

Berikut adalah hasil evaluasi proses pada tampilan Tentang permainan pada platform

Windows yang dapat dilihat pada Tabel 4.4.

Tabel 4.4 Hasil Evaluasi Proses pada Tampilan Tentang Permainan

No. Sasaran Pengujian Output Status

1. Uji tampilan Tentang

Permainan

Tampilan Tentang Permainan menampilkan informasi

mengenai pembuat aplikasi dan tombol Kembali

Baik

2. Uji pemilihan tombol Kembali

Tampilan Utama ditampilkan Baik

4.2.2 Pengujian Responden

Untuk mengevaluasi aspek antarmuka, penggunaan, dan penilaian, penulis melakukan

pengujian kepada pengguna dengan metode kuisioner. Pengguna (responden)

berjumlah 20 orang. Pada kuisoner ini terdapat penilaian untuk setiap pertanyaan yang

terbagi menjadi empat golongan, yaitu Tidak Baik (TB), Kurang Baik (KB), Baik (B),

dan Sangat Baik (SB). Jika digolongkan dalam bentuk persentase, maka 0-25%

diinterpretasikan dalam kategori Tidak Baik, 26-50% diinterpretasikan dalam kategori

Kurang Baik, 51-75% diinterpretasikan dalam kategori Baik, dan 76-100%

diinterpretasikan dalam kategori Sangat Baik. Hasil kuisioner dapat dilihat pada

lampiran B.

4.2.2.1 Aspek Antarmuka Aplikasi

Pengujian pada antarmuka aplikasi bertujuan untuk mencari tahu seberapa baik

rancangan antarmuka aplikasi bagi pengguna. Hasil evaluasi aspek antarmuka yang

(57)

Tabel 4.5 Hasil Kuisioner Aspek Antarmuka Aplikasi

No. Sasaran Pertanyaan

Hasil Penilaian

2. Ketepatan warna, posisi dan ukuran

tulisan 3 17 0 0

3. Ketepatan warna, posisi dan ukuran

tombol 7 13 0 0

4. Efek suara 7 9 4 0

Dengan menggunakan rumus (2.1) dan (2.2) dapat dihitung persentase untuk

aspek antarmuka sebagai berikut:

1. Ketepatan warna background

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(0/20)*50% + (0/20)*25% = (4/20)*100% + (16/20)*75% +

= 80 %

2. Ketepatan warna, posisi, dan ukuran tulisan

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(0/20)*50% + (0/20)*25% = (3/20)*100% + (17/20)*75% +

= 78,75%

3. Ketepatan warna, posisi dan ukuran tombol

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

5. Total Keseluruhan

(58)

Dari perhitungan tersebut dapat diperoleh, persentase untuk aspek antarmuka

sebesar 80.31% atau diinterpresentasikan sangat baik.

4.2.2.2 Aspek Penggunaan Aplikasi

Pengujian pada aspek ini bertujuan untuk mengevaluasi tingkat kesulitan pengguna

dalam menjalankan aplikasi. Dari pengujian ini akan didapati apakah pengguna

memahami aturan permainan dan fungsi-fungsi dari menu yang ada. Hasil pengujian

dari kuisioner terhadap penggunaan aplikasi permainan Word Scramble ini dapat

dilihat pada Tabel 4.6.

Tabel 4.6 Hasil Kuisioner Aspek Penggunaan Aplikasi

No. Sasaran Pertanyaan

Hasil Penilaian

2. Pemahaman aturan dan cara

bermain 3 13 4 0

3. Kemudahan menjalankan aplikasi 9 10 1 0

4. Kemudahan penggunaan mouse 11 9 0 0

Dengan menggunakan rumus (2.1) dan (2.2) dapat dihitung persentase untuk

aspek

pengguna sebagai berikut:

1. Pemahaman fungsi tiap tombol

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(1/20)*50% + (0/20)*25% = (6/20)*100% + (13/20)*75% +

= 81,25%

2. Pemahaman aturan dan cara bermain

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(4/20)*50% + (0/20)*25% = (6/20)*100% + (13/20)*75% +

(59)

3. Kemudahan menjalankan aplikasi

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(1/20)*50% + (0/20)*25% = (9/20)*100% + (10/20)*75% +

= 85%

4. Kemudahan penggunaan mouse

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(0/20)*50% + (0/20)*25% = (11/20)*100% + (9/20)*75% +

= 88,75%

5. Total Keseluruhan

Ptotal = (81,25% + 88,75% + 85% + 88,75%) / 4 = 85,94%

Dari perhitungan tersebut dapat diperoleh, persentase untuk aspek penggunaan

aplikasi sebesar 85,94% atau diinterpresentasikan sangat baik.

4.2.2.3 Aspek Penilaian Aplikasi

Penilaian terhadap aspek penilaian secara keseluruhan bertujuan untuk mengetahui

seberapa jauh rasa kepuasan pengguna sehingga dapat diketahui apakah aplikasi ini

sudah mencapai tujuan yang diharapkan atau tidak. Hasil kuisioner yang diperoleh

untuk pengujian terhadap aspek permainan dapat dilihat pada Tabel 4.7.

Tabel 4.7 Hasil Kuisioner Aspek Penilaian Aplikasi

No. Sasaran Pertanyaan

Hasil Penilaian

4. Aturan dan cara bermain yang

telah ditentukan 8 9 3 0

Dengan menggunakan rumus (2.1) dan (2.2) dapat dihitung persentase untuk

(60)

1. Nilai edukasi dari aplikasi

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(1/20)*50% + (0/20)*25% = (15/20)*100% + (4/20)*75% +

= 90%

2. Tingkat kesulitan soal

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(1/20)*50% + (0/20)*25% = (7/20)*100% + (12/20)*75% +

= 82,5%

3. Ketertarikan terhadap permainan

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(1/20)*50% + (0/20)*25% = (7/20)*100% + (12/20)*75% +

= 82,5%

4. Aturan dan cara bermain yang telah ditentukan

Psangat baik + Pbaik + Pkurang baik + Ptidak baik

(3/20)*50% + (0/20)*25% = (8/20)*100% + (9/20)*75% +

= 85%

5. Total Keseluruhan

Ptotal = (90% + 82,5% + 82,5% + 85%) / 4 = 85%

Dari perhitungan tersebut dapat diperoleh, persentase untuk aspek penilaian

(61)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan pembahasan dan evaluasi dari bab-bab terdahulu, maka diperoleh

kesimpulan sebagai berikut:

1. Algoritma Linear Search dapat diimplementasikan sebagai algoritma

pencarian untuk mencocokkan jawaban pemain dengan kata-kata yang ada

pada kamus pada permainan Word Scramble dengan melakukan penelusuran

dari kata pertama hingga kata terakhir pada kamus sampai ditemukan kata

yang sesuai.

2. Pengacakan huruf pada papan permainan dilakukan berdasarkan daftar

frekuensi huruf yang paling sering muncul dalam Bahasa Inggris untuk

mendapatkan kombinasi huruf konsonan dan vokal yang baik sehingga dapat

dirangkai menjadi sebuah kata.

3. Aplikasi permainan Word Scramble yang dibangun mendapatkan penilaian

yang cukup memuaskan dari pengguna dengan penilaian terhadap aspek

antarmuka aplikasi 80,31%, aspek penggunaan aplikasi 85,94%, dan aspek

Gambar

Gambar 3.1 Langkah 1
Gambar 3.2 Langkah 3
Gambar 3.3 Flowchart Alur Permainan
Gambar 3.4 Flowchart HurufAcak()
+7

Referensi

Dokumen terkait

Tidak ada definisi yang universal mengenai Manajemen Pengetahuan (Knowledge Management).Manajemen Pengetahuan dapat didefinisikan sebagai koordinasi yang disengaja dan

Whilst views and advice given are in good faith, you should not regard the publication as a substitute for the exercise of your own judgement and should seek other professional

Pencemaran air adalah masuknya atau dimasukkannya makhluk hidup, zat, energi, dan atau komponen lain ke dalam air dan atau berubahnya tatanan air oleh kegiatan manusia,

Penelitian ini bertujuan untuk menganalisis peramalan nilai ekspor Indonesia pada sektor pertanian, industri, pertambangan, dan agregat dari ketiga sektor tersebut pasca

Menjelaskan sebab terjadinya karena tindakan yang tidak sesuai prosedur, teknik operasi yang cukup sulit dan peralatan yang kurang memadai, serta

Pastinya ada sebab yang membuat para alumni ini menjadi berubah dalam berperilaku.Pola perilaku berpacaran alumni santri yang dilakukan oleh alumni santri ini telah

Karekteristik Pemahaman Konsep Bilangan Anak Usia 4-5 Tahun Pemahaman konsep bilangan adalah salah satu konsep matematika yang.. dapat dikenalkan anak usia 4-5 tahun,

Berkaitan dengan pembangunan sumber daya manusia di Kota Bandar. Lampung, Kecamatan Panjang merupakan daerah yang memiliki