SINTECH JOURNAL | ISSN 2598-7305 | E-ISSN 2598-9642
Vol. 4 No 1 – April 2021 | [Link]
DOI: [Link]
Publishing: LPPM STMIK STIKOM Indonesia
IMPLEMENTASI STRING MATCHING DENGAN ALGORITMA BOYER-
MOORE UNTUK MENENTUKAN TINGKAT KEMIRIPAN PADA PENGAJUAN
JUDUL SKRIPSI/TA MAHASISWA (STUDI KASUS: UNIVERSITAS XYZ)
Imam Ahmad 1, Rohmat Indra Borman 2*, Gavan Gorbi Caksana 3, Jafar Fakhrurozi 4
1,4
Sistem Informasi, Universitas Teknokrat Indonesia
2
Sistem Informasi Akuntansi, Universitas Teknokrat Indonesia
3
Informatika, Universitas Teknokrat Indonesia
Fakultas Teknik dan Ilmu Komputer, Universitas Teknokrat Indonesia
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Indonesia
e-mail: imamahmad@[Link].id1, rohmat_indra@[Link] 2,
gavangorbicaksana26@[Link] 3, [Link]@[Link] 4
Received : October, 2020 Accepted : November, 2020 Published : April, 2021
Abstract
In determining the research topic as well as the title for the Thesis / TA, it is conceivable that there will
be a likeness in the title between one understudy and another, whether intentionally or unintentionally.
For this reason, the Study Program must check the titles submitted by students, so as to avoid
plagiarism. Endeavors that can be made to make it simpler to check the Thesis title are by performing
string matching on the text on the title that will be submitted by students. A string matching algorithm
that can be used is Boyer-Moore. Boyer-Moore, who matched starting from the rightmost character then
left based on the value of the occurrence heuristic (HO) and match heuristic (MH) in determining shift.
This study produced a system that was able to determine the similarity of the proposed thesis title based
on the title repository has been there. From the results of testing the processing time by entering 100
and its multiples show that the Boyer-Moore algorithm is able to match quickly. The results also showed
that the more data the more time it took, but the average increase in time only increased by 34%.
Keywords: boyer-moore, thesis, string matching
Abstrak
Dalam menentukan topik penelitian maupun judul untuk Skripsi/TA akan dimungkinkan terjadi
kemiripan judul antara mahasiswa satu dengan yang lain baik secara disengajaja maupun tidak sengaja.
Untuk itu, Program Studi harus melakukan pengecekan terhadap judul yang diajukan oleh mahasiswa,
sehingga dapat menghindari plagiat. Upaya yang dapat dilakukan dalam mempermudah pengecekan
judul Skripsi/TA yaitu dengan pencocokan string matching pada teks pada judul yang akan diajukan oleh
mahasiswa. Algoritma string matching yang dapat digunakan adalah Boyer-Moore. Boyer-Moore yang
melakukan pencocokan dimulai dari karakter paling kanan kemudian kekiri berdasarkan nilai dari
occurence heuristic (HO) dan match heuristic (MH) dalam menentukan pegeseran.. Penelitian ini
menghasilkan sistem yang mampu menentukan kemiripan dari usulan judul Skripisi/TA berdasarkan
repository judul yang telah ada. Dari hasil pengujian waktu proses dengan memasukan 100 dan
kelipatanya menunjukkan bahwa algoritma Boyer-Moore mampu mencocokan dengan cepat. Hasil
penelitian juga menunjukan semakin banyak data semakin bertambah waktu yang dibutuhkan akan
tetapi rata-rata peningkatan waktu hanya bertambah 34%.
Kata Kunci: boyer-moorel, skripsi, string matching
SINTECH Journal | 53
1. PENDAHULUAN yang dicocokkan memiliki kesamaan dari
Skripsi/Tugas Akhir (TA) merupakan istilah yang jumlah urutan dan struktur katanya [5]. Salah
digunakan di Indonesia untuk menyebut karya satu pendekatan exact string matching yang
tulis ilmiah mahasiswa jenjang Strata-1 (S1) dan efisien dapat melakukan perbandingan pattern
Diploma-3 (D3). Skripsi/TA memuat hasil adalah Boyer-Moore [6]. Algoritma memiliki ide
penelitian guna membahas suatu dasar yaitu mencocokkan dan memindai pola
permasalahan di bidang ilmu tertentu [1]. string dari kanan ke kiri mulai dari karakter
Tujuan penyusunan Skripsi/TA pada dasarnya paling kanan dari string yang akan dicari [5][7].
adalah untuk membentuk mahasiswa untuk Dalam beberapa penelitian algoritma Boyer-
mendapatkan sikap dan mental ilmiah, serta Moore menunjukan kinerja yang baik dalam
mengasah kemampuan dalam menerapkan pencocokan string. Pada penelitian analisa
ilmunya dalam menyelesaikan permasalahan dengan membandingkan Boyer-Moore dan
dalam dunia nyata [2]. Sebelum membuat Knuth Morris Pratt (KMP) untuk melakukan
karya ilrniah dalarn bentuk Skripsi/TA, pencarian judul buku, menunjukksn bahwa
mahasiswa harus membuat usulan judul algoritma Boyer-Moore lebih cepat dalam
penelitian untuk diajukan dengan memaparkan melakukan pencarian dan pencocoka string
topik penelitian. Di Universitas XYZ, untuk dibandingkan dengan algoritma KMP [8]. Selain
pengajuan judul Skripsi/TA diajukan melalui itu, terdapat penelitian yang membandingkan
form pengajuan judul dengan mengisi topic, penerapan Boyer-Moore, Turbo Boyer-Moore,
judul dan paparan singkat Skripsi/TA yang akan dan Tuned Boyer-Moore untuk mecari kata,
diajukan. menunjukkan pendekatan Boyer-Moore
Dalam menentukan topik penelitian maupun menghasilkan waktu tercepat dibandingkan
judul untuk Skripsi/TA akan dimungkinkan dengan tiga jenis Boyer-Moore lainya [9].
terjadi kemiripan judul antara mahasiswa satu Penelitian yang lain, tentang pengembangan
dengan yang lain baik secara disengajaja software kamus untuk istilah kedokteran
maupun tidak sengaja. Untuk itu Program Studi dengan menerapkan Boyer-Moore,
harus melakukan pengecekan terhadap judul menunjukkan bahwa algoritma Boyer-Moore
yang diajukan oleh mahasiswa, sehingga dapat mampu menampilkan hasil pencarian istilah
mengambil keputusan untuk menerima dengan cepat [10].
ataupun menolak didasari dengan salah Pada penelitian ini akan dikembangkan aplikasi
satunya adalah judul skripsi apakah sudah ada menentukan tingkat kemiripan pada pengajuan
atau mirip, agar tehindar dari indikasi adanya judul Skripsi/TA mahasiswa dengan
kesamaan judul dan adanya plagiasi. Judul yang menerapkan string matching menggunakan
diajukan mahasiswa setiap semesternya sangat algoritma Boyer-Moore. Aplikasi dilengkapi
banyak, untuk itu perlu ketelitian dan upaya dengan persentase jumlah kemiripan judul
yang lebih untuk melakukan pengecekan dibandingkan dengan judul sebelumnya. Selain
kemiripan judul. Pengecekan dengan manual itu, pada penelitian ini data patern yang
akan membutuhkan waktu dan tenaga yang digunakan untuk pencocokan string diambil
lebih. Upaya untuk membantu dalam dari database repository Universitas XYZ.
pengecekan judul Skripsi/TA adalah dengan
menerapkan string matching atau pencocokan 2. METODE PENELITIAN
kata pada teks pada judul yang akan diajukan Untuk melakukan pengembangan sistem dalam
oleh mahasiswa. menentukan kemiripan pada pengajuan
String matching merupakan proses pencarian Skripsi/TA, pada penelitian ini menggunakan
sebuah string yang terdiri dari pattern pendekatan metodologi pengembangan sistem
terhadap karakter pada teks yang dicari [3][4]. Extreme Programming (XP). Extreme
Dalam pencocokan string terdapat dua programming (XP) merupakan metodologi yang
pendekatan yaitu exact string matching dan fokus pada pengkodean yang merupakan
inexact string matching. Pendekatan yang aktivitas utama dalam semua tahapan atau
digunakan delam penelitian ini adalah exact siklus pengembangan sistem [11]. XP
string matching, karena pendekatan ini menawarkan tahapan yang membutuhkan
digunakan untuk mencocokkan kata dengan waktu yang cepat dan dapat diulangi pada
tepat yang melibatkan struktur karakter teks bagian yang berbeda sesuai dengan fokus
54 | SINTECH Journal
tujuan pengembangan sistem [12]. Berikut ini menerapkan algoritma Boyer-Moore dalam
tahapan-tahapan XP dalam pengembangan pencocokan kemiripan dari judul Skripsi/TA
sistem yang dilakukan. yang diajukan oleh mahasiswa. Sistem
DESIGN diimplementasikan dalam bentuk web untuk
backend dan android untuk akses frontend.
PLANNING
CODING 4) Testing (Pengujian)
Untuk menegaskan software dapat bekerja
TESTING dengan baik maka sistem harus melalu tahap
SOFTWERE
INCEREMENT
pengujian untuk menemukan kesalahan –
AL
kesalahan [17]. Pengujian atau testing yang
diterapkan adalah uji terhadap waktu yang
Gambar 1. Tahapan Pada Extreme Programming (XP) dibutuhkan oleh aplikasi untuk memproses dan
(Sumber: Suryantara, 2017 [13]) mendapatkan hasil presentase kemiripan.
Berdasakan gambar 1 diatas, maka tahapan
3. HASIL DAN PEMBAHASAN
yang dilakukan pada metodologi
3.1. Flowchart Alur Sistem
pengembangan sistem XP adalah sebagai
Untuk mempermudah dalam menggambarkan
berikut :
urutan proses yang dilakukan pada
1) Planning (Perencanaan)
imepementasi algoritma Boyer-Moore untuk
Langkah awal yang dilakukan adalah
mengetahui tingkat kemiripan judul Skripsi/TA
perencanaan, yaitu dengan memahami alur
maka alur cara kerja sistem digambarkan
proses dari aplikasi, mendefinisikan output,
dengan flowchart. Flowchart alur sistem yang
fitur-fitur yang ada pada aplikasi, fungsi dari
akan dikembangan dapat dilihat pada gambar 2
aplikasi, dan alur pengembangan dari aplikasi
berikut ini:
yang akan dikembangkan [14][19]. Selain itu
pada tahap perencanaan juga terdapat tahapan
dimana pengembang menentukan
fungsionalitas keseluruhan dari sistem
[15][20][21]. Pada penelitian ini permasalahan
yang ada pada Universitas XYZ adalah proses
pengecekan judul yang diajukan oleh
mahasiswa apakah terdapat kemiripan atau
indikasi plagiasi dari judul Skripsi/TA yang
sebelumnya. Dari permasalahan tersebut
kebutuhan utama dari aplikasi yang akan
dibangun adalah sistem memiliki kemampuan
menentukan tingkat kemiripan judul
berdasarkan database repository artikel ilmiah
pada Universitas XYZ.
2) Design (Perancangan)
Setelah perencanaan telah disusun, berikutnya
adalah membuat perancangan sistem. Pada
penelitian ini perancangan sistem
menggunakan flowchart, yang meruapakan alat
yang digunakan untuk menggambarkan langkah
dan urutan prosedur dari suatu program.
3) Coding (Pengkodean)
Coding atau pengkodean merupakantahapan
dimana, rancangan yang telah dibuat kemudian
diterjemahkan dalam bentuk bahasa
pemrograman yang dikenali oleh komputer
[16]. Sistem dikembangkan dengan
SINTECH Journal | 55
Gambar 2. Flowchart Alur Sistem sama dengan pattern. Pergeseran berakhir
(Sumber: Desain Penulis, 2020) pada tahap ketiga karena telah menemukan
3.2. Implementasi Algoritma Boyer-Moore kesamaan, dapat dilihat pada tabel 4.
Algoritma Boyer Moore memiliki cara kerja Tabel 4. Pencocokan Dengan 1 Langkah Pegeseran
dengan melakukan matching atau pencocokan (Sumber: Penulis, 2020)
antara pattern dan text dengan memperhatikan Index 0 1 2 3 4 5 6 7 8 9 10 11 12
urutan yang dimulai dari karakter paling kanan Text S I S T E M O N L I N E
terlebih dahulu kemudian kekiri, dimana Pattern O N L I N E
pencocokan dilakukan dengan dasar nilai dari
occurence heuristic (HO) dan match heuristic 3.3. Penerpanan Sistem
(MH) [8][18]. Sebagai contoh penerpan Algoritma Boyer-Moore diterapkan dalam
algoritma Boyer-Moore dalam menentukan bahasa pemrograman untuk pengembangan
tingkat kemiripan judul Skripsi/TA dengan sistem penentuan tingkat kemiripan Judul
menggunakan kata “ONLINE” sebagai string Skripsi/TA di Universitas XYZ. Sistem yang akan
pattern dan kata “SISTEM ONLINE”. dikembangkan terdapat dua pengguna, yaitu
Tabel 1. Nilai Occurence Heuristic (OH) admin dan pengguna. Admin dapat mengakses
dan Match Heuristic (MH) melalui backend yang dibagun berbasis web.
(Sumber: Penulis, 2020) Admin dapat mengelola judul dari Skripsi/TA
Pattern O N L I N E yang sebelumnya dengan meng-inport dari
OH 5 4 3 2 1 0 repository Universitas XYZ.
MH 5 5 5 5 5 1
Pada tahap pertama, untuk pencocokan string
karakter “E” pada pattern tidak ada kecocokan
dengan karakter “M”, sehingga akan bergeser
nilainya berdasarkan tabel Occurence Heuristic
(OH) dan Match Heuristic (MH) pada tabel 1.
Pada tabel OH dan MH karakter “M” tidak ada,
maka jumlah pergeseran dilakukan sebanyak 6
Gambar 3. Tampilan Pengelolaan Judul
langkah, tahapan ini ditunjukkan pada tabel 2.
(Sumber: Aplikasi Yang Dikembangkan Penulis, 2020)
Tabel 2. Pencocokan Text dan Pattern
(Sumber: Penulis, 2020) Sedangan pengguna dapat mencari judul yang
Index 0 1 2 3 4 5 6 7 8 9 10 11 12 telah ada dan melakukan pengecekan dari judul
Text S I S T E M O N L I N E yang akan diusulkan dengan judul yang ada di
Pattern O N L I N E repository Universitas XYZ dengan
menghasilkan persentase tingkat kemiripan.
Tahap kedua, karakter “E” setelah mengalami
pegeseran ternyata tidak sama dengan karakter
“N”, maka berikutnya adalah melakukan
pergeseran merujuk pada nilai OH. Pada tabel
OH untuk karekter “E” memiliki nilai 1, untuk
itu selanjutnya akan dilakukuan pergeseran
sebanyak 1 langkah. Proses ini dijelaskan pada
tabel 3.
Tabel 3. Pencocokan Text dan Pattern
Dengan 6 Langkah Pegeseran
(Sumber: Penulis, 2020)
Index 0 1 2 3 4 5 6 7 8 9 10 11 12
Text S I S T E M O N L I N E
Pattern O N L I N E
Pada tahap ini, string pada text paling kanan
yaitu karakter “E” telah sama atau cocok
dengan string pada pattern yaitu karakter “E”,
begitu pula dengan string pada text
selanjutnya yaitu “N”, “I”, “L”, “N”, “O” telah Gambar 4. Hasil Pencocokan Kemiripan Usulan Judul
56 | SINTECH Journal
(Sumber: Aplikasi Yang Dikembangkan Penulis, 2020) Skripsi/TA mahasiswa dengan string matching
menggunakan algoritma Boyer-Moore yang
3.4. Pengujian Sistem menjalankan pencocokan yang dimulai dari
Untuk memperlihatkan kinreja dari algoritma karakter sebelah kanan kemudian kekiri
Boyer-Moore maka pada penelitian ini berdasarkan nilai dari occurence heuristic (HO)
dilakukan pengujian waktu proses pencocokan dan match heuristic (MH) dalam menentukan
untuk menunjukan kecepatan algoritma pegeseran. Dari hasil pengujian waktu proses
bekerja. Pengujian waktu proses dilakukan dengan memasukan 100 data sampai dengan
dengan melakukan pencocokan judul dengan 500 data menunjukkan bahwa algoritma Boyer-
memasukan 100 data dan kelipatanya. Berikut Moore mampu mencocokan dengan cepat.
ini hasil pengujian terhadap waktu proses. Walaupun semakin banyak data semakin
Tabel 5. Hasil Pengujian Waktu Proses Algortima bertambah waktu yang dibutuhkan akan tetapi
Booyer-Moore rata-rata peningkatan waktu hanya bertambah
(Sumber: Hasil Pengujian Peneliti, 2020)
34%. Untuk pengembangan selanjutnya dapat
NO DATA WAKTU menerapkan beberapa algoritma string
1 100 50ms matching pada sistem, sehingga dapat
2 200 100ms diperoleh algortima yang paling evesien.
3 300 140ms
PERNYATAAN PENGHARGAAN
4 400 180ms
Peneliti menugucapkan terima kasih kepada
5 500 204ms “Yayasan Pendidikan Teknokrat melalui skim
penelitian internal dan LPPM Universitas
Dari hasil pengujian menunjukan bahwa Boyer- Teknokrat Indonesia” atas dukungan terhadap
Moore membutuhkan waktu yang cepat dalam penelitian ini.
proses string matching. Hal ini sesuai dengan
hasil penelitian sebelumnya [8][9][10] yang DAFTAR PUSTAKA
menunjukkan bahwa algortima Boyer-Moore [1] W. Astuti, “Analisis String Matching
mampu melakukan pencocokan string dengan Pada Judul Skripsi Dengan Algoritma
waktu yang cepat. Dari hasil penelitian untuk Knuth-Morris Pratt (KMP),” Ilk. J. Ilm.,
masukan data yang lebih banyak maka waktu vol. 9, no. 2, pp. 167–172, 2017.
yang dibutuhkan akan semakin bertambah [18]. [2] S. Hadi, “Pemeriksaan Keabsahan Data
Akan tetapi peningkatan waktu yang Penelitian Kualitatif Pada Skripsi,” J.
dibutuhkan algoritma Boyer-Moore dari 100 Ilmu Pendidik. Univ. Negeri Malang, vol.
data hingga 500 data rata-rata adalah 34%. Ini 22, no. 1, pp. 74–79, 2016.
menunjukan walaupun semakin banyak data [3] Z. A. Matondang, “Implementasi
semakin bertambah waktu tetapi penambahan Algoritma String Matching Pencarian
waktu yang dibutuhkan masih relatif kecil. Kata Dari Makna Rambu Lalulintas
Berbasis Android,” J. Sist. Inf.
Kaputama, vol. 2, no. 1, pp. 101–106,
2018.
[4] F. T. Waruwu and R. Mandala,
“Perbandingan Algoritma Knuth Morris
Pratt dan Boyer Moore Dalam
Pencocokan String Pada Aplikasi Kamus
Bahasa Nias,” J. Ilm. INFOTEK, vol. 1,
no. 1, pp. 36–43, 2016.
[5] R. I. Borman and A. Pratama,
“Penerapan String Matching Dengan
Gambar 5. Grafik Peningkatan Waktu Proses Algoritma Boyer Moore Pada Aplikasi
Algoritma Boyer-Moore Font Italic Untuk Deteksi Kata Asing,” J.
(Sumber: Hasil Pengujian Peneliti, 2020) Teknoinfo, vol. 10, no. 2, pp. 1–5, 2016.
[6] E. Rahmanita, “Pencarian String
4. KESIMPULAN Menggunakan Algoritma Boyer Moore
Penelitian ini menghasilkan sistem yang dapat Pada Dokumen,” J. Ilm. NERO, vol. 1,
menetukan tingkat kemiripan usulan judul
SINTECH Journal | 57
no. 1, pp. 15–26, 2014. Programming.” PT. Elex Media
[7] R. I. Darmawan, A. H. Setianingrum, Komputindo, Jakarta, 2017.
and A. Arini, “Implementasi Algoritma [15] L. Rusdiana, “Extreme Programming
Boyer Moore Pada Aplikasi Kamus untuk rancang bangun aplikasi
Istilah Kebidanan Berbasis Web,” pengelolaan surat keterangan
QUERY J. Sist. Inf., vol. 02, no. 01, pp. kependudukan,” Regist. J. Ilm. Teknol.
53–62, 2018. Sist. Inf., vol. 4, no. 1, p. 49, 2018.
[8] A. Fau, Mesran, and G. L. Ginting, [16] M. Melinda, R. I. Borman, and E. R.
“Analisa Perbandingan Boyer Moore Susanto, “Rancang Bangun Sistem
Dan Knuth Morris Pratt Dalam Informasi Publik Berbasis Web (Studi
Pencarian Judul Buku Menerapkan Kasus : Desa Durian Kecamatan Padang
Metode Perbandingan Eksponensial ( Cermin Kabupaten Pesawaran),” J.
Studi Kasus : Perpustakaan STMIK Budi Tekno Kompak, vol. 11, no. 1, p. 1,
Darma ),” J. Times (Technology 2018.
Informatics Comput. Syst., vol. 6, no. 1, [17] A. E. Kumala, R. I. Borman, and P.
pp. 12–22, 2017. Prasetyawan, “Sistem Informasi
[9] V. Sagita and M. I. Prasetiyowati, “Studi Monitoring Perkembangan Sapi Di
Perbandingan Implementasi Algoritma Lokasi Uji Performance (Studi Kasus :
Boyer-Moore, Turbo Boyer-Moore, dan Dinas Peternakan Dan Kesehatan
Tuned Boyer-Moore dalam Pencarian Hewan Provinsi Lampung),” J. Tekno
String,” J. Ultim., vol. 5, no. 1, pp. 31– Kompak, vol. 12, no. 1, p. 5, 2018.
37, 2013. [18] I. J. Sinaga, R. C. G. I. Kembaren, D. M.
[10] Y. Ardi, D. Andreswari, and Y. Setiawan, Br Bangun, and N. Marbun, “Penerapan
“Rancang Bangun Aplikasi Kamus Istilah Algoritma Boyer Moore Pada Aplikasi
Kedokteran Dengan Menggunakan Filosofer Berbasis Website,” KOMIK
Algoritma Boyer-Moore Berbasis (Konferensi Nas. Teknol. Inf. dan
Android,” J. Rekursif, vol. 5, no. 3, pp. Komputer), vol. 3, no. 1, pp. 436–438,
346–359, 2017. 2019.
[11] T. Gumelar, R. Astuti, and A. T. Sunarni, [19] I Ahmad, I Hermadi, Y Arkeman. Financial
“Sistem Penjualan Online Dengan feasibility study of waste cooking oil
Metode Extreme Programming,” J. utilization for biodiesel production
Telemat., vol. 9, no. 2, pp. 87–90, 2017. using ANFIS. TELKOMNIKA Indonesian
[12] R. I. Borman, A. T. Priandika, and A. R. Journal of Electrical Engineering 13 (3),
Edison, “Implementasi Metode 546-554. 2015.
Pengembangan Sistem Extreme [20] I Ahmad, H Sulistiani, H Saputra. The
Programming ( XP ) pada Aplikasi Application Of Fuzzy K-Nearest
Investasi Peternakan Implementation Neighbour Methods for A Student
of Extreme Programming ( XP ) System Graduation Rate. Indonesian Journal of
Development Method in Livestock Artificial Intelligence and Data Mining.
Investment Aplication,” JUSTIN (Jurnal Vol 1 No 1. 47-52. 2018.
Sist. dan Teknol. Informasi), vol. 8, no. [21] I Ahmad, N Shodik, N Neneng. Sistem
3, pp. 272–277, 2020. Rekomendasi Pemilihan Smartphone
[13] I. G. N. Suryantara, Merancang Snapdragon 636 Menggunakan Metode
Applikasi dengan Metodologi Extreme Simple Multi Attribute Rating
Programming - I Gusti Ngurah Technique (SMART). Jurnal Nasional
Suryantara, [Link]., [Link] - Google Pendidikan Teknik Informatika 7 (3),
Buku. Jakarta: PT. Elex Media 219-227. 2018.
Komputindo, 2017.
[14] I. G. N. Suryantara, “Merancang
Applikasi dengan Metodologi Extreme
58 | SINTECH Journal