IMPLEMENTASI ALGORITMA PENCOCOKAN STRING
BOYER-MOORE DALAM PEMBUATAN CONTACT
MANAGER PADA PLATFORM ANDROID
SKRIPSI
MEGO SUNTORO
101401004
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA PENCOCOKAN STRING BOYER – MOORE DALAM PEMBUATAN
CONTACT MANAGER PADA PLATFORM ANDROID.
Kategori : SKRIPSI
Nama : MEGO SUNTORO Nomor Induk Mahasiswa : 101401004
Program Studi : SARJANA (S1) ILMU KOMPUTER Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, 16 April 2015
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Romi Fadillah Rahmat, Bcomp.Sc, MSc Dian Rachmawati, S.Si, M.Kom NIP.198603032010121004 NIP. 198307232009122004
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
IMPLEMENTASI ALGORITMA PECOCOKAN STRING BOYER-MOORE DALAM PEMBUATAN CONTACT MANAGER
PADA PLATFORM ANDROID
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 16 April 2015
PENGHARGAAN
Alhamdulillah. Puji dan syukur kehadirat Allah SWT, yang dengan rahmat dan karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma Pencocokan String Boyer-Moore Dalam Pembuatan Contact Manager Pada Platform Android, penulis menyadari bahwa banyak pihak yang turut membantu, baik dari pihak keluarga, sahabat dan orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, Msc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembanding I dan selaku Ketua Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
4. Ibu Dian Rachmawati, S.Si, M.Kom. selaku Dosen Pembimbing I yang telah memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.
5. Bapak Romi Fadillah Rahmat,Bcomp.Sc,MSc selaku Dosen Pembimbing II yang telah memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.
7. Ayahanda Sumingkir, Ibunda Leginem, Abang dan Kakak Tercinta Sumariono, Suhelmi Daniati, dan Sri rahayu, yang mana telah banyak memberikan kasih sayang, semangat, serta dorongan kepada penulis.
8. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi Informasi USU.
9. RHF yang selama ini telah menjadi keluarga kedua penulis selama mengikuti perkuliahan, tempat berbagi suka dan duka dalam pengerjaan skripsi ini, kepada Ali Huseini, Andri Agasi, Arief Try Hidayat, Dani Rizki, Suhaili Hamdi, Safriatullah, M.Khairil, M.Pristian, Sobirin, Gunalan, Fadli Herdika, Ivan Grace Halim, Yohanes Silitonga.
10.Teman-teman kuliah, khususnya Muhammad Reza Nasution, Dwi Rizki Ananda, Ahmad Rasydi, Umri Herdiansyah, Rudiansyah, Wahyu Eko Putra dan Novri Pramana, Hayatun Nufus, serta Stambuk 2010 yang tidak dapat disebut satu-persatu, yang telah banyak membantu dalam selesainya pengerjaan skripsi ini.
11.Rekan-rekan pengurus IMILKOM (Ikatan Mahasiswa S1 Ilmu Komputer) Fasilkom-TI 2013-2014 yang telah memberikan banyak dukungan, tempat belajar berorganisasi yang benar, dan menimba pengalaman.
12.Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis ucapkan satu demi satu yang telah membantu penyelesaian laporan ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.
Medan, 16 April 2015 Penulis,
ABSTRAK
Kebutuhan masyarakat terhadap layanan teknologi berbasis IT sangat bervariasi, penyimpanan serta pencarian identitas dengan cepat dan mendetail adalah salah satu kebutuhan tersebut, namun disamping itu masih jarang ditemukan aplikasi mobile yang dapat memenuhi kebutuhan tersebut, maka dibuatlah sebuah aplikasi contact manager yang menerapkan algoritma Boyer-Moore sebagai masalah pencariannya dan database SQLite sebagai penyimpanan data contact. Algoritma Boyer-Moore
menerapkan prinsip good suffix dimana karakter yang dicari sejajar dengan karakter yang menyerupainya serta prinsip bad character dimana jika karakter tidak memiliki kemiripan maka langsung dieliminasi. Field yang dipakai dalam pencarian ini adalah nama contact, dengan memasukan nama sebagai inputannya dalam pencarian, kemudian kita dapat mengetahui data yang mendetail dari nama tersebut. Hasil dari aplikasi ini menampilkan keseluruhan pattern yang match dengan teks, dengan kecepatan pencarian 0,9 detik.
THE IMPLEMENTATION OF BOYER-MOORE STRING MATCHING TO MAKE 'CONTACT MANAGER' IN ANDROID PLATFORM
ABSTRACT
The needs for IT-based technology is varied, Storing and fast detailed-identity search is one of the needs. But mobile application is hard to find, to solve this problem this contact manager application is built, using Boyer - Moore algorithm as the searching problem and SQLite as the contact data storage. Boyer - Moore uses good suffix principle which the searched-character has similarity with the stored - character and bad suffix principle will eliminated the character which has no similarity with any stored character. The field used in this process is contact name, the users use name as input in searching process, then detailed-data from the stored-name will be found. The result from this application is the whole pattern which is match with the text, with searching speed is 0.9 s.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak vi
Abstract vii
Daftar Isi viii
Daftar Tabel x
Daftar Gambar xi
Daftar Lampiran xii
Bab 1 Pendahuluan
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metodologi Penelitian 4 1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori
2.1 Android 6
2.2 Sejarah Android 6
2.3 Versi-versi Android 7 2.3.1 Android versi 1.1 7
2.5 Struktur Data dan Algoritma 10 2.6 Algoritma Boyer-Moore 11 2.6.1 Kelebihan Algoritma Boyer-Moore 11 2.6.2 Kelemahan Algoritma Boyer-Moore 12 2.6.3 Pencarian Dengan Algoritma Boyer-Moore 13
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Sistem 19
3.1.1 Analisis Masalah 19 3.1.2 Analisis Persyaratan 20 3.1.2.1 Kebutuhan Fungsional 20 3.1.2.2 Kebutuhan Non Fungsional 21
3.1.3 Pemodelan 21 3.2 Perancangan Sistem 28
3.2.1 Menu Utama 28
3.2.2 Menu New Contact 29 3.2.3 Menu Edit Contact 30 3.2.4 Menu View Contact 31 3.2.5 Menu Navigation 32
3.2.6 Menu Help 34
3.2.7 Menu About 35
Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi 37
4.1.1 Implementasi Algoritma Boyer-Moore 37
4.2 Antarmuka Sistem 42
4.2.1 Menu Utama 42
4.2.2 Menu New 43
4.2.3 Menu View 44
4.2.4 Menu Edit 45
4.2.5 Menu Navigation 46 4.2.6 Menu Help dan About 56
4.3 Pengujian 47
4.3.1 Pengujian Dengan Algoritma Boyer-Moore 48 4.3.2 Pengujian Proses Tambah Data 50 4.3.3 Pengujian Proses Edit Data 51
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 52
5.2 Saran 52
Daftar Pustaka 54
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
2.1
Contoh Pergeseran Algoritma Boyer-Moore
Occurence Heuristic
Hasil pencarian Occurence Heuristic Hasil akhir pencarian Occurence Heuristic Match Heuristic
Hasil akhir pencarian Match Heuristic
Nilai Occurence Heuristic dan Match Heuristic
Use Case Pencarian data contact dengan Algoritma Boyer-Moore Use Case Proses Pencarian
Use Case Proses Hasil Kamus Data
Keterangan gambar rancangan interface Menu Utama Keterangan gambar rancangan interfaceNew Contact
Keterangan gambar rancangan interfaceMenu Edit Contact
Keterangan gambar rancangan interfaceMenu View Contat
Keterangan gambar rancangan interface Menu Navigation
Keterangan gambar rancangan interface Menu Help
Keterangan gambar rancangan interface Menu About
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Contoh Algoritma Boyer-Moore
Hasil Pencarian Data Contact dengan Algoritma Boyer-Moore
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
3.1
Use Case Diagram Sistem
Activity Diagram Sequence Diagram
Flowchart Algoritma Boyer-Moore
Rancangan Interface Menu Utama Rancangan InterfaceNew Contact
Rancangan Interface Menu Edit Contact
Rancangan Interface Menu View Contact Rancangan Interface Menu Navigation
Rancangan Interface Menu Help
Rancangan Interface Menu About
DAFTAR LAMPIRAN
Halaman
Listing Program 56