IMPLEMENTASI ALGORITMA APOSTOLICO-CROCHEMORE PADA APLIKASI KUMPULAN HADITS SHAHIH
BERBASIS ANDROID
SKRIPSI
DEWI ZAHRA 121401087
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA APOSTOLICO- CROCHEMORE PADA APLIKASI KUMPULAN HADITS SHAHIH BERBASIS ANDROID
Kategori : SKRIPSI
Nama : DEWI ZAHRA
Nomor Induk Mahasiswa : 121401087
Program Studi : SARJANA (S1) ILMU KOMPUTER Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Oktober 2016 Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001 Dr. Maya Silvi Lydia, B.Sc, M.Sc NIP. 19740127 200212 2 001
PERNYATAAN
IMPLEMENTASI ALGORITMA APOSTOLICO-CROCHEMORE PADA APLIKASI KUMPULAN HADITS SHAHIH
BERBASIS ANDROID
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 31 Agustus 2016
PENGHARGAAN
Alhamdulillah, segala puji bagi Allah subhanahu wa ta‟ala, yang dengan izin dan pertolongan-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. Shalawat dan salam semoga dilimpahkan kepada Rasulullah shallallahu „alaihi wa sallam, para sahabatnya, dan orang-orang yang mengikuti petunjuknya sampai hari kiamat.
Dalam pengerjaan skripsi dengan judul Implementasi Algoritma Apostolico-Crochemore Pada Aplikasi Kumpulan Hadits Shahih Berbasis Android, penulis menyadari bahwa banyak pihak yang turut membantu serta memberikan motivasi. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Ayah, Ibu, Mas Ahsan Ridwana, Mbak Humaira dan Mas Ahmad Setyadi tercinta yang telah meberikan kasih sayang, do‟a dan semangat tiada hentinya, sehingga skripsi ini dapat diselesaikan.
2. Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara. 3. Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
4. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.
5. Prof. Dr. Iryanto, M.Si selaku Dosen Pembimbing I yang telah memberikan kritik dan saran serta nasihat dalam pengerjaan skripsi ini.
6. Ibu Dr. Maya Silvi Lydia, B.Sc, M.Sc selaku Dosen Pembimbing II yang telah memberikan kritik dan saran serta perhatian dalam pengerjaan skripsi ini.
7. Prof. Dr. Muhammad Zarlis selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam pengerjaan skripsi ini.
8. Bapak Dr. Syahril Efendi, S.Si, MIT selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam pengerjaan skripsi ini.
10.Semua dosen dan seluruh pegawai di Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
11.Teman-teman CKR, RPG, dan ZazuneShop yang telah menjadi keluarga kedua penulis selama mengikuti perkuliahan, kepada Dian Sartini, Nurhaliza Nasution, Novi Nuryanti Azharia, Neno Rama Dhianita, Zuhru Finty, Nurmardiah Siregar, Vici Indah Yana, Evelin Silvana Carolina Sinaga, Novita Permata Dewi, dan memberikan inspirasi iman kepada penulis.
13.Johan Surya yang telah memberikan banyak bantuan, Mustafa Ahmad Reza, Siti Khadijah, Juwita P. Pasaribu, Nanda, teman kelas KOM-B dan teman-teman satu stambuk 2012 yang telah memberikan dukungan serta membantu dalam pengerjaan skripsi ini.
14.Rekan-rekan pengurus UKMI Al-Khuwarizmi, dan DPW KAM-Rabbani Fasilkom-TI yang telah memberikan banyak kontribusi yang bermanfaat, tempat belajar berorganisasi, serta tempat menimba pengalaman dan ilmu agama Islam. 15.Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu karena keterbatasan penulis.
Semoga Allah subhanahu wa ta‟ala melimpahkan berkah dan hidayah-Nya kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.
Medan, 13 September 2016 Penulis,
ABSTRAK
Hadits merupakan perkataan, perbuatan, ketetapan dan persetujuan dari Nabi Muhammad shallallahu „alaihi wa sallam yang dijadikan sebagai sumber hukum Islam kedua setelah Al-Qur‟an. Mempelajari hadits adalah salah satu hal yang sangat penting dalam Islam. Hadits yang dapat dijadikan panduan adalah hadits yang diyakini kebenarannya. Salah satu hadits yang paling diyakini kebenarannya adalah hadits shahih. Hadits shahih dapat ditemukan di dalam kitab-kitab hadits shahih seperti Shahih Al-Bukhari, Shahih Muslim, dan kitab ahli hadits abad ini yang di susun oleh Syaikh Al-Albani. Kitab-kitab tersebut sangat tebal dan berat untuk dibawa kemana saja. Dan dengan hadits yang begitu banyak, pencarian hadits atau kata yang dilakukan secara manual cukup menyulitkan. Untuk mempermudah setiap orang dalam mencari hadits shahih, maka dibuatlah aplikasi kumpulan hadits shahih berbasis android dengan mengimplementasikan algoritma Apostolico-Crochemore ke dalam sistem pencariannya. Algoritma Apostolico-Crochemore menggunakan tabel fungsi pinggiran kmpNext yang berasal dari Algoritma Knuth-Morris-Pratt untuk menghitung fungsi pinggiran yang mengindikasikan pergeseran x terbesar yang mungkin terjadi pada pattern x sebelum melakukan proses pencarian pada teks y. Penerapan algoritma Apostolico-Crochemore ini menghasilkan kemudahan pengguna smartphone yang bersistem operasi android dalam mencari hadits yang terdapat pada
aplikasi kumpulan hadits shahih berbasis android. Dalam algoritma Apostolico-Crochemore, semakin banyak huruf yang memiliki persamaan dalam sebuah pattern
maka itu tidak berpengaruh pada kecepatan proses pencarian pattern dalam teks karena jumlah perbandingannya adalah sama dengan pattern yang memiliki huruf yang sedikit persamaannya.
THE IMPLEMENTATION OF APOSTOLICO-CROCHEMORE ALGORITHM IN APPLICATION OF SAHEEH HADITH COLLECTION
BASED ON ANDROID
ABSTRACT
Hadith is the words, actions and approvals of the Prophet Muhammad shallallaahu 'alaihi wa sallam which is the second source of Islamic law after the Al-Qur'an. Learning the hadith is one thing that is very important in Islam. Hadith that can be used as a guide is hadith believed to be the truth. One of the most believed to be the truth hadith is saheeh hadith. Saheeh hadith can be found in the books of saheeh hadits such as Saheeh Al-Bukhari, Saheeh Muslim, and the book of hadith scholars of this century who collated by Shaykh al-Albani. The books are very thick and heavy to take anywhere. Searching the word of hadith manually is something troublesome, because there are so many hadith. In order to facilitate everyone in search of saheeh hadith, then made an application of saheeh hadith collection based on android by implementing the algorithm Apostolico-Crochemore into its search system. Apostolico-Crochemore algorithm uses the kmpNext shift table that derived from Knuth-Morris-Pratt algorithm to compute the shifts of the largest possible shift x occurs in pattern x before do the search process in the text y. Implementation of Apostolico-Crochemore algorithm in application saheeh hadith collection based on android can help smartphone with android operating system user to search the word of hadith in the application of saheeh hadith collection based on android. In Apostolico-Crochemore algorithm, the more letters having similarities in a pattern, then it did not influence his speed the search pattern in the text because the number of a comparison is similar with pattern that have the letters with little similarities.
DAFTAR ISI
2.2. Pengertian Aplikasi 5
2.3. Pengertian Android 5
2.4. Pengertian Algoritma 6
2.4.1. Algoritma String Matching (pencocokan string) 7 2.4.2. Algoritma Apostolico-Crochemore 7
2.5. Penelitian Yang Relevan 10
Bab 3 Analisis Dan Perancangan
3.1. Analisis Sistem 11
3.1.1. Analisis Kebutuhan Sistem 11
3.1.2. Pemodelan 12
3.2. Perancangan Sistem 19
3.2.1. Menu Utama 19
3.2.2. Menu Navigation 20
Bab 4 Implementasi Dan Pengujian
4.1. Implementasi 23
4.1.1. Implementasi Algoritma Apostolico-Crochemore 24
4.2. Antarmuka Sistem 28
4.2.1. Menu Utama 29
4.2.3. Menu Help dan Menu About 30
4.2.4. Menu Semua Hadits 31
4.3. Pengujian 31
4.3.1. Pengujian Pencarian Kata dengan Algoritma Apostolico-
Crochemore 31
Bab 5 Kesimpulan Dan Saran
5.1. Kesimpulan 33
5.2. Saran 33
Daftar Pustaka 34
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
2.1. Fungsi pinggiran kmpNext pada pattern x = G C A G A G A G 9 3.1. Skenario usecase input kata 13 3.2. Skenario usecase pencarian menggunakan algoritma
Apostolico-Crochemore
13
3.3. Skenario usecase hasil pencarian 14 3.4. Keterangan gambar 3.6. rancangan desain interface Menu
Utama
20
3.5. Keterangan gambar 3.7. rancangan desain interface Menu Navigation
21
3.6. Keterangan gambar 3.8. rancangan desain interface Menu About(1) dan Help(2)
22
4.1. Fungsi pinggiran kmpNext pada pattern x 24 4.2. Fungsi pinggiran kmpNext pada pattern x 26 4.3. Hasil Pencarian Kata dengan Algoritma
Apostolico-Crochemore
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
2.1. Pembandingan dengan algoritma Apostolico-Crochemore memperhatikan (i, j, k).
8
3.1. Use Case Diagram System 12
3.2. Activity Diagram 15
3.3. Sequence Diagram 15
3.4. Flowchart Preprocessing (Fase Proses Awal) 16 3.5. Flowchart Fase Pencarian String 17 3.6. Rancangan desain Interface Menu Utama 19 3.7. Rancangan desain Interface Menu Navigation 21 3.8. Rancangan desain Interface Menu About(1) dan Help(2). 22
4.1. Diagram Ishikawa 23
4.2. Tampilan contoh pencarian kata “umar” 28
4.3. Tampilan menu utama 29
4.4. Tampilan menu navigation 30
4.5. Tampilan menu help 30
DAFTAR LAMPIRAN
Halaman
Listing Program 37