• Tidak ada hasil yang ditemukan

SKRIPSI NUR IMRAN RUSLAN E1E

N/A
N/A
Protected

Academic year: 2021

Membagikan "SKRIPSI NUR IMRAN RUSLAN E1E"

Copied!
128
0
0

Teks penuh

(1)

BERBASIS ANDROID

Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik

NUR IMRAN RUSLAN

E1E1 10 097

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK

UNIVERSITAS HALU OLEO KENDARI

(2)

ii

APLIKASI KAMUS BAHASA LATIN HEWAN DAN TUMBUHAN MENGGUNAKAN ALGORITMA BRUTE FORCE DAN FITUR

AUTOCOMPLETE BERBASIS ANDROID

Adalah benar dibuat oleh saya sendiri dan belum pernah dibuat dan diserahkan sebelumnya baik sebagian ataupun seluruhnya, baik oleh saya ataupun oleh orang lain, baik di Universitas Halu Oleo ataupun institusi pendidikan lainnya.

Kendari, Maret 2016

Nur Imran Ruslan E1E1 10 097

Kendari, Maret 2016

Pembimbing II Pembimbing I

Subardin, ST., MT. Bambang Pramono, S.Si, MT

NIP. NIP. 19710425 200801 1 010

Mengetahui,

Ketua Jurusan Teknik Informatika Fakultas Teknik UHO,

Ika Purwanti Ningrum, S.Kom., M.Cs NIP. 19830116 201012 2 002

Pas Foto 3 X 4

(3)

iii

Aplikasi Kamus Bahasa Latin Hewan Dan Tumbuhan Menggunakan Algoritma Brute

Force Dan Fitur Autocomplete Berbasis Android

Telah diuji dan dipertahankan sidang penguji skripsi Jurusan Teknik Informatika Fakultas Teknik Universitas Halu Oleo dan dinyatakan memenuhi syarat guna memperoleh gelar Sarjana Teknik.

Kendari, Maret 2016

Tim Penguji : Tanda Tangan

1. Bambang Pramono, S.Si.,MT. 1. ... Pembimbing I 2. Subardin, ST., MT. 2. ... Pembimbing II 3. Sutardi, S.Kom.,MT. 3. ... Ketua Sidang 4. Isnawaty, S.Si., MT. 4. ... Sekretaris Sidang

5. LM. Fid Aksara, S.Kom., M.Kom. 5. ... Penguji III

Mengesahkan,

Dekan Fakultas Teknik Ketua Jurusan Teknik Informatika

UHO, Fakultas Teknik UHO,

Mustarum Musaruddin, ST, MIT, PhD Ika Purwanti Ningrum, S.Kom., M.Cs NIP. 19730122 200112 1 002 NIP: 19830116 201012 2 002

(4)

iv

karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan Tinggi, dan sejauh yang penulis ketahui bahwa tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang lain, kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan dalam daftar pustaka.

Kendari, Maret 2016 Penulis,

(5)

v

Nur Imran Ruslan, E1E1 10 097

Aplikasi Kamus Bahasa Latin Hewan Dan Tumbuhan Menggunakan Metode Brute Force Dan Fitur Autocomplete Berbasis Android.

Skripsi, Fakutas Teknik, 2016 (xix+79 halaman+Lampiran)

Kamus bahasa latin hewan dan tumbuhan berbasis android adalah suatu pengembangan aplikasi mobile yang memungkinkan penggunanya dapat mencari kata dengan mudah dan cepat. Aplikasi ini memungkinkan pengguna dengan cepat mencari arti dari bahasa latin hewan maupun tumbuhan. Proses yang terjadi pada aplikasi ini meliputi pencarian kesamaan kata dengan menggunakan metode pencarian Brute Force. Inputan berupa nama hewan atau tumbuhan merupakan nilai string yang akan dijadikan parameter pencarian didalam database.

Hasil pengujian Kamus pencarian menggunakan metode Brute Force berhasil dengan kecepatan kurang dari satu detik waktu pencarian. Dalam pengujian ini, digunakan enam kali pencarian dimana tiga dari enam pencarian menggunakan kata hewan dan sisanya menggunakan kata tumbuhan. Kecepatan proses pencarian menggunakan metode Brute Force bergantung dengan panjang kata atau (String) yang dicari.

(6)

vi

Imran Nur Ruslan, E1E1 10 097

Application Dictionary Latin Animals And Plants Using Brute Force Method And Feature-Based Android Autocomplete.

Mini Thesis, Faculty of Engineering, 2016

(xix+79 page+Attachments)

Latin dictionary of animals and plants is a development of Android-based mobile application that allows users to search for words easily and quickly. This application allows users to quickly search for the meaning of the Latin animals and plants. The process that occurs in these applications include word similarity search using the search Brute Force. Input form Animal or Plant name is a string value that will be used as search parameters in the database. The test results Dictionary search using the Brute Force successfully at speeds of less than one second search time. In this test, is used six times a search in which three of the six search using the Animal and Plant remainder using the word. Speed search process using brute force methods depend on the length of the word or (String) sought.

(7)

vii

Alhamdulillah Puji Syukur Atas Kehadirat Allah SWT Atas Rahmat Dan Hidayah-Nya. Tak Lupa Pula Junjungan Shalawat Dan Salam Kepada Nabi Muhammad SAW, Sehingga Penulis Dapat Menyelesaikan Tugas Akhir Ini.

Tugas Akhir Ini Saya Persembahkan Secara Khusus, Dan Dengan Hati Yang Tulus Saya Sebagai Penulis Menyampaikan Rasa Terima Kasih Yang Sebesar-Besarnya Dan Penghargaan Yang Tak Terhingga Kepada :

Bapak & Ibu Tercinta Bapak M. Ruslan. B Dan Ibu Hj. Hartini Yang Telah Mendoakan, Mendidik, Memberikan Kasih Sayang, Bantuan Materi Serta Dorongan Yang Senantiasa Tanpa Henti. Terima Kasih Sebesar-Besarnya.

Ucapan Terima Kasih Juga Untuk Kakakku Tersayang Nur Yanti Meliana Latif, SH, Serta Kedua Adikku Nurul Hikmah Ruslan, Amd. Farm. Dan Nur Salsabila Ruslan Yang Selalu Memberikan Kasih Sayang Serta Dukungan Semangat. Untuk Semua

Keluarga Besarku Terima Kasih Atas Do’a Dan Dukungannya, Semoga Allah SWT Membalas Kebaikan Kalian.

 Dengan Segalah Kerendahan Hati Saya Menyampaikan Terima Kasih Dan Penghargaan Yang Setinggi-Tingginya Untuk Kedua Pembimbingku Bapak Bambang Pramono,S.Si., MT. Selaku Pembimbing I Dan Bapak Subardin, ST., MT. Selaku Pembimbing II. Terima Kasih Atas Bimbingannya Selama Ini. Semoga Allah SWT Senantiasa Memberi Rahmat Dan Hidayah-Nya Kepada Bapak Beserta Keluarga. Amin.

Kepada Dosenku Ibu Isnawaty, S.Si.,MT. Terima Kasih Atas Bimbingan Dan Bantuannya Selama Ini. Semoga Allah SWT Senantiasa Memberi Rahmat Dan Hidayah-Nya Kepada Ibu Beserta Keluarga. Amin.

Kepada Para Staf Jurusan Teknik Informatika UHO Ibu Elti Dan Ibu Anisa. Terima Kasih Atas Bantuannya Dan Dukungannya. Semoga Allah SWT Senantiasa Membalas Semua Kebaikannya. Amin.

(8)

viii

Saputra, ST., Arisandi, ST., Ongki, ST., Rahmat Oktavianus, L.M Jamsir S, ST., Muh. Hatta, ST., Wahyudi Sabir,ST., Terima Kasih Dan Tetap Semangat Dalam Menggapai Tujuan Dan Cita-Cita Kita Semua. Semoga Allah Swt Melimpahkan Rezeki. Amin.

 Terima Kasih Juga Teman-Teman Yang Senantiasa Membantu Dan Mempunyai Peran Dan Andil Penting Sehingga Saya Sebagai Penulis Dapat Menyelesaikan Tugas Akhir Ini. Terima Kasih Kepada My Brothers Chlyfen Richard, Yechal Dan Hardyan Destro KHV, Terima Kasih Atas Bantuannya.

 Kepada Semua Pihak Yang Tidak Dapat Saya Sebutkan Satu-Persatu, Terima Kasih Atas Bantuannya Dan Dukungannya Yang Telah Kalian Berikan Sehingga Tugas Akhir Ini Dapat Terselesaikan. Alhamdulillah.

Setiap Langkah Pasti Punya Tujuan Terjadi Dengan Atau Tanpa Bantuan Langkah Kakimu Melesat Atau Tersendat Jalani Karena Dia Kan Jadi Sahabat Ketika Niat Raga Sudah Menjadi Takdir Jurang Terdalam Pun Akan Segera Berakhir

Rintangan Di Ujung Langit Pasti Akan Teraih.. Raihlah Masa Depanmu Yang Cerah (Fade2Black)

(9)

ix

Assalamu’alaikum Warrahmatullahi Wabarakatuh.

Alhamdulillah, Segala puji dan syukur ke hadirat Allah SWT yang telah melimpahkan segala rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan tugas akhir ini yang berjudul “Aplikasi Kamus Bahasa Latin Hewan Dan Tumbuhan Menggunakan Algoritma Brute Force Dan Fitur Autocomplete Berbasis Android” untuk melengkapi salah satu persyaratan yang diajukan dalam rangka menempuh ujian akhir untuk memperoleh gelar Sarjana Teknik pada Jenjang Strata Satu Program Studi Teknik Informatika di Fakultas Teknik Universitas Halu Oleo Kendari.

Penulis menyadari bahwa penulisan skripsi ini tidak akan terwujud tanpa adanya dukungan dan bantuan dari berbagai pihak sehingga dalam kesempatan ini penulis menghaturkan penghargaan dan ucapan terima kasih yang sebesar-besarnya kepada yang terhormat :

1. Bapak Prof. Dr. Ir. Usman Rianse, M.Si. Selaku Rektor Universitas Halu Oleo. 2. Bapak Mustarum Musaruddin, ST, MIT, PhD. Selaku Dekan Fakultas Teknik

Universitas Halu Oleo.

3. Ibu Ika Purwanti Ningrum, S.Kom., M.Cs. Selaku Ketua Jurusan Program Studi S-1 Teknik Informatika Fakultas Teknik Universitas Halu Oleo.

(10)

x

waktunya untuk membimbing penulis.

6. Bapak Sutardi, S.Kom., MT., Ibu Isnawaty, S.Si., MT., Bapak LM. Fid Aksara, S.Kom., M.Kom., Selaku dosen penguji terimakasih atas koreksi dan sarannya saat ujian seminar proposal, hasil, dan ujian akhir (skripsi).

7. Seluruh dosen serta para staf Fakultas Teknik Universitas Halu Oleo, khususnya pada Program Studi Teknik Informatika, terima kasih atas bimbingan dan ilmu pengetahuannya.

8. Orang tua, kakak dan adik-adikku tercinta yang tanpa hentinya mendoakan dan terus memberikan semangat.

9. Rekan-rekan Mahasiswa Jurusan Teknik Informatika angkatan 2010 yang telah memberi masukan penulis baik selama mengikuti perkuliahan maupun dalam penulisan skripsi ini.

10. Senior dan junior di Teknik Informatika Universitas Halu Oleo (IT 2007, 2008, 2010, 2011, 2012, 2013, 2014, 2015).

11.Seluruh teman-teman dan semua pihak yang tidak dapat saya sebutkan satu persatu, terima kasih atas semua dukungan dan bantuannya sehingga terselesaikannya Laporan Skripsi / Tugas Akhir (TA) ini.

(11)

xi

sehingga di masa mendatang tugas akhir ini dapat dikembangkan lebih lanjut dan semoga tugas akhir ini dapat bermanfaat.

Wassalamualaikum Warrahmatullahi Wabarakatuh.

Kendari, Maret 2016 Penulis,

Nur Imran Ruslan NIM. E1E1 10 097

(12)

xii

HALAMAN PENGESAHAN SKRIPSI ... ii

HALAMAN PENGESAHAN SIDANG ... iii

HALAMAN PERNYATAAN ... iv

INTISARI ... v

ABSTRACT ... vi

HALAMAN PERSEMBAHAN ... vii

KATA PENGANTAR ... ix

DAFTAR ISI ... xii

DAFTAR GAMBAR ... xvii

DAFTAR TABEL ... xix

BAB I PENDAHULUAN ... 1 1.1Latar Belakang ... 1 1.2Rumusan Masalah ... 3 1.3Batasan Masalah... 3 1.4Tujuan Penelitian ... 4 1.5Manfaat Penelitian ... 5 1.6Sistematika Penulisan ... 5 1.7Tinjauan Pustaka ... 6

BAB II LANDASAN TEORI ... 9

(13)

xiii

2.3Hewan Dan Tumbuhan ... 13

2.3.1 Hewan ... 13

2.3.2 Tumbuhan ... 14

2.4Algoritma Brute Force ... 14

2.5Kebutuhan Fitur Pada Aplikasi ... 18

2.5.1 Fitur Autocomplete ... 18

2.6Java ... 19

2.6.1 Pengertian Java... 19

2.6.2 Kelebihan Dan Kekurangan Java... 20

2.6.3 Fitur Java ... 23

2.7Android ... 24

2.7.1 Pengertian Android ... 24

2.7.2 Sejarah Sistem Android... 25

2.8 Arsitektur Android ... 27

2.9 IDE Eclipse ... 29

2.10 Android SDK ... 31

2.11 ADT (Android Development Tools) ... 32

2.12 SQLite ... 32

2.13 Unified Modelling Language (UML) ... 34

(14)

xiv

2.13.5 Sequence Diagram ... 41

2.14 Flowchart ... 44

BAB III METODOLOGI PENELITIAN ... 46

3.1Metode Pengumpulan Data dan Informasi ... 46

3.2Metode Pengembangan Sistem ... 46

3.3Tempat dan Waktu Penelitian ... 48

3.3.1 Tempat... 48

3.3.2 Waktu ... 48

BAB IV PERANCANGAN DAN ANALISIS ... 50

4.1Analisis Sistem ... 50

4.2Analisis Masalah ... 50

4.3Analisis Algoritma Brute Force ... 50

4.3.1 Implementasi Algoritma Brute Force ... 50

4.3.1.1Cara Kerja Algoritma Brute Force ... 51

4.3.2 Proses Pencarian Brute Force Dalam String ... 52

4.4Analisis Kebutuhan Nonfungsional ... 53

4.4.1 Analisis Kebutuhan Perangkat Keras ... 54

4.4.2 Analisis Kebutuhan Perangkat Lunak ... 54

4.5Analisis Kebutuhan Fungsional ... 54

(15)

xv

4.5.2 Activity Diagram ... 57

4.5.2.1 Activity Diagram Kamus Hewan ... 57

4.5.2.2 Activity Diagram Kamus Tumbuhan ... 58

4.5.3 Sequence Diagram ... 58

4.6 Flowchart System ... 59

4.7 Gambaran Umum Sistem ... 60

4.7.1 Perancangan Sistem Arsitektur ... 60

4.7.2 Perancangan Interface ... 60

4.7.2.1 Perancangan Tampilan Splash Screen ... 61

4.7.2.2 Form Menu Utama ... 61

4.7.2.3 Form Kamus Latin Hewan Dan Tumbuhan ... 62

4.7.2.4 Form Gallery ... 62

4.7.2.5 Form About Us ... 63

4.7.2.6 Button Keluar ... 63

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM ... 64

5.1 Pembuatan Database ... 64

5.2 Implementasi Sistem ... 67

5.2.1 Implementasi Sistem Aplikasi Kamus Latin Hewan Dan Tumbuhan ... 67

(16)

xvi

DAFTAR PUSTAKA ... 77 LAMPIRAN

(17)

xvii

Gambar 2.2 Arsitektur Android ... 29

Gambar 2.3 Contoh Use Case Diagram ... 35

Gambar 2.4 Contoh Asosiasi pada Use Case Diagram ... 36

Gambar 2.5. Contoh Extend pada Use Case Diagram... 36

Gambar 2.6 Contoh Includes pada Use Case Diagram ... 37

Gambar 2.7 Contoh Defends On pada Use Case Diagram ... 37

Gambar 2.8 Contoh Inheritance pada Use Case Diagram ... 37

Gambar 2.9 Contoh Class Diagram ... 38

Gambar 2.10 Struktur Kelas Objek ... 39

Gambar 2.11 Activity Diagram ... 39

Gambar 2.12 Contoh Sequence Diagram... 41

Gambar 2.13 Simbol Aktor ... 42

Gambar 2.14 Object ... 42

Gambar 2.15 Pesan... 42

Gambar 2.16 Aktivasi ... 42

Gambar 2.17 Pesan Kembali ... 43

Gambar 2.18 Self Call ... 43

Gambar 2.19 Frame ... 43

Gambar 4.1 Use Case Sistem ... 56

Gambar 4.2 Activity Diagram Kamus Hewan ... 57

Gambar 4.3 Activity Diagram Kamus Tumbuhan ... 58

(18)

xviii

Gambar 4.8 Form menu Utama ... 61

Gambar 4.9 Form Kamus Latin Hewan dan Tumbuhan ... 62

Gambar 4.10 Form Gallery ... 62

Gambar 4.11 Form About Us ... 63

Gambar 4.12 Button Keluar ... 63

Gambar 5.1 Struktur Tabel Hewan dan Tumbuhan ... 64

Gambar 5.2 Tampilan Splash Screen ... 68

Gambar 5.3 Form menu Utama ... 68

Gambar 5.4 Form Kamus Hewan ... 69

Gambar 5.5 Form Kamus Tumbuhan ... 69

Gambar 5.6 Form About Us ... 71

Gambar 5.7 Galery Hewan Dan Tumbuhan ... 72

(19)

xix

Tabel 2.2 Tabel Elemen Activity Diagram ... 40

Tabel 2.3 Simbol Flowchart ... 44

Tabel 3.1 Waktu Penelitian ... 49

Tabel 4.1 Tabel String Teks ... 52

Tabel 4.2 Tabel String Yang Akan Dicari ... 53

Tabel 4.3 Tabel Cara Kerja Algoritma Brute Force ... 53

Tabel 4.4 Spesifikasi Perangkat Keras ... 54

Tabel 4.5 Spesifikasi Perangkat Lunak ... 54

Tabel 4.6 Definisi Aktor ... 56

Tabel 4.7 Use Case ... 56

Tabel 5.1 Table Data Hewan ... 64

Tabel 5.2 Table Data Tumbuhan ... 66

Tabel 5.3 Hasil Pengujian Fungsionalitas ... 73

(20)

1

1.1 Latar Belakang

Kehidupan manusia tidak lepas dengan adanya berbagai macam makhluk hidup lainnya yang berada di alam semesta seperti hewan dan tumbuhan dimana itu semua terdapat dan bisa kita pelajari dalam dunia biologi, selain kita bisa mempelajari seputar siklus hidup, jenis serta ciri-ciri dari makhluk hidup tersebut kita juga bisa mempelajari nama latin makhluk hidup tersebut untuk mengetahui penggolongan ciri dan jenisnya berdasarkan nama latinnya, dalam bahasa ilmiah atau bisa disebut dengan bahasa latin. Tetapi dalam beberapa kasus para siswa sering kali mengalami kesulitan ketika diharuskan untuk mengenal bahkan menghafal nama ilmiah dari hewan dan tumbuhan tersebut.

Teknologi mobile merupakan bagian yang familiar dalam kehidupan masyarakat Indonesia. Hal itu disebabkan ukuranya yang cukup kecil sehingga mudah dibawa dan fungsinya yang memudahkan untuk berkomunikasi setiap saat dan dimana saja. Bahkan hanya komunikasi verbal yang dimungkinkan dengan teknologi ini, teknologi pengaksesan informasi juga mengalami dampak yang positif, pembangunan teknologi telepon seluler beberapa tahun belakangan juga menawarkan potensi untuk pengalaman multimedia yang berkualitas. Ukuran yang kecil dan fungsi yang memudahkan komunikasi dan pengaksesan data merupakan salah satu sebab menariknya dunia mobile untuk terus dieksplorasi dan dikembangkan, termasuk untuk kepentingan edukasi yang bersifat ubiquitos (dimana saja dan kapan saja). Handphone merupakan sebuah sarana telekomunikasi yang efektif. Seiring dengan berjalannya waktu serta berkembangnya dunia informasi dan teknologi, handphone dengan tidak menghilangkan fungsi utamanya bermetamorfosis menjadi perangkat yang multifungsi.

Kemajuan teknologi informasi juga menyebabkan berkembangnya sistem operasi ponsel. Salah satu sistem operasi ponsel yang saat ini sedang banyak digunakan adalah android. Android adalah salah satu platform yang

(21)

diidam-idamkan masyarakat, selain platform Blackberry yang akhir-akhir ini menjadi trend masa kini, yang hampir digunakan oleh semua usia dari yang muda hingga tua. Android adalah kumpulan perangkat lunak yang ditujukan bagi perangkat bergerak mencakup sistem operasi, middleware, dan aplikasi kunci . Dengan adanya aplikasi ini diharapkan masyarakat umum khususnya pelajar akan mempermudah dalam mempelajari bahasa latin hewan dan tumbuhan guna mendukung proses belajar dari pelajaran yang terkait seperti halnya pelajaran ilmu pengetahuan alam & biologi.

Ilmu biologi memiliki karakteristik khusus yang berbeda dengan ilmu lainnya dalam hal objek, persoalan, dan metodenya. Berdasarkan struktur keilmuan menurut BSCS (Biological Science Curriculum Study), biologi mempunyai objek berupa Kerajaan diantaranya dunia hewan, dunia tumbuhan dan protista. Objek yang berjumlah ribuan jenis menjadi kesulitan tersendiri untuk dipelajari. Salah satu hal yang mempermudah dalam belajar biologi adalah pengelompokkan dengan dasar tertentu. Salah satunya dengan pemberian nama ilmiah yang sederhana, mudah dipahami, dan dapat digunakan sebagai alat komunikasi ilmiah diseluruh dunia dalam ilmu biologi. (Martinus, 2008).

Nama ilmiah dari makhluk hidup terutama hewan dan tumbuhan merupakan salah satu hal yang pada dasarnya sangat menarik untuk dipelajari dan diketahui, karena nama ilmiah makhluk hidup memberikan peran penting, antara lain, dengan nama ilmiah maka akan dengan mudah mengetahui ciri-ciri, hubungan kekerabatan, dan interaksi makhluk hidup di lingkungan. Tetapi pada umumnya para siswa terutama bagi mereka yang sedang mempelajari nama ilmiah hewan dan tumbuhan mengalami kesulitan dalam mempelajari nama ilmiah tersebut karena semua menggunakan bahasa latin atau bahasa biologi. Dalam mempelajari tentang nama ilmiah hampir semua masyarakat dan para pelajar pada umumnya tidak menggunakan media bantu, karena memang media yang tersedia kebanyakan hanya berupa buku dan itu tidak semua orang mempunyai buku tersebut. Dan ketidaktersediaan media teknologi informasi yang dapat dengan cepat memberikan informasi tentang nama ilmiah hewan atau tumbuhan membuat para siswa semakin sulit dalam mempelajari nama ilmiah tersebut. Kekurangan

(22)

lainnya dalam mempelajari nama ilmiah hewan ataupun tumbuhan adalah tidak adanya gambar-gambar hewan dan tumbuhan beserta tata namanya. Tidak adanya media yang mendukung inilah semakin membuat para siswa kesulitan untuk mempelajari nama ilmiah hewan dan tumbuhan dan memperoleh informasi tentang bahasa ilmiah dari hewan dan tumbuhan secara cepat dan akurat.

Dari beberapa masalah yang telah dikemukakan tersebut, maka perlu adanya sebuah pembangunan aplikasi yang dapat membantu mengatasi hal tersebut. Ada beberapa metode yang dapat di implementasikan dalam pembangunan aplikasi tersebut salah satunya adalah metode brute force. Dimana metode brute force pendekatan yang lempang untuk memecahkan suatu masalah (straight forward). Brute force biasanya didasarkan pada pernyataan masalah (problem statement) definisi konsep yang dilibatkan. Algoritma brute force memecahkan masalah dengan sangat sederhana, langsung, jelas (obvious way).

Berdasarkan latar belakang yang telah diuraikan maka penulis mengambil judul tugas akhir “Aplikasi Kamus Bahasa Latin Hewan Dan Tumbuhan Menggunakan Metode Brute Force Dan Fitur Autocomplete Berbasis Android”.

1.2 Rumusan Masalah

Berdasarkan latar belakang yang telah diuraikan sebelumnya, maka rumusan masalah dalam pembuatan aplikasi ini adalah bagaimana mengimplementasikan metode brute force untuk pembuatan aplikasi kamus bahasa latin tumbuhan dan hewan sebagai media pembelajaran (khusunya mata pelajaran biologi) berbasis smartphone android.

1.3 Batasan Masalah

Batasan masalah dalam pembuatan aplikasi dalam penelitian skripsi ini yaitu sebagai berikut:

1. Tumbuhan dan hewan yang di masukkan kedalam basis data merupakan hewan dan tumbuhan yang datanya mempunyai sumber yang jelas.

(23)

2. Data-data yang diperoleh untuk mendukung aplikasi bersumber dari buku

“Kamus nomenklatur zoologi dan botani” karya Surawan Martinus dan R. Sapto Hartono serta “Kamus biologi” karya Sastra Adiwijaya dan Drs. Abd. Mutholib Ilyas.

3. Istilah bahasa latin hewan dan tumbuhan yang dimasukkan pada aplikasi akan di kenali apabila istilah tersebut sudah terdapat dalam basis data. 4. Aplikasi ini dibuat untuk menampilkan informasi mengenai bahasa latin

hewan dan tumbuhan.

5. Aplikasi ini berisi nama hewan dan tumbuhan, bahasa latin hewan dan tumbuhan, gambar hewan dan tumbuhan, suara dan teks penjelasan mengenai hewan dan tumbuhan.

6. Aplikasi ini hanya sebatas menampilkan kamus bahasa latin hewan dan tumbuhan dalam bentuk aplikasi mobile berbasis android.

7. Proses pencarian dalam bentuk kata bukan kalimat.

8. Proses pencarian brute force pada kamus membandingkan karakter per karakter dengan posisi dari kiri ke kanan dalam secara berurutan dimulai dari awal teks setelah mengetikkan inputan data yang ingin dicari atau ditampilkan hingga brute force memberitahukan posisi hasil ditemukan atau tidak ditemukan.

9. Aplikasi ini hanya dapat dijalankan pada sistem operasi android dengan minimal versi 2.3 gingerbread sampai 5.0 lollipop.

10.Metode yang di gunakan adalah metode brute force. 11.Menggunakan database SQlite.

12.Bahasa pemrograman yang digunakan bahasa pemrograman android.

1.4 Tujuan Penelitian

Adapun tujuan penelitian skripsi ini adalah merancang aplikasi kamus bahasa latin hewan dan tumbuhan dengan menerapkan metode brute force guna memberikan informasi mengenai nama atau bahsa latin dari hewan dan tumbuhan dalam membantu proses pembelajaran (khusunya mata pelajaran biologi) berbasis

(24)

1.5 Manfaat Penelitian

Manfaat yang diharapkan bisa diperoleh dari penelitian skripsi ini adalah sebagai berikut:

1. Memberi kemudahan bagi pengguna untuk mencari istilah-istilah asing dalam bahasa latin hewan dan tumbuhan.

2. Membantu pembelajaran biologi dan ilmu pengetahuan alam mengenai nama latin hewan dan tumbuhan.

3. Aplikasi kamus bahasa latin hewan dan tumbuhan ini bersifat gratis. Para pengguna bisa menginstalnya di smartphone android guna di pergunakan sebagai media pembelajaran sekaligus informasi mengenai bahasa latin hewan dan tumbuhan dikarenakan kurangnya sumber atau media berupa buku yang tersedia.

4. Mempermudah proses dalam belajar tentang kamus bahasa latin hewan dan tumbuhan kapanpun dan dimanapun tanpa perlu membawa buku.

1.6 Sistematika Penulisan

Sistematika penulisan penelitian skripsi ini adalah sebagai berikut: BAB I PENDAHULUAN

Bab ini menjelaskan mengenai latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini memuat pengertian-pengertian dan teori-teori yang menjadi acuan dalam pembuatan analisa dan pemecahan dari permasalahan yang dibahas.

BAB III METODOLOGI PENELITIAN

Bab ini membahas tentang bagaimana dan seperti apa metodologi yang digunakan dalam melakukan penelitian, mulai dari tahap pengumpulan data sampai pada tahap pengembangan aplikasi.

BAB IV ANALISIS DAN PERANCANGAN

Bab ini berisi gambaran umum dari sistem, pemodelan sistem menggunakan Unified Modelling Language (UML) dan desain interface.

(25)

BAB V IMPLEMENTASI

Bab ini berisi pembahasan mengenai implementasi analisis dan desain ke dalam bahasa pemrograman android dan pengujian aplikasi.

BAB VI PENUTUP

Bab ini berisi kesimpulan dan saran untuk penelitian Tugas Akhir. DAFTAR PUSTAKA

LAMPIRAN

1.7 Tinjauan Pustaka

Berkaca dari berkembangnya teknologi modern, ilmu pengetahuan dan teknologi, beberapa jenis kamus ada di perpustakaan atau yang beredar dibeberapa toko buku dirasa masih kurang dalam memenuhi kebutuhan manusia. Kamus identik dengan buku yang tebal yang sulit di bawa dan kurang praktis dalam menggunakannya. Maka dari itu diperlukan adanya sebuah aplikasi kamus yang lebih praktis yang bisa di akses dimana saja dan kapan pun.

Aplikasi kamus semacam ini sudah pernah dibuat sebelumnya, namun dengan program aplikasi yang berbeda-beda. Beberapa aplikasi yang berhubungan dengan kamus elektronik yang pernah dibuat adalah :

1. Susanto, 2014, Teknik Informatika STMIK Budidarma Medan, judul penelitian ini adalah perancangan aplikasi kamus istilah hewan dan tumbuhan dengan menerapkan algoritma boyer-moore Berbasis mobile. Dalam penelitiannya dideskripsikan mengenai pembangunan aplikasi kamus mobile yang akan memanfaatkan algoritma boyer-moore. Yang merupakan algoritma pencocokan string yang paling efisien pada aplikasi kamus. Dan dirancang menggunakan perangkat lunak bantuan yaitu simulator eclipse IDE (integrated development environment) dengan

database SQLite dalam perancangan tersebut, untuk mengimplementasikan cara kerja dan hasil dari translasi kata istilah latin nama hewan dan tumbuhan tersebut akan dideskripsikan mengenai

(26)

pembangunan aplikasi kamus mobile yang akan memanfaatkan algoritma

boyer-moore. Salah satu dari metode pencarian string matching untuk

mempermudah dan mempercepat pencarian dari nama istilah latin hewan dan tumbuhan. Dimana metode boyer-moore ini melakukan pencarian katanya dimulai dari posisi kanan hingga akhirnya sampai pada posisi paling kiri, langkah ini berbeda dengan metode pencarian string matching sejenisnya yang memulai pencarian kata dari posisi kiri. Metode ini menerapkan prinsip good sufix (dimana karakter yang dicari disejajarkan dengan karakter yang menyerupainya) serta prinsip bad character (dimana jika karakter tidak memiliki kemiripan akan langsung dieliminasi). Dengan kedua prinsip ini, informasi string yang diperoleh dalam pencarian akan semakin banyak sehingga output yang dihasilkan akan menjadi lebih baik. 2. Irna Rahayu, 2015, Teknik Informatika Universitas Halu Oleo, judul

penelitian ini adalah Implementasi kamus kedokteran dengan metode Interpolasi (interpolation) dan mencari kemiripan kata menggunakan algoritma levensthein distance pada perangkat android. Dalam penelitiannya, penulis mencoba membangun aplikasi kamus kedokteran berbasis android. Yang memiliki fungsi sarana terjemahan istilah kedokteran yang dapat digunakan dimanapun dan kapanpun. Algoritma dan metode yang digunakan adalah metode pencarian interpolasi untuk proses pencarian dan algoritma levensthein distance. Dimana metode

interpolatin search hanya dapat dilakukan pada list yang telah berurut dan

berada pada struktur array dan data yang dicari diperkirakan ada dalam

list, teknik ini menemukan item dengan memperkirakan seberapa jauh

kemungkinan item berada dari posisi saat itu dan pencarian berikutnya. Algoritma levensthein distance menghitung jumlah operasi string paling sedikit yang diperlukan untuk mentransformasikan suatu string menjadi

string yang lain. Hasil dari penelitian berupa aplikasi kamus kedokteran

yang dapat menerjemahkan kata dengan cepat dan dapat menampilkan pilihan kata yang dicari tidak di temukan.

(27)

3. Mesran, 2014, Teknik Informatika STMIK Budidarma Medan, judul penelitian ini adalah implementasi algoritma brute force dalam pencarian data katalog buku perpustakaan. Dalam penelitiannya, algoritma yang digunakan yaitu brute force karena algoritma ini dapat digunakan untuk melakukan pencarian string atau teks. Brute force adalah algoritma untuk mencocokkan pattern dengan semua teks antara 0 dan n-m untuk menemukan keberadaan pattern dalam teks. Berdasarkan arah pencariannya, algoritma ini diklasifikasikan sebagai algoritma yang membaca string dari kiri ke kanan. Kesimpulan dari penelitian ini adalah aplikasi pencarian membantu perpustakaan dalam memberikan layanan terhadap pengunjung perpustakaan untuk melakukan pencarian terhadap katalog buku perpustakaan dalam waktu singkat dan dengan Penerapan algoritma brute force dapat melakukan pencocokan string dan memberikan hasil yang di inginkan dalam pencarian data katalog buku perpustakaan.

(28)

9

2.1 Kamus

2.1.1 Pengertian Kamus

Menurut Hoetomo M.A, kamus yaitu buku acuan yang memuat kata dan ungkapan yang biasanya disusun menurut abjad berikut keterangan tentang maknanya. Kamus adalah sejenis buku rujukan yang menerangkan makna kata-kata. Kamus berfungsi untuk membantu seseorang mengenal perkataan baru. Selain menerangkan maksud kata kamus juga mungkin mempunyai pedoman sebutan, asal usul (etimologi) sesuatu perkataan dan juga contoh penggunaan bagi sesuatu perkataan. Untuk memperjelas kadang kala terdapat juga ilustrasi didalam kamus. Kata kamus diserap dari bahasa Arab qamus, dengan bentuk jamaknya

qawamis. Kata Arab itu sendiri berasal dari kata Yunani okeanos yang berarti

lautan. Sejarah kata itu jelas memperlihatkan mana dasar yang terkandung dalam kata kamus, yaitu wadah pengetahuan, khusunya pengetahuan bahasa, yang tidak terhingga dalam dan luasnya. dalam pengertian lain, Kamus adalah buku acuan yang memuat kata dan ungkapan, biasanya disusun menurut abjad beserta penjelasan tentang makna dan pemakainya (Kamus Besar Bahasa Indonesia).

Kamus disusun sesuai dengan abjad dari A-Z dengan tujuan untuk memudahkan pengguna kamus dalam mencari istilah yang diinginkannya dengan cepat dan mudah. Kamus memiliki kegunaan untuk memudahkan penggunanya dalam mencari istilah-istilah yang belum dipahami maknanya.

2.1.2 Jenis-Jenis Kamus 1. Berdasarkan Bahasa Sasaran

Berdasarkan bahasa sasarannya dapat dibedakan adanya kamus ekabahasa (monolingual), kamus dwibahasa (bilingual), dan kamus aneka bahasa (multilingual).

(29)

a. Kamus Ekabahasa

Kamus ekabahasa adalah kamus yang bahasa sumbernya sama dengan bahasa sasarannya. Atau dengan kata lain, kata-kata yang dikamuskan dijelaskan maknanya dengan kata-kata dari bahasa yang sama.

b. Kamus Dwibahasa

Kamus dwibahasa adalah kamus yang bahasa sumbernya tidak sama dengan bahasa sasarannya. dengan kata lain, kata-kata dari bahasa yang dikamuskan dijelaskan dengan kata-kata dari bahasa lain.

c. Kamus Aneka Bahasa

Kamus aneka bahasa adalah kamus yang kata-kata bahasa sumber dijelaskan dengan padanannya dalam tiga bahasa atau lebih.

2. Berdasarkan Ukurannya

Yang dimaksud dengan ukuran di sini adalah tebal-tipisnya sebuah kamus. Tebal-tipisnya tentu berkaitan dengan banyaknya lema yang disajikan dan banyak sedikitnya informasi yang diberikan.

a. Kamus Besar

Kamus besar adalah kamus yang memuat semua kosakata, termasuk gabungan kata, idiom, ungkapan, pribahasa, akronim, singkatan, dan semua bentuk gramatika dari bahasa tersebut, baik yang masih digunakan maupun yang sudah arkais.

b. Kamus Terbatas

Kalau dalam kamus besar semua kata yang ada dalam suatu bahasa didaftarkan sebagai lema, maka dalam kamus terbatas ini jumlah kata yang dimasukkan sebagai lema dibatasi, begitu juga dengan makna dan keterangan-keterangan lain dibatasi. Banyaknya kata yang dijadikan lema tergantung dari tujuan kamus itu. Kedalam kelompok kamus terbatas ini adalah:

1. Kamus saku

Disebut kamus saku atau kamus kantong karena ukurannya yang kecil dan tidak tebal sehingga dapat dimasukkan ke dalam saku baju.

(30)

2. Kamus Pelajar

Kamus pelajar juga merupakan kamus terbatas, yang jumlah lemanya ditentukan oleh tingkat pendidikan dimana kamus itu digunakan.

3. Berdasarkan Isinya

Berikut akan diuraikan kamus-kamus berdasarkan isinya tersebut, yaitu : a. Kamus Lafal

Kamus lafal adalah kamus berisi lema-lema yang disusun dari A sampai Z disertai cara mengucapkan lema-lema tersebut dan tidak ada keterangan lain. b. Kamus Ejaan

Kamus ejaan adalah kamus yang mendaftarkan lema dengan ejaan yang benar, sesuai dengan pedoman ejaan, serta pemenggalan kata atas suku katanya. c. Kamus Sinonim

Kamus sinonim adalah kamus yang penjelasan makna lemanya hanya berupa sinonim dari kata-kata tersebut baik dalam bentuk sebuah kata maupun dalam bentuk gabungan kata.

d. Kamus Antonim

Kamus antonim adalah kamus yang penjelasan lemanya dalam bentuk kata yang merupakan kebalikannya, lawannya, atau kontrasnya.

e. Kamus Homonim

Kamus homonim adalah kamus yang mendaftar bentuk-bentuk yang berhomonim beserta dengan makna atau penjelasan konsepnya. Bentuk-bentuk kata yang berhononim bukanlah sebuah kata, melainkan dua buah kata atau lebih. f. Kamus Idiom

Kamus idiom adalah kamus yang memuat satuan-satuan bahasa berupa kata atau gabungan kata yang maknanya tidak dapat diprediksi dari unsur-unsur pembentuknya, baik secara leksikal, maupun gramatikal

g. Kamus Akronim

Kamus akronim adalah kamus yang hanya memuat singkatan kata dan ada dalam satu bahasa. Setiap lema yang berupa singkatan atau akronim itu hanya dijelaskan dengan kepanjanganya saja.

(31)

h. Kamus Etimologi

Kamus etimologi adalah kamus yang penjelasan lemanya bukan mengenai makna, melainkan mengenai asal-usul kata itu, serta perubahan-perubahan bentuknya.

i. Kamus Istilah

Kamus istilah adalah kamus yang hanya memuat kata-kata atau gabungan kata yang menjadi istilah dalam suatu bidang ilmu atau kegiatan tertentu.

4. Kamus Berdasarkan Bentuknya

Kamus berdasarkan bentuknya ada 2 macam, yaitu : a. Kamus Manual

Kamus manual adalah buku referensi atau rujukan yang menerangkan kata-kata yang dicetak di lembaran kertas. Kamus manual mempunyai beberapa ukuran, yaitu kamus mini atau kamus saku, kamus kecil dan kamus besar (Anonymous, 2005). Pada umumnya kamus manual mempunyai halaman yang banyak (tebal).

b. Kamus Elektronik

Kamus elektronik adalah kumpulan kata-kata yang menerangkan kata-kata lain yang diciptakan dalam bentuk perangkat lunak atau software (Anonymous, 2005). Kamus elektronik dapat diciptakan berbasis handhold adalah :

1. Pencarian padanan kata menjadi lebih cepat dan mudah.

2. Penggunaan lebih efektif, karena bisa diakses melalui jaringan Intranet dan Internet.

3. Isi atau data kamus elektronik dapat ditambah atau dikurangi dengan mudah.

Kamus elektronik lebih mengutamakan pada fasilitas pengolah kata elektronik, yaitu sebuah fasilitas yang memungkinkan aplikasi pengolah kata memeriksa ejaan dari dokumen yang diketik. Hal ini dapat meminimumkan kemungkinan salah eja atau salah ketik. Dinegara-negera maju, pengguna fasilitas pengolah kata elektronik sangat umum, sehingga menjadi salah satu indikator pemilihan terhadap pengolah kata yang hendak dipakai.

(32)

Pengguna kamus elektronik atau kamus digital dalam aplikasi pemrosesan teks merupakan hal yang tidak dapat dihindarkan. Kamus merupakan basis pemeriksaan, basis pengetahuan, bahkan sebagai basis penyelidikan (Rinarizky,2007).

2.2 Bahasa Latin

Bahasa Latin adalah sebuah bahasa Italik yang berasal dari Latium, sebuah daerah di Italia sekeliling kota Roma yang termasuk dalam rumpun Indo Eropa. Bahasa ini menjadi penting karena munculnya kekaisaran Romawi dimana bahasa Latin adalah bahasa resminya. Pada puncak kejayaan kerajaan ini, bahasa Latin dituturkan dari pulau Britania di barat laut sampai Palestina di ujung tenggara dengan kata lain menjadi bahasa Internasional.

Setelah runtuhnya kekaisaran Romawi, sekitar akhir abad ke-5, bahasa Latin tidak ikut runtuh melainkan semakin berkembang. Bahasa ini dipakai sebagai lingua franca, bahasa liturgis gereja dan bahasa ilmu pengetahuan, bahkan juga daerah-daerah yang tidak pernah ditaklukkan oleh Roma.

Bahasa Latin juga mempunyai turunan yang disebut sebagai sermo

vulgaris (bahasa Roman/bahasa Latin Rakyat) yang dituturkan oleh antara lain

bala tentara Romawi menjadi pengantar di seluruh daerah kerajaan. Di beberapa tempat bahasa ini bahkan menggantikan bahasa setempat.

Bahkan bahasa Inggris pun sebagian besar diambil dari bahasa latin ini (selain bahasa Yunani Kuno tentunya). (Susanto, 2015).

2.3 Hewan Dan Tumbuhan 2.3.1 Hewan

Hewan atau binatang atau margasatwa atau satwa saja adalah kelompok organisme yang diklasifikasikan dalam kerajaan Animalia atau Metazoa, adalah salah satu dari berbagai makhluk hidup yang terdapat di alam semesta. Hewan dapat terdiri dari satu sel (uniselular) atau pun banyak sel (multiselular). Semua hewan merupakan organisme heterotrof. (Suroso, 2003).

(33)

2.3.2 Tumbuhan

Tumbuhan adalah organisme benda hidup yang terkandung dalam alam

Plantae. Biasanya, organisme yang menjalankan proses fotosintesis adalah

diklasifikasikan sebagai tumbuhan.Tumbuhan memerlukan cahaya matahari untuk menjalani proses fotosintesis.

Tumbuhan merangkumi semua benda hidup yang mampu menghasilkan makanan dengan menggunakan klorofil untuk menjalani proses fotosintesis dan menghasilkan kanji. Sel tumbuhan berbeda dengan sel hewan, dalam beberapa segi sel tumbuhan mempunyai dinding sel. (Permatasari, 2003).

2.4 Algoritma Brute Force

Algoritma Brute force adalah salah satu cara penyelesaian masalah khususnya di dalam dunia komputer. Brute force adalah sebuah pendekatan yang lempang (straightforward) untuk memecahkan suatu masalah, biasanya didasarkan pada pernyataan masalah (problem statement) dan definisi konsep yang dilibatkan.

Algoritma brute force memecahkan masalah dengan sangat sederhana, langsung dan dengan cara yang jelas (obvious way). Algoritma yang secara jelas langsung ke pusat permasalahan. Algoritma ini biasanya tidak memerlukan teori khusus untuk mengimplementasikannya. Algoritma ini sering juga disebut Algoritma sapu jagad karena hampir semua persoalan pemrograman bisa diselesaikan dengan algoritma ini.

Algoritma brute force sering disebut Algoritma tidak cerdas karena tidak memerlukan pemikiran secara kompleks, hanya dengan beberapa baris semua permasalahan dapat dipecahkan dengan mudahnya. (Munir, 2004).

Sebenarnya, algoritma brute force merupakan algoritma yang muncul karena pada dasarnya alur pikir manusia adalah brute force (langsung/to the

point).

Beberapa karakteristik dari algoritma brute force dapat dijelaskan sebagai berikut:

(34)

1. Membutuhkan jumlah langkah yang banyak dalam menyelesaikan suatu permasalahan sehingga jika diterapkan menjadi suatu algoritma program aplikasi akan membutuhkan banyak memori.

2. Digunakan sebagai dasar dalam menemukan suatu solusi yang lebih efektif.

3. Banyak dipilih dalam penyelesaian sebuah permasalahan yang sederhana karena kemudahan cara berpikirnya.

4. Pada banyak kasus, algoritma ini banyak dipilih karena hampir dapat dipastikan dapat menyelesaikan banyak persoalan yang ada.

5. Digunakan sebagai dasar bagi perbandingan keefektifan sebuah algoritma. Kelebihan dan kelemahan metode brute force adalah sebagai berikut: a. Kelebihan:

1. Metode brute force dapat digunakan untuk memecahkan hampir sebagian besar masalah (wide applicability).

2. Metode brute force sederhana dan mudah dimengerti.

3. Metode brute force menghasilkan algoritma yang layak untuk beberapa masalah penting seperti pencarian, pengurutan, pencocokan string, perkalian matriks.

4. Metode brute force menghasilkan algoritma baku (standard) untuk tugas-tugas komputasi seperti penjumlahan/perkalian n buah bilangan, menentukan elemen minimum atau maksimum didalam tabel (list).

b. Kelemahan:

1. Metode brute force jarang menghasilkan algoritma yang mangkus. 2. Beberapa algoritma brute force lambat sehingga tidak dapat diterima. 3. Tidak sekontruktif/sekreatif teknik pemecahan masalah lainnya.

Dalam praktiknya, algoritma ini sering digunakan untuk teknik hacking atau cracking. Karena mencobai semua kemungkinan, maka bukan tidak mungkin sebuah password dapat dibobol. Kenneth Thompson pernah berkata, "When in

doubt, use brute-force" (jika ragu, gunakan brute force).

Pseudocode algoritma brute force dimulai dengan menentukan panjang

(35)

Hal ini digunakan untuk membatasi proses perulangan. Pada index dimulai dari angka 0 untuk pola dan teks dalam proses penyamaan antara pola dan teks secara satu persatu pola. Pola yang di cari mengalami pergeseran dari posisi awal kiri kemudian masuk ke kanan dalam sampai pola yang di cari sesuai dengan urutan teks yang ada kemudian pola tersimpan, jika pola sudah tersimpan maka index pada pola bergeser dengan membandingkan pola selanjutnya dengan teks selanjutnya sampai ditemukan hasil, jika pola tidak sesuai maka proses perbandingan pola dan teks akan berulang sampai ditemukan hasil yang sesuai, maka hasil akan tampil. kemudian Pencarian akan berakhir. Berikut Pseuducode

brute force:

procedure BruteForceSearch( input m, n : integer,

input P : array[0..m-1] of char, input T : array[0..n-1] of char,

output ketemu : array[0..n-1] of boolean ) Deklarasi: i, j: integer Algoritma: for (i:=0 to m-n) do j:=0

while (j < m and T[i+j] = P[j]) do j:=j+1 endwhile if(j >= m) then ketemu[i]:=true; endif endfor

(36)

Adapun flowchart brute force ditunjukkan pada Gambar 2.1.

Gambar 2.1 Flowchart Brute Force

Gambar 2.1 menjelaskan bahwa pada proses awal ditentukan nama hewan dan tumbuhan yang akan dicari lalu kata pencarian tesebut dijadikan sebagai pola. Nama hewan atau tumbuhan telah tersimpan didalam database sebagai teks. Teks pencarian ini akan diolah sesuai algoritma brute force. Masukkan pola nama hewan dan tumbuhan yang di cari, algoritma brute force akan menyeseleksi dengan menyesuaikan database yang telah di inputkan, jika data yang dicari tidak terdapat dalam database maka tidak akan menampilkan data tersebut, jika data yang di masukkan terdapat dalam database maka data akan tampil untuk menemukan pola nama hewan dan tumbuhan yang ingin dicari secara lengkap maka kita di isyaratkan untuk menambah jumlah pola yang ingin dicari, jika pola

(37)

lengkap yang dicari telah ditemukan maka hasil akan ditampilkan, proses akan berakhir. Begitu pula sebaliknya jika pola lengkap yang diinput tidak terdapat maka hasil yang ditampilkan adalah hasil yang dicari tidak ditemukan maka harus menginput ulang kembali pola dari kata hewan dan tumbuhan yang ingin dicari.

2.5 Kebutuhan Fitur Pada Aplikasi 2.5.1 Fitur Autocomplete

Autocomplete adalah fungsi yang menampilkan perkiraan kata yang akan

dimasukkan tanpa harus mengetikkan keseluruhan kata. Fitur ini juga merupakan salah satu bentuk search yang sering kita jumpai pada saat melakukan pencarian di Google. Autocomplete atau autocompletion atau word completion adalah fasilitas yang disediakan oleh berbagai web browser, email-programs, search

engine interface, source code editors, database query tools, word processor, dan command line interpreters. Autocomplete juga tersedia untuk atau sudah

terintegrasi di dalam text editor.

Autocomplete melibatkan program yang dapat melakukan prediksi

terhadap sebuah kata atau frasa yang pengguna ingin tulis tanpa harus menulis keseluruhan kata atau frasa secara lengkap. Fasilitas/fitur ini efektif ketika proses prediksi itu mudah saat kata yang diprediksi berdasarkan pada kata yang telah ditulis sebelumnya.

Autocomplete bekerja ketika penulis menulis huruf pertama atau beberapa

huruf/karakter dari sebuah kata. Program yang melakukan prediksi akan mencari satu atau lebih kemungkinan kata sebagai pilihan. Jika kata yang dimaksud ada dalam pilihan itu, maka penulis dapat memilih itu. Jika kata yang dimaksud tidak ada dalam pilihan prediksi maka penulis harus menulis huruf/karakter selanjutnya. Ketika penulis memilih pilihan kata yang ada dalam daftar pilihan kata prediksi maka kata yang dipilih tersebut akan disisipkan pada teks.

Dalam source code editor, autocomplete menyederhanakan struktur regular dari sebuah bahasa pemrograman. Biasanya hanya ada sejumlah kata yang berarti dalam konteks saat ini atau namespace, seperti nama dari sebuah variable atau nama dari sebuah fungsi. Contoh dari code completion adalah desain

(38)

IntelliSense dari Microsoft. Dia menampilkan sebuah pop-up list yang berisi

prediksi yang mungkin dari karakter yang dimasukkan oleh pengguna untuk dipilih pengguna yang sesuai dengan apa yang diinginkan pengguna.

Fitur ini sangat berguna dalam pemrograman berorientasi objek karena seringkali programmer tidak tahu secara benar member apa saja yang sebuah class punya. (Kusuma, 2013).

2.6 Java

2.6.1 Pengertian Java

Java adalah bahasa pemograman tingkat tinggi yang berorientasi objek,

diedarkan oleh Sun Microsystem pada awal tahun 1996. Sejarah awal java berawal di tahun 1991 ketika satu group insinyur-insinyur Sun, yang dipimpin oleh Patrick Naughton dan James Gosling, ingin mendesain sebuah bahasa pemograman komputer yang berukuran kecil yang dapat digunakan untuk peralatan elektronika konsumen seperti switchboxes TV kabel. Dikarenakan peralatan-peralatan ini menggunakan konsumsi daya dan memory yang rendah, maka bahasa pemograman tersebut harus berukuran sangat kecil. Juga karena setiap vendor menggunakan CPUs (Central Processing Unit) yang berbeda, maka bahasa tersebut harus bersifat multiplatfrom, tidak terikat hanya pada satu arsitektur (Architecture Neutral). Proyek ini diberi nama Green Project.

Karena harus bersifat Architecture Neutral, maka Green Project menggunakan Virtual Machine (atau dikenal dengan Java Virtual Machine) yang berasal dari model implementasi bahasa Pascal di awal-awal perkembangan PC. Dikarenakan insinyur-insinyur Sun berlatar belakang Unix2, jadi mereka mendasari bahasa pemograman mereka dengan C++ dari pada pascal. Secara khusus mereka membuat bahasa mereka berorientasi obyek (object oriented), bukan berorientasi prosedur (procedural oriented) seperti model bahasa pascal. Bahasa pemograman tersebut dinamakan Oak, kemudian diubah menjadi java.

Karena pada awalnya ditujuan untuk pemograman device kecil, java memiliki karakteristik berukuran kecil, efisien, dan portable untuk berbagai

(39)

tidak memiliki pasar seperti yang diramalkan. Ketika teknologi internet berkembang, java diarahkan untuk menjadi bahasa pemograman internet karena fitur-fitur java seperti Architecture Neutral, real time, reliable dan secure sangat sesuai untuk pengembangan internet. (Widodo, 2011).

2.6.2 Kelebihan Dan Kekurangan Java

Java merupakan pemrograman berorientasi objek dan bebas platform,

dikembangkan oleh Sun Microsystem dengan sejumlah keunggulan yang memungkinkan java dijadikan sebagai bahasa pengembang enterprise. Java merupakan bahasa pemrograman yang bersifat case sensitive yang berarti penulisan menggunakan huruf besar ataupun huruf kecil pada kode program dapat

berarti lain. Misalnya penulisan “System” akan diartikan berbeda dengan “system

oleh interpreter. Disamping kelebihan pemrograman java juga memiliki kekurangan. Berikut ini adalah kelebihan dan kekurangan java :

a. Kelemahan java

Beberapa kelemahan dari java adalah sebagai berikut: 1. Mudah didekompilasi.

Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft, Net Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.

2. Penggunaan memori yang banyak.

Penggunaan memori untuk program berbasis java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

(40)

3. Implementasi J2ME tidak global.

Misalnya, J2ME untuk Motorola dengan J2ME untuk Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia. Setiap produk selalu mempunyai modul tersendiri yang dinilai aneh penerapannya dan harus di-compile dengan modul yang berbeda-beda.

b. Kelebihan Java

Bahasa pemrograman lain yang telah ada sebelum java lahir sudah merupakan bahasa yang baik dan mudah dipelajari oleh programmer profesional. Akan tetapi para programmer ini menginginkan sesuatu yang baru yang memiliki banyak hal yang menyelesaikan masalah mereka. Utamanya adalah keamanan kode mereka. Hal ini melahirkan pikiran yang revolusioner untuk menemukan bahasa pemrograman lain yang disebut java. Tidak hanya keamanan tapi juga beberapa hal yang sering disebut sebagai Java-Buzzwords. Kata-kata ini menjelaskan berbagai fitur tambahan dan beberapa hal yang membuat java demikian sukses dan diterima oleh dunia perangkat lunak. Berikut ini adalah keunggulan-keunggulan dari program java :

1. Platform Independent

Salah satu keunggulan java adalah sifatnya yang platform independence, artinya java baik source program maupun hasil kompilasinya sama sekali tidak bergantung kepada sistem operasi dan platform yang digunakan. Source code sebuah aplikasi dengan bahasa java yang ditulis di atas sistem Windows NT misalnya, dengan gampang dapat dipindahkan ke sistem operasi UNIX tanpa harus mengedit satu baris kode-pun. Ini tentunya merupakan satu nilai tambah tersendiri. Bandingkan dengan bahasa C/C++ misalnya, jika kita bekerja pada

UNIX FreeBSD dan ingin memindahkannya pada HP UNIX, kita terkadang harus

juga mengedit source code-nya sehingga sesuai dengan HP UNIX, walaupun keduanya masih berada dalam keluarga UNIX.

2. Sederhana dan Berorientasi Objek

Java lahir dari suatu pemikiran mendalam akan bahasa pemrograman yang

(41)

profesional untuk dapat mengerti lebih jelas tentang java, fungsionalitas, dan lain

sebagainya apabila ia memiliki pengetahuan dasar tentang C++ dan konsep pemrograman berorientasi objek. Tujuannya agar konsep dasar dari teknologi java dapat dimengerti dengan mudah, dan programmer dapat segera menghasilkan sesuatu sedini mungkin. Tidak hanya ini, penemu Java memastikan bahwa java juga bermula dari bahasa pemrograman dasar yang sudah ada pada saat itu. Kemudian mereka membuang berbagai fitur yang rumit dan membingungkan. 3. Automatic garbage collection

Automatic garbage collection atau pengumpulan sampah otomatis,

memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++) yang dipakai secara luas. Dan fitur ini dapat membersihkan objek yang tidak terpakai dari memori.

4. Menghilangkan pewarisan berganda yang terdapat pada C++

Walaupun kelihatannya lebih sebagai suatu kekurangan, namun banyak para ahli yang mengakui bahasa konsep pewarisan berganda lebih banyak mengakibatkan kerugian dari pada keuntungan. Java telah didesain sedemikian rupa sehingga Anda tidak akan memerlukan teknik ini dalam pembuatan program apa pun.

5. Mengurangi pointer aritmetik

Pengaksesan lokasi memori secara langsung dengan menggunakan

pointer memungkinkan program untuk melakukan suatu tindakan yang tidak

seharusnya atau tidak boleh dilakukan. Untuk mengurangi dan menghilangkan kemungkinan kesalahan seperti ini, penggunaan pointer pada Java telah dibatasi dengan menggunakan reference.

6. Library yang Lengkap

Java terkenal dengan kelengkapan library/perpustakaan (kumpulan

program-program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan

(42)

komunitas java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi. 7. Bersifat OOP (Object Oriented Programming)

Karena bersifat OOP jadi sangat cocok bila digunakan untuk membangun program yang besar. OOP (Object Oriented Programming) yang artinya semua aspek yang terdapat di java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah

program dengan basis java secara cepat, tepat, mudah dan terorganisir. Kelebihan

ini menjadikan java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi-fungsi yang advance seperti komunikasi antara komputer sekalipun. 8. Bergaya C++

Memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke java. Saat ini pengguna java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.

2.6.3 Fitur Java

Fitur-fitur utama dari java yaitu: 1) Mendukung multi threading.

2) Selalu memeriksa tipe object pada saat run-time.

3) Mempunyai automatic garbage collection untuk membersihkan objek yang tidak terpakai di memori.

(43)

2.7 Android

2.7.1 Pengertian Android

Mengacu pada pendapat Nimodia dan Deshmukh (2012), android adalah sebuah software stack untuk perangkat mobile yang mencakup sistem operasi,

middleware dan key applications. Android memiliki platform yang bersifat open source dan sistem operasi untuk perangkat mobile berbasis pada sistem operasi Linux dan dikembangkan oleh Google dan Open Handset Alliance.

Sistem operasi pada android ini berbasis bahasa pemrograman java menggunakan Android Software Development Kit (Android SDK) dan berjalan pada Linux Kernel, dengan middleware, library, Application Programming

Interface (API) yang ditulis dalam bahasa C, dan software yang berjalan pada

suatu kerangka aplikasi dengan menyertakan Java compatible libraries berbasis pada Apache Harmony, yaitu sebuah implementasi java bersifat open source dikembangkan oleh Apache Software Foundation yang terdiri dari Java

Development Kit (JDK), virtual machine dan class library.

Android memiliki beberapa fitur yang mendukungnya, dimana fitur-fitur tersebut terdapat pada perangkat mobile. Fitur-fitur yang mendukung android yaitu (Lee, 2011):

1. Storage

Menggunakan SQLite, mesin database SQL embedded, untuk menyimpan data.

2. Connectivity

Mendukung GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,

Bluetooth, WiFi, LTE, dan WiMAX.

3. Messaging

Mendukung SMS dan MMS. 4. Web browser

Berbasis open-source WebKit, dengan Chrome’s V8 Java Script

engine.

5. Media support

(44)

6. Hardware support

Mendukung hardware: Accelerometer Sensor, Camera, Digital

Compass, Proximity Sensor, GPS.

7. Multi-touch

Mendukung multi-touch screens. 8. Multi-tasking

Mendukung multi-tasking applications. 9. Flash support

Android 2.3 mendukung Flash 10.1. 10. Tethering

Mendukung sharing koneksi internet seperti wireless hotspot.

2.7.2 Sejarah Sistem Android

Google membeli sebuah perusahaan bernama android pada Juli 2005.

Perusahaan tersebut dipimpin oleh beberapa orang yang berpengalaman di dunia mobile. Setelah pengakuisisian oleh Google, perusahaan tersebut menutup diri, kemudian rumor tersebar bahwa Google tengah mengembangkan ponsel. Rumor tersebut akhirnya menjadi kenyataan pada November 2007.

Google tiba-tiba mengumumkan saat itu bahwa mereka memang mengembangkan

sebuah ponsel Google, dan juga sistem operasi mobile baru yang disebut Android. Android didasarkan pada kernel linux dan dirancang untuk digunakan oleh Open Handset Alliance yang terdiri dari sekelompok puluhan pembuat

hardware, carrier dan perusahaan terkait perangkat mobile lainnya.

Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo

Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, di antaranya Andy Rubi, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler.

(45)

Sekitar September 2007 sebuah studi melaporkan bahwa Google mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan

Nexus One, salah satu jenis telepon pintar yang menggunakan android pada sistem

operasinya.

Telepon seluler ini diproduksi oleh HTC Corporation dan tersedia di pasaran pada 5 Januari 2010). Pada tanggal 5 November 2007, Open Handset

Alliance, sebuah konsorsium dari beberapa perusahaan yang termasuk Texas Instruments , Broadcom Corporation, Google, HTC, Intel , LG , Marvell

Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel dan T-Handphone ini diresmikan dengan tujuan untuk mengembangkan standar terbuka untuk perangkat mobile.

Seiring dengan pembentukan Open Handset Alliance, OHA juga meluncurkan produk pertama mereka, android, sebuah perangkat

mobile platform dibangun di atas kernel linux versi 2.6. Pada 9 Desember 2008,

diumumkan anggota baru yang bergabung dalam program kerja Android ARM

Holdings, Atheros Communications, diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc.

Seiring pembentukan Open Handset Alliance, OHA mengumumkan produk perdana mereka, android, perangkat mobile yang merupakan modifikasi kernel

linux 2.6. Sejak android dirilis telah dilakukan berbagai pembaruan berupa

perbaikan bug dan penambahan fitur baru. Telepon pertama yang memakai sistem operasi android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung tahun 2009 diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler yang menggunakan android.

Kelebihan & Kekurangan sistem operasi android :

1. Adapun kelebihan sistem operasi android adalah sebagai berikut :

a. Android ini merupakan sistem operasi opensource karena sistem operasi ini merupakan sistem operasi berbasis linux yang sifatnya opensource sehingga pemilik android ini bisa mengedit tampilan secara sendiri dengan mengubah kode xml.

(46)

b. Aplikasi yang terdapat di playstore merupakan aplikasi yang bagus tetapi dengan banyaknya aplikasi gratis ini membuat kita leluasa mendownloadnya tanpa harus memikirkan pembayaran.

c. Sistem operasi ini sangat mudah kita temukan dan merupakan smartphone sejuta umat karena android ini dibandrol dari harga yang murah sampai harga yang mahal baik karena tergantung produsen pembuat smartphone ini.

d. Fasilitas penuh USB. Anda bisa mengganti baterai, mass storage,

diskdrive, dan USB tethering.

e. Mendukung semua layanan yang ada di Google.

f. Merupakan smartphone terbanyak yang memiliki media sosial. 2. Adapun kekurangannya yaitu adalah sebagai berikut :

a. Banyak aplikasi yang terhubung dengan internet karena jaringan yang ada di Indonesia sangat tidak stabil sehingga mudah membuat baterai habis ataupun membuat smartphone yang kita gunakan selalu panas.

b. Kebanyakan perusahaan tidak menyediakan update ke versi selanjutnya misalnya bagi versi ginggerbread sangat sulit untuk mendapatkan versi diatasnya seperti Ice Cream Sandwich ataupun Jelly Bean.

c. Karena terlalu banyak aplikasi gratis dalam android store membuat kita harus lebih berhati-hati karena kebanyakan para developer memasang

malware terhadap aplikasi yang kita gunakan.

d. Sangat boros baterai karena harus bekerja ekstra untuk menjalankan semua proses yang ada di android.

e. Banyaknya iklan pada aplikasi android.

2.8 Arsitektur Android

Secara garis besar arsitektur android dapat dijelaskan dan digambarkan sebagai berikut (Safaat, 2012: 6):

(47)

a. Application dan Widgets

Application dan widgets adalah layer dimana pengguna berhubungan

dengan aplikasi, yaitu saat melakukan instalasi dan menjalankan aplikasi tersebut.

b. Applications Frameworks

Application framework, yang mencakup program untuk mengatur

fungsi-fungsi dasar smartphone. Application framework merupakan serangkaian tool dasar seperti alokasi resource smartphone, aplikasi telepon, pergantian antar proses atau program, dan pelacakan lokasi fisik telepon.

Komponen-komponen yang termasuk didalam application frameworks adalah sebagai berikut :

a.Views b.Content provider c.Resource manager d.Notification manager e.Activity manager c. Libraries

Libraries adalah layer dimana fitur-fitur android berada, biasanya libraries diakses untuk menjalankan aplikasi. Berjalan di atas kernel, layer

ini meliputi berbagai library C/C++ inti seperti Libe, SSL, dan lain-lain. d. Android Run Time

Layer ini merupakan layer yang membuat aplikasi android dapat

dijalankan dimana dalam prosesnya menggunakan implementasi linux. Dalvik

Virtual Machine (DVM) merupakan mesin yang membentuk dasar kerangka

aplikasi android. Didalam Android Run Time dibagi menjadi dua bagian : a. Core Libraries

Aplikasi android dibangun dalam bahasa java sementara Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga diperlukan sebuah libraries yang berfungsi untuk menterjemahkan bahasa

Java/C yang ditangani oleh Core Libraries.

(48)

b. Dalvik Virtual Machine

Virtual mesin berbasis register yang dioptimalkan untuk

menjalankan fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat linux kernel untuk melakukan threading dan manajemen tingkat rendah.

e. Linux Kernel

Linux kernel adalah layer dimana inti dari operating system dari android

itu berada. Berisi file sistem yang mengatur sistem processing, memory,

resource, drivers, dan sistem operasi android lainnya.

Gambar 2.2 Arsitektur android

2.9 IDE Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment) untuk

mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platformindependent).

Berikut ini adalah sifat dari eclipse: a. Multi-platform

Target sistem operasi eclipse adalah microsoft windows, linux,

Gambar

Gambar 2.1 Flowchart Brute Force
Gambar 2.2 Arsitektur android
Gambar 2.3 Contoh Use Case Diagram
Gambar 2.4 Contoh Asosiasi pada Use Case Diagram  2.  Extends
+7

Referensi

Dokumen terkait

Alhamdulillah puji syukur ke hadirat Allah SWT yang telah melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan skripsi dengan judul “ KADAR

Alhamdulillah, segala puji syukur dipanjatkan ke hadirat Allah SWT atas limpahan rahmat, taufik dan hidayah-Nya sehingga penyusunan Tugas Akhir dapat diselesaikan. Penyusunan

Alhamdulillah, puji syukur ke hadirat Allah SWT yang telah melimpahkan segala rahmat hidayah dan petunjuknya-Nya sehingga penyusun dapat menyelesaikan tugas akhir

Alhamdulillah puji syukur ke hadirat Allah SWT yang telah melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan penyusunan skripsi dengan judul “

Alhamdulillah, segala puji syukur dipanjatkan ke hadirat Allah SWT atas limpahan rahmat, taufik dan hidayah-Nya sehingga penyusunan Tugas Akhir dapat diselesaikan. Tugas Akhir

Alhamdulillah, puji syukur ke hadirat Allah SWT yang telah melimpahkan segala rahmat hidayah dan petunjuknya-Nya sehingga penyusun dapat menyelesaikan tugas akhir

Alhamdullillah, puji syukur penulis panjatkan ke-hadirat Allah SWT yang telah melimpahkan rahmat serta hidayah-Nya sehingga penulis dapat menyelesaikan

Alhamdulillah, segala puji syukur dipanjatkan ke hadirat Allah SWT atas limpahan rahmat, taufik dan hidayah-Nya sehingga penyusunan Tugas Akhir dapat diselesaikan. Tugas Akhir