## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981

## Penerapan Algoritma Knuth-Morris-Pratt Dalam Sistem Jasa Konsultan berbasis Mobile dan Web
Kristian Telaumbanua * , Florida N Damanik, Mirza Ilhami, Erlanie Sufarnap
Fakultas Informatika, Program Studi Teknik Informatika, Universitas Mikroskil, Medan Jl. M.H Thamrin No.140, Pusat Ps., Kec. Medan Kota, Kota Medan, Sumatera Utara Email: 1,* kristian@mikroskil.ac.id, 2 florida@mikroskil.ac.id, 3 mirza.ilhami@mikroskil.ac.id, 4 erlanie@mikroskil.ac.id Email Penulis Korespondensi: kristian@mikroskil.ac.id Submitted: 19/01/2023 ; Accepted: 31/01/2023 ; Published: 31/01/2023
Abstrak −Meningkatnya  berbagai  aspek  kehidupan  manusia  mengakibatkan  munculnya  beragam  aplikasi  penyedia  jasa konsultasi secara online dengan bidang serta  latar belakang yang berbeda-beda. Untuk membantu proses memilih konsultan yang sesuai dengan preferensi pengguna tertentu maka diaplikasikan sebuah sistem pencarian jasa konsultan yang melingkupi beberapa bidang konsultasi sekaligus, yang bertujuan untuk mempermudah pengguna dalam mencari konsultan yang sesuai dengan  kebutuhannya.  Dalam  kajian  ini  sistem  pencarian  jasa  konsultan  menerapkan  algoritma  Knuth-Morris-Pratt  untuk membantu  melakukan  pencarian  dengan  lebih  cepat.  Knuth-Morris-Pratt  merupakan  algoritma  pencocokan  string  yang pencariannya berdasarkan teks dan pola, KMP digunakan untuk mencari sebuah pola apakah ditemukan di dalam kumpulan string lain dengan ukuran yang lebih besar, Algoritma ini juga termasuk ke dalam salah satu algoritma pencarian tercepat dan memiliki  kompleksitas  yang  kecil.  Dalam  artikel  ini  akan  ditampilkan  gambaran  aplikasi  dan  pengujian  fitur  dengan menggunakan  black-box testing, beserta perbandingan  algoritma pencarian Knuth-Morris-Pratt dengan algoritma pencarian lainnya. Metodologi pengembangan sistem yang digunakan adalah metodologi waterfall. Hasil dari kajian dapat disimpulkan bahwa penerapan algoritma Knuth-Morris-Pratt dapat menampilkan hasil pencarian yang dilakukan lebih cepat dibandingkan dengan algoritma Boyer-Moore.
Kata Kunci: Searching Algorithm; Jasa Konsultan; Mobile; Black Box Testing; Knuth-Morris-Pratt
Abstract −With the increasing of human life aspects, various applications for online consulting service providers have emerged with different fields and backgrounds. To assist the process of selecting consultants according to the preferences of certain users, a consultant search system that covers several consulting areas at once is implemented, which aims to make it easier for users to find consultants that suit their needs. Knuth-Morris-Pratt is a string matching algorithm whose search is based on text and patterns, KMP is used to find where a pattern is found in a collection of other strings with a larger size, this algorithm is also include as one of the fastest and has a small complexity. In this final project, an overview of the application and feature testing using black-box testing will be presented, along with a comparison of the  Knuth-Morris-Pratt search algorithm with other search algorithms. The system development methodology used is the waterfall methodology. The results of this final project can be concluded that the application of the Knuth-Morris-Pratt algorithm on mobile and web-based consulting services search applications can assist clients in providing better and more efficient searches.
Keywords : Searching Algorithm; Consulting Services; Mobile; Black Box Testing; Knuth-Morris-Pratt

## 1. PENDAHULUAN
Revolusi Industri 4.0 merupakan perubahan yang mendasari kemajuan iptek dalam bidang industri yang mencakup berbagai  aspek  kehidupan  manusia,  termasuk  bisnis  [1].  Dalam  suatu  bisnis,  terdapat  beberapa  bagian  yang menjadi  penopang  jalannya  bisnis,  salah  satunya  adalah  konsultan.  Jasa  konsultan  membantu  menilai  secara objektif bisnis yang dijalankan perusahaan untuk membantu memandu serta mengembangkan bisnis agar mampu bersaing dengan lebih kompetitif, terutama dalam masa transisi yang melahirkan banyak peluang bisnis. Ditambah dengan kondisi dunia yang cenderung berubah-ubah yang berujung mempengaruhi fluktuasi arus perekonomian negara sehingga dapat menimbulkan dampak positif maupun negatif terhadap bisnis, organisasi ataupun sektor- sektor industri dalam negara tersebut [2]. Oleh karena itu, dorongan dari seorang jasa konsultan sangat diperlukan untuk  memberikan  analisis,  solusi,  serta  perencanaan  terhadap  kepentingan  perusahaan,  seperti  terkait  dengan informasi  permintaan  pasar,  persaingan  bisnis  dan  lainnya,  sehingga  suatu  bisnis  dapat  terus  mempertahankan keberadaannya.  Pada  praktiknya,  terdapat  banyak  konsultan  dari  berbagai  bidang  yang  menawarkan  jasanya, namun saat ini belum terdapat sistem pencarian yang dapat membantu orang-orang dalam menemukan konsultan yang sesuai dengan kriteria dan preferensi tiap individu atau kelompok dalam satu platform yang sama. Beberapa sistem  penyedia jasa konsultan yang telah ada di antaranya adalah Halodoc, HiPajak, dan MyLawyers. Dari ketiga aplikasi  tersebut,  semuanya  merupakan  aplikasi  penyedia  jasa  konsultan  yang  memberikan  solusi  atas  masalah yang dihadapi klien sesuai dengan bidangnya masing-masing. Aplikasi Halodoc menyediakan solusi dalam bidang kesehatan,  HiPajak  dalam  bidang  perpajakan,  dan  MyLawyers  dalam  bidang  hukum.  Ketiga  aplikasi  tersebut memiliki  fitur  yang  mendukung,  namun  semuanya  hanya  berfokus  pada  satu  bidang  saja,  sehingga  jika  ada pengguna yang membutuhkan pencarian ketiga jenis jasa konsultan tersebut, maka pengguna perlu mengunduh sebanyak tiga aplikasi, di mana hal ini dapat memakan waktu serta memori dari perangkat pengguna. Oleh karena itu, dibutuhkan suatu aplikasi pencarian yang menyediakan jasa konsultan untuk berbagai bidang konsultasi dalam lingkup  bisnis  dan  industri  sehingga  dapat  memberikan  kemudahan  dan  efektivitas  bagi  klien.Untuk mengoptimalkan  pencarian  dalam  sistem  maka  diterapkan  algoritma  pencarian,  yakni  algoritma  Knuth-Morris- Pratt (KMP). KMP merupakan algoritma pencocokan string yang pencariannya berdasarkan teks dan pola, dengan

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
metode pencarian dilakukan dari kiri ke kanan dari teks. Pemilihan algoritma KMP didasarkan pada penggunaanya yang sangat cocok untuk pattern matching dengan teks yang menggunakan abjad sedikit, pada proses pencarian yang dilakukan pada aplikasi  ini, panjang abjad yang dipakai  hanya  sedikit [3]. Berdasarkan uraian masalah di atas, solusi yang ditawarkan dalam penelitian ini adalah pengembangan suatu aplikasi pencarian jasa konsultasi yang berfokus pada berbagai bidang sebagai media untuk menghubungkan para konsultan dengan klien. Aplikasi ini memudahkan pengguna dalam menemukan konsultan guna mendapatkan solusi terhadap permasalahan yang dihadapi atau sebagai acuan dalam pengambilan suatu keputusan yang bisa digunakan untuk keperluan bisnis atau hal yang lainnya. Oleh karena itu, maka dilakukan kajian dengan judul “Penerapan Algoritma Knutth-Morris-Pratt dalam sistem jasa konsultan berbasis mobile dan web”.

## 2. METODOLOGI PENELITIAN

## 2.1 Tahapan Penelitian
Metodologi yang digunakan dalam pengembangan sistem ini adalah metodologi Waterfall. Metodologi Waterfall merupakan suatu pendekatan dalam pengembangan sistem yang menekankan pada fase-fase yang sistematis dan berurutan guna untuk menghasilkan kualitas sistem yang baik dan dokumen pengembangan yang terorganisir [4]. Adapun beberapa tahapan metodologi Waterfall yang digunakan dalam proses pengembangan sistem ini adalah sebagai berikut.
a. Analisis Sistem
Pada tahap ini, dilakukan analisis proses dan analisis kebutuhan sistem. Analisis kebutuhan terbagi ke dalam 2, yakni  analisis  kebutuhan  fungsional  dan  non-fungsional.  Untuk  kebutuhan  fungsional  dimodelkan  dengan menggunakan  Use  Case  Diagram,  dan  kebutuhan  non-fungsional  didefinisikan  dengan  menggunakan  metode Performance, Information, Economy, Control, Efficiency, Service (PIECES). Analisis proses menjelaskan proses alur kerja sistem yang akan dimodelkan dengan menggunakan Flowchart Diagram. Tahapan ini bertujuan untuk mengumpulkan kebutuhan dari perangkat lunak yang akan dibangun, di mana pengumpulan kebutuhan dilakukan dengan mempelajari materi-materi yang berhubungan dengan konsultansi online.
b. Perancangan
Melakukan  perancangan  mock-up  antarmuka  aplikasi  dengan  menggunakan  Figma  dan  pemodelan  basis  data dengan menggunakan Microsoft Visio yang akan diimplementasikan ke dalam basis data menggunakan back-end Firebase Firestore.
c. Implementasi
Melakukan penulisan kode program dengan menggunakan framework Flutter untuk aplikasi mobile dan web. Basis data  yang  digunakan  untuk  aplikasi  ini  adalah  basis  data  NoSQL  Firebase  Firestore,  dan  untuk  autentikasi diimplementasikan menggunakan Firebase Authentication.
d. Pengujian
Melakukan  pengujian  spesifikasi  fungsionalitas  dari  aplikasi  mobile  dan  web  menggunakan  Use  Case  Testing yang  merupakan  bagian  dari  Black-Box  Testing  untuk  menguji  perangkat  lunak  secara  fungsional  agar mengeluarkan hasil sesuai dengan yang diharapkan. Serta melakukan pengujian waktu eksekusi algoritma dengan membandingkan algoritma Knuth-Morris-Pratt dengan algoritma Boyer-Moore.
e. Penarikan kesimpulan
Melakukan penarikan kesimpulan berdasarkan hasil pengujian yang telah dilakukan

## 2.2 String Searching
Searching atau pencarian merupakan suatu proses atau metode guna untuk menemukan data atau informasi yang dicari  dari  sebuah  kumpulan  data  yang memiliki tipe  data  yang  sama.  String  adalah  urutan  dari  karakter,  yang mana karakter ini dapat terdiri dari beberapa alphabet. Misalnya adalah string biner yang terdiri dari dua alphabet yaitu 0 dan 1, jadi string biner merupakan suatu urutan karakter 0 maupun 1. Contoh yang lain adalah string ASCII yang terdiri dari 256 alphabet. String searching pada dasarnya adalah mencari pola P yang memiliki panjang m dalam suatu  teks T yang memiliki panjang n. Baik  pola maupun teks dinyatakan dalam  array, pola dinyatakan dengan p[0..m-1] dan teks dinyatakan dengan T[0.. n-1]. Kecocokan terjadi apabila karakter pada teks dan karakter pada pola yang dibandingkan menghasilkan hasil yang sama.

## 2.3 Algoritma String Searching
Algoritma  string  matching  dikenal  dengan  istilah  algoritma  pencocokan  string.  Berdasarkan  ketentuan  arah pencocokan string, algoritma string matching dapat diklasifikasikan menjadi 3 jenis arah pencocokan string, yaitu

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
kiri ke kanan, kanan ke kiri, dan dari kanan-kiri-tengah-karakter kedua dari awal karakter hingga karakter kedua dari akhir karakter [5]. Persoalan pencocokan string dirumuskan sebagai berikut [6]. Diberikan:
a. Sebuah teks (text), yaitu sebuah (long) string yang panjangnya n karakter
b. Pola (pattern), yaitu sebuah string dengan panjang m karakter (m < n) yang akan dicari dalam teks Misalkan,  mencari  lokasi  pertama  di  dalam  teks yang  bersesuaian  dengan  pola  pada  sebuah  kata  dalam dokumen menu find dalam Microsoft Word.
Contoh: Pola : nots
Teks : nobody not iced him Beberapa algoritma string matching di antaranya adalah:
a. Brute  Force,  analisis  dengan  metode  Brute  Force  adalah  membandingkan  karakter  per  karakter  sampai ditemukannya  pola  yang  dicari  dari  awal  string  sampai  dengan  akhir  string.  Brute  Force  memiliki kompleksitas O(mn) [7].
b. Knuth-Morris-Pratt, analisis dengan metode Knuth-Morris-Pratt adalah dengan mencocokkan pola pada awal teks. Algoritma ini mencocokkan karakter per karakter dengan karakter di teks yang bersesuaian dari kiri ke kanan.
c. Boyer-Moore,  algoritma  Boyer-Moore  adalah  algoritma  yang  mempertimbangkan  string  matching  dengan efisiensi tinggi dari aplikasi. Algoritma ini melakukan pencocokkan karakter yang dimulai dari kanan ke kiri. Boyer-Moore memiliki kompleksitas rata-rata O(n), dan dalam situasi terburuk adalah O(mn) [7].
Metode  Knuth-Morris-Pratt  akan  digunakan  dalam  penelitian  ini.  Pada  KMP  untuk  menghitung  fungsi pinggiran dibutuhkan waktu O(m), sedangkan pencarian string membutuhkan waktu O(n), sehingga kompleksitas yang diperlukan waktu algoritma KMP adalah O(m+n) [5].

## 2.4 Algoritma Knuth-Morris-Pratt (KMP)
Algoritma Knuth-Morris-Pratt merupakan algoritma pencocokan string yang dikembangkan secara terpisah oleh Donald  E.  Knuth  pada  tahun  1967  dan  James  H.  Morris  bersama  Vaughan  R.  Pratt  pada  tahun  1966,  yang kemudian  dipublikasikan  secara  bersamaan  pada  tahun  1977.  Algoritma  Knuth-Morris-Pratt  melakukan perbandingan  karakter  teks  dan  karakter  pada  pola  dari  kiri  ke  kanan.  Ide  dari  algoritma  ini  adalah  mengenai bagaimana  memanfaatkan  karakter-karakter  pola  yang  sudah  diketahui  ada  di  dalam  teks  sampai  terjadinya ketidakcocokan untuk melakukan pergeseran [8].
Perhitungan pergeseran pada algoritma ini adalah sebagai berikut, bayangkan sebuah percobaan pada posisi kiri j pada saat pola sejajar dengan teks[j..j + m – 1]. Asumsikan ketidakcocokan pertama terjadi di antara pola[i] dan teks[i + j] dengan 0 < i < m, di mana m merupakan panjang dari pola. Maka, pola[0..i – 1] = teks[j..i + j – 1] = u dan a = pola[i] ≠ teks[i + j] = b. Ketika pergeseran, sangat mungkin apabila awalan v dari pola cocok dengan dengan  beberapa  akhiran  dari  sebagian  u  dari  teks,  sehingga  pola  dapat  digeser  agar  awalan  v  sejajar  dengan akhiran u [5].
Gambar 2. Pergeseran pada Algoritma KMP: v adalah batas dari u dan a ≠ c [5]
Dengan kata lain, pencocokan string akan berjalan secara efisien bila kita mempunyai sebuah tabel yang menentukan seberapa besar pergeseran yang dilakukan setiap kali terdeteksi  ketidakcocokan pada karakter ke-i dari  pola.  Tabel  tersebut  harus  memuat  kmpNext[i]  yang  merupakan  posisi  karakter  pola[i]  setelah  digeser. Kemudian setelah pergeseran, perbandingannya dapat dilanjutkan antara pola[kmpNext[i]] dengan teks[i + j] tanpa melewatkan kejadian apapun, dan menghindari adanya kemunduran dari teks  [5]. Tabel ini disebut juga dengan tabel prefix. Tabel prefix didefinisikan sebagai ukuran awalan terpanjang dari pola yang merupakan akhiran dari pola[0..i - 1][4].
Secara  sistematis,  langkah-langkah  yang  dilakukan  algoritma  Knuth-Morris-Pratt  pada  saat  pencocokan string adalah sebagai berikut [8].
a. Algoritma Knuth-Morris-Pratt mulai mencocokkan pola pada awal teks
b. Dari kiri ke kanan algoritma ini akan mencocokkan karakter per karakter pola dengan karakter pada teks yang bersesuaian, sampai salah satu kondisi berikut terpenuhi
1. Karakter di pola dan di teks yang dibandingkan tidak cocok (mismatch)
2. Semua karakter di pola cocok. Kemudian algoritma akan memberitahukan penemuan di posisi ini

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
c. Algoritma kemudian menggeser pola berdasarkan tabel prefix, lalu mengulangi langkah 2 sampai pola berada di ujung teks
2.5 Analisis Sistem
Alur  kerja  sistem  pencarian  yang  merupakan  langkah  yang  dilakukan  oleh  pengguna  untuk  mencari  konsultan berdasarkan nama atau jenis konsultan. Ketika pengguna melakukan pencarian, sistem akan menampilkan hasil berdasarkan data yang tersedia dari database. Namun, sebelum memasuki tahap pencarian, sistem terlebih dahulu akan mengambil masukan dari pengguna berupa substring atau string dari nama atau bidang konsultan. Setelah itu,  sistem  akan  memproses  string  yang  diinput  dengan  menggunakan  algoritma  Knuth-Morris-Pratt  melalui beberapa tahapan. Setelahnya, sistem akan mulai [mencari kata kunci dari daftar nama atau bidang konsultan yang terdapat dalam database dan kemudian mencocokkannya dengan kata kunci yang diinput pengguna. Jika kata kunci yang  diinput  pengguna  ditemukan  dalam  daftar  kata  pada  database,  maka  sistem  akan  menampilkan  hasil pencarian keseluruhan daftar yang memiliki kata kunci yang sesuai.
Gambar 3. Flowchart Proses Utama Algoritma Knuth-Morris-Pratt

## 3. HASIL DAN PEMBAHASAN
3.1 Hasil
Tampilan halaman pencarian di mobile.

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
Gambar 5. Tampilan Halaman Pencarian Web

## 3.2 Pengujian Algoritma
Pengujian  perbandingan  algoritma  dilakukan  dengan  melihat  hasil  waktu  yang  diperlukan  dalam  melakukan pencarian.  Dataset  yang  digunakan  saat  melakukan  pencarian  terdiri  dari  100  data,  spesifikasi  perangkat  yang digunakan  dalam  pengujian  adalah:  Processor:  Intel  Core  i7-10510U,  RAM:  16  GB,  Storage:  SSD,  Operating System: Windows 11. Berikut hasil pengujiannya.
Tabel 1. Hasil Pengujian Perbandingan Algoritma Knuth-Morris-Pratt dengan Boyer-Moore
Algorithm Proses ke Pattern
Kriteria
Jumlah Waktu (ms) Algoritma Boyer-Moore 1 siya 0.01059 2 pott 0.01309 3 na 0.03271 4 or 0.01225 5 sha 0.01222 6 daniel 0.01412 7 ariana 0.01962 8 anthony 0.0146 9 pike 0.0157 10 hugo 0.01945 11 keu 0.01531 12 keuangan 0.01605 13 bis 0.01541 14 bisnis 0.01561 Algoritma Knuth-Morris-Pratt 1 siya 0.00698 2 pott 0.00966 3 na 0.02334 4 or 0.01815 5 sha 0.01969 6 daniel 0.01206 7 ariana 0.01971 8 anthony 0.01263 9 pike 0.01183 10 hugo 0.01222 11 keu 0.01528 12 keuangan 0.01541 13 bis 0.01526 14 bisnis 0.00662
Tabel 2. Hasil Perbandingan Algoritma Knuth-Morris-Pratt dan Boyer-Moore
Jumlah Waktu (ms) Algoritma Tercepat BM KMP 0.01059 0.00698 KMP 0.01309 0.00966 KMP 0.03271 0.02334 KMP

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
Jumlah Waktu (ms) Algoritma Tercepat BM KMP 0.01225 0.01815 BM 0.01222 0.01969 BM 0.01412 0.01206 KMP 0.01962 0.01971 BM 0.0146 0.01263 KMP 0.0157 0.01183 KMP 0.01945 0.01222 KMP 0.01531 0.01528 KMP 0.01605 0.01541 KMP 0.01541 0.01526 KMP 0.01561 0.00662 KMP BM = Boyer-Moore
KMP = Knuth-Morris-Pratt
Berdasar Tabel 2 dapat dilakukan perhitungan untuk membandingkan kecepatan pencarian dari algoritma Boyer- Moore dan Knuth Morris-Pratt.
Persentase BM = 3 4 * 100% = 21.4286%
Persentase KMP = 11 14 * 100% = 78.5714%
Setelah diperoleh persentase akhir dari perbandingan kecepatan kedua algoritma, dapat disimpulkan bahwa algoritma Knuth-Morris-Pratt dapat melakukan pencarian lebih cepat dibandingkan algoritma Boyer-Moore.

## 4. KESIMPULAN
Hasil pengujian aplikasi web dan mobile menggunakan black box testing menunjukkan bahwa secara fungsional sistem dapat bekerja dengan baik dan mengeluarkan hasil sesuai yang diharapkan. Dengan adanya aplikasi Consul, pengguna dapat dengan mudah mencari konsultan yang ahli di bidang masing-masing sesuai dengan kebutuhan. Selain  itu,  algoritma  Knuth-Morris-Pratt  dapat  menampilkan  hasil  pencarian  yang  dilakukan  lebih  cepat dibandingkan dengan algoritma Boyer-Moore.

## REFERENCES
[1] N. Helmi, “Revolusi
Industri 4.0 dan Pengaruhnya bagi Industri di Indonesia.” https://www.kemhan.go.id/pusbmn/2019/04/30/revolusi-industri-4-0-dan-pengaruhnya-bagi-industri-di-indonesia.html (accessed Mar. 07, 2022).
[2] L. Hertati, M. Widiyanti, D. Desfitrina, A. Syafarudin, and O. Safkaur, “THE EFFECTS OF ECONOMIC CRISIS ON BUSINESS FINANCE,” International Journal of Economics and Financial Issues, vol. 10, no. 3, pp. 236–244, May 2020, doi: 10.32479/ijefi.9928.
[3] Moch.  Yusup  Soleh,  “Implementasi  Algoritma  KMP  dan  Boyer-Moore  dalam  Aplikasi  Search  Engine  Sederhana,” Makalah  IF3051  Strategi  Algoritma  –  Sem.  I  Tahun  2010/2011,  2010.  https://adoc.pub/implementasi-algoritma-kmp- dan-boyer-moore-dalam-aplikasi-se.html (accessed Mar. 08, 2022).
[4] G. L. Ginting and D. P. Napitupulu, “Perancangan Aplikasi Pendeteksi Kesalahan Perintah SQL Query Menggunakan Algoritma Knuth Morris Pratt,” JURIKOM, vol. 5, no. 4, pp. 377–381, 2018, [Online]. Available: http://ejurnal.stmik- budidarma.ac.id/index.php/jurikom|Page|376
[5] Christian. Charras and Thierry. Lecroq, Handbook of exact string matching algorithms. King’s College, 2004.
[6] W. Astuti, “Analisis String Matching pada Judul Skripsi dengan Algoritma Knuth-Morris-Pratt (KMP),” ILKOM, vol. 9, no. 2, pp. 167–172, Aug. 2017.
[7] Darmawan  Utomo,  Eric  Wijaya,  and  Harjo  Handoko,  “PERBANDINGAN  ALGORITMA  STRING  SEARCHING BRUTE FORCE,” Techné Jurnal Ilmiah Elektroteknika, vol. 7, no. 1, pp. 1–13, 2008.
[8] I. Mulyawati, D. Martha, and R. T. Subagio, “IMPLEMENTASI METODE STRING MATCHING UNTUK APLIKASI PENGARSIPAN DOKUMEN (STUDI KASUS : SMPN 3 SUMBER KAB. CIREBON),” Jurnal Digit, vol. 7, no. 1, pp. 50–61, Jul. 2017.
[9] P.  Raden,  “PENGEMBANGAN  MODEL  KONSULTASI  KONSELOR  ORANGTUA  UNTUK  MENINGKATKAN KEDISIPLINAN SISWA SMP DI KABUPATEN GOWA.” 2018.
[10]  S. M. Fauzi and M. I. Wahyuddin, “Penerapan Rapid Application Development (RAD) Dalam Pengembangan Aplikasi Penjualan Ikan Cupang Hias Berbasis Web,” JURNAL MEDIA INFORMATIKA BUDIDARMA, vol. 6, no. 2, p. 751, Apr. 2022, doi: 10.30865/mib.v6i2.3555.
[11]  R. P. Nugraha, A. P. Nanda, and A. Hafiz, “Pengembangan Sistem Informasi Penerimaan Peserta Didik Baru ( Ppdb ) Online Pada Sekolah Menengah Pertama Sma Global Surya Berbasis Android,” vol. 1, no. 2, Aug. 2020.
[12]  Y. Latifah, Yunita, and H. Amalia, “Rancang Bangun Sistem Informasi Penerimaan Siswa Baru Dengan Model RAD,” Perspektif, vol. XVI, no. 2, pp. 136–141, 2018.
[13]  J.  N.  Paulina  Lubis  and  N.  M.  Kautsar,  “SISTEM  INFORMASI  PENERIMAAN  SISWA  BARU  SD  CALISA TANJUNG UBAN BERBASIS WEB DAN SMS GATEWAY,” Bangkit Indonesia, vol. VIII, no. 2, pp. 34–39, 2021.

## Journal of Information System Research (JOSH)
Volume 4, No. 2, Januari 2023, pp 730 − 736 ISSN 2686-228X (media online) https://ejurnal.seminar-id.com/index.php/josh/ DOI 10.47065/josh.v4i2.2981
[14]  S. Masripah and L. Ramayanti, “Pengujian Black Box Pada Sistem Informasi Penerimaan Siswa Baru Berbasis Web,” Information Syst. Educ. Prof., vol. 4, no. 1, pp. 1–12, 2019.
[15]  M.  A.  Sarpiah,  “SISTEM  INFORMASI  PENERIMAAN  PESERTA  DIDIK  KESETARAANPAKETA,  B,  DANC PADA  SATUAN  PENDIDIKAN  NON  FORMAL  SANGGAR  KEGIATAN  BELAJAR  KABUPATEN  MAJENE BERBASIS WEB,” J. Peqguruang Conf, vol. 2, no. 1, pp. 49–55, 2021.
[16]  S. Aswati, M. S. Ramadhan, A. U. Firmansyah, and K. Anwar, “Studi Analisis Model Rapid Application Development Dalam Pengembangan Sistem Informasi,” Jurnal Matrik, vol. 16, no. 2, p. 20, Jul. 2017, doi: 10.30812/matrik.v16i2.10.
[17]  N. Hidayati, “Implementasi Metode  Rapid Application Development Dalam Pembangunan Sistem Penerimaan Kas Atas Penjualan,” Paradigma, vol. XX, no. 1, pp. 39–47, 2018.