PENERAPAN ALGORITMA KNUTH-MORRIS-PRATT PADA FITUR PENCARIAN DEFINISI ISTILAH STANDAR OPERASIONAL PROSEDUR (SOP) PADA LEMBAGA PENJAMINAN MUTU UIN AR-RANIRY
Khairan AR 1 , Hendri Ahmadian 2 1,2 Program Studi Pendidikan Teknologi Informasi , Fakultas Tarbiyah dan Keguruan Universitas Islam Negeri Ar-Raniry - Banda Aceh E-mail: khairan.arraniry@gmail.com, hendri@ar-raniry.ac.id

## Abstract
This  study  aims  to  explain  the  steps  of  applying  the  Knuth-Morris-Pratt  algorithm  on  the search feature definition of Standard Operational Procedure (SOP) LPM-UIN Ar-Raniry. In addition,  this  research  also  measures  the  efficiency  of  the  search  process  of  definition  of term.  The  main  problems  in  this  study  are  the  creation  of  a  user  or  admin  of  system searching  of  SOP  term  and  also  implementation  of  the  Knuth  Morris  Pratt  (KMP) algorithm.  This  study  uses  a  fishbone  diagram  (Ishikawa).  The  development  of  system searching  of  SOP  term  uses  XAMPP  server,  Mozilla  Firefox,  PHP  and  HTML programming  languages.  Based  on  the  results  of  the  system  feasibility  test,  the  search feature of SOP is feasible to use and can improve the efficiency of the system searching of SOP term, with values that are in intervals of 61 - 80% and with mean 0.8 or equivalent to 80%.
Keywords : Algorithm , Knuth-Morris-Pratt, SOP

## Abstrak
Tujuan  dari  Penelitian  ini bertujuan  untuk  menjelaskan  langkah  penerapan  algoritma Knuth-Morris-Pratt  pada  fitur  pencarian  “DEFENISI  ISTILAH”  SOP  Lembaga Penjamin  Mutu  (LPM)  UIN  Ar-Raniry,  serta  mengukur  tingkat  efisiensi  proses pencarian  “DEFENISI  ISTILAH”  SOP.  Tiga  persoalan  utama  dalam  penelitian  ini yakni  pembuatan  sistem  pencarian  istilah  SOP  oleh User  atau  admin,  dan  penerapan algoritma Knuth Morris Pratt (KMP). Untuk  memudahkan pemetaan persoalan, pada penelitian  ini  menggunakan  diagram  fishbone  (ishikawa).  Pengembangan  sistem pencarian  istilah  SOP  yang  terdiri  atas:  XAMPP  Server,  Mozilla  Firefox,  bahasa pemrograman  PHP  dan  HTML.  Berdasarkan  hasil  uji  kelayakan  sistem,  fitur pencarian SOP ini layak untuk digunakan dan dapat meningkatkan efisiensi pencarian istilah SOP LPM, dengan nilai yang berada pada interval 61 – 80% dan dengan mean (rerata) 0.8 atau setara dengan 80%.
Kata kunci : Algoritma, Knuth-Morris-Pratt, SOP

## 1. Pendahuluan
Lembaga  Penjaminan  Mutu  (LPM)  merupakan  salah  satu  lembaga  yang  diberikan tugas dan wewenang dalam menjamin terjaganya kualitas mutu akademik pada institusi pendidikan, yang mengharuskan LPM menetapkan serangkaian aturan dan standar guna untuk mempertahankan mutu tersebut.

## PENERAPAN ALGORITMA KNUTH-MORRIS-PRATT PADA FITUR PENCARIAN DEFINISI ISTILAH STANDAR OPERASIONAL PROSEDUR (SOP) PADA LEMBAGA PENJAMINAN MUTU UIN AR-RANIRY
Salah satu standar yang ditetapkan oleh LPM adalah, standar operasional prosedur (SOP). SOP adalah pedoman atau panduan yang digunakan pada suatu organisasi dalam melaksanakan  tugas  atau  pekerjaan  yang  berfungsi  untuk  menjamin  kelancaran kegiatan-kegiatan  operasionalnya  berdasarkan  indikator  teknis,  administratif,  dan prosedural  sesuai  dengan  tata  kerja,  prosedur  kerja,  dan  sistem  kerja  pada  setiap  unit kerja  (Tjipto  Atmoko).  Penyusunan  SOP  biasanya  memiliki  beberapa  bagian  atau struktur,  seperti:  nomor  SOP,  nama  SOP,  waktu/tanggal  pembuatan,  waktu/tanggal revisi,  disahkan  oleh,  dasar  hukum,  kualifikasi  pelaksana,  serta  dilengkapi  bagan  alur (flowchart) pada bagian akhir.
Banyaknya  SOP  yang  dibuat  dan  dikembangkan  oleh  LPM  UIN  Ar-Raniry, mengharuskan LPM memiliki perbendaharaan kata (istilah) beserta artinya pada setiap SOP  yang  dibuat  tersebut.  Seperti  pada  SOP  AIMA,  penggunaan  istilah  auditee  dan auditor.  Auditee  memiliki  arti:  organisasi  (orang,  sistem  atau  pihak)  yang  diaudit, sedangkan  auditor  memiliki  arti:  orang  yang  memiliki  kompetensi  dan  ditunjuk  untuk melakukan kegiatan audit. Tentu saja dua istilah tersebut, hanya mewakili dari 22 istilah yang digunakan pada SOP AIMA. Setidaknya ada 220 istilah yang terdapat pada kelima SOP  LPM  UIN  Ar-Raniry  di  atas,  dengan  pembagian  sebagai  berikut:  (1)  SOP  audit internal  mutu  akademik  (AIMA)  sebanyak  22  istilah,  (2)  SOP  kemahasiswaan  114 istilah  (dibagi  delapan  SOP),  (3)  SOP  pembimbingan  dan  ujian  skripsi  12  istilah,  (4) SOP pemeriksaan beban kerja dosen (BKD) 21 istilah, dan (5) SOP persuratan 51 istilah (dibagi delapan SOP).
Dari  uraian  istilah-istilah  yang  digunakan  pada  SOP  LPM  UIN  Ar-Raniry  di  atas, terdapat  dua  kendala  yang  terjadi  pada  saat  penyusunan  istilah-istilah  SOP  tersebut, yakni: kendala utama dan kendala teknis. Kendala utamanya adalah, setiap format SOP yang  disusun  LPM  UIN  Ar-Raniry  harus  mengacu  pada  format  SOP  yang  ditetapkan oleh  kementerian  agama,  akan  tetapi  format  SOP  kementerian  agama  tidak menyediakan  kolom  definisi  istilah  pada  format  penysunan  SOP.  Disamping  itu, terdapat  kendala  teknis  yang  berkaitan  dengan  penggunaan  istilah-istilah  SOP  LPM UIN  Ar-Raniry  ini,  seperti:    penggunaan  istilah-istilah  yang  sama  pada  SOP  yang berbeda,  pencarian-pencarian  istilah  yang  sama  juga  membutuhkan  waktu  yang  relatif lama,  karena  harus  membuka  dokumen  SOP  satu  per-satu.  Dan  pada  saat  proses penyusunan  dan  pengembangan  SOP  sering  kali  operator  kesulitan  dalam  proses pengetikan, karena harus melakukan scrolling back ke bagian atas ketikan untuk melihat istilah-istilah yang digunakan.
Pendokumentasian  dan  penyusunan  istilah-istilah  SOP  LPM  UIN  Ar-Raniry  ke dalam sebuah basis data harus ditunjang dengan efisiensi proses pencarian istilah-istilah yang  tersimpan  tersebut  ketika  dibutuhkan.  Salah  satu  cara  untuk  mengefisiensikan proses  pencarian  data  yang  tersimpan  di  dalam  basis  data  adalah  dengan  menerapkan fitur  pencarian  yang  mampu  mendeteksi  istilah  yang  diinginkan  oleh  pengguna  (user) dengan  istilah  yang  tersimpan  di  basis  data.  Ada  beberapa  algoritma  yang  sering digunakan  dalam  proses  pencarian  ini,  seperti:  (1)  Algoritma  binary,  merupakan algoritma  pencarian  nilai  dalam  suatu  array  yang  terurut,  (2)  Algoritma  sequential, merupakan  algoritma  pencarian  nilai  dalam  suatu  array  yang  acak  yang  dilakukan secara  berurutan  dengan  membandingkan  nilai  yang  ingin  di  cari  dengan  nilai  yang tersimpan  di  dalam  array  (dibandingkan  mulai  dari  awal  sampai  akhir  array),    (3) Algoritma-Knuth-Morris-Pratt,  merupakan  algoritma  pencocokan  string  yang  dapat memprediksi  kata  yang  diinputkan/dicari  oleh  user  (pengguna).  Sebagai  salah  satu
algoritma  pencocokan  string,  algoritma  Knuth-Morris-Pratt  memiliki  seluruh  fungsi yang di syaratkan oleh sebuah fitur pencarian.
Algoritma  pencarian  harus  memiliki  kemampuan  untuk  memprediksi  kata  yang diinputkan/di  cari  dengan  membandingkan  setiap  karakter  yang  diketikkan  dengan karakter teks yang tersimpan di dalam basis data, sehingga dapat meningkatkan efisiensi proses pencarian “DEFENISI ISTILAH” SOP LPM UIN Ar-Raniry dengan asumsi:
1. Bagaimana  algoritma  Knuth-Morris-Pratt  diterapkan  pada  fitur  pencarian “DEFENISI ISTILAH” SOP LPM UIN Ar-Raniry?
2. Apakah  penerapan  algoritma  Knuth-Morris-Pratt  untuk  fitur  pencarian  istilah  dapat meningkatkan efisiensi proses pencarian “DEFENISI ISTILAH” SOP LPM UIN Ar- Raniry?

## 2. Metodelogi Penelitian Analisis Sistem
Terdapat  tiga  persoalan  utama  dalam  penelitian  ini  yakni,  pembuatan  sistem pencarian  istilah  SOP  oleh  User  atau  admin,  dan  penerapan  algoritma  Knuth  Morris Pratt  (KMP).  Untuk  memudahkan  pemetaan  persoalan  yang  akan  di  bahas  pada penelitian ini, berikut disajikan diagram fishbone (ishikawa) dengan asumsi: kepala ikan merupakan permasalahan utama yang akan di atasi, sedangkan tulang ikan (atas-bawah) merupakan langkah penyelesaian permasalahan.
Pencarian Istilah SOP Metode Peralatan Xampp server, Mozilla Firefox, PHP dan HTML. User dan Admin LPM dapat menambahkan dan mencari daftar istilah SOP Algoritma Knuth Morris Pratt (KMP)
Gambar 1. Diagram Fishbone (ishikawa) Pencarian Istilah SOP
Didasarkan pada diagram di atas, untuk dapat melakukan proses pencarian istilah SOP dibutuhkan tiga komponen atau indikator yakni:
1. Peralatan Peralatan diperuntukkan sebagai alat dalam pengembangan sistem pencarian istilah SOP yang  terdiri  atas:  xampp  server,  mozilla  firefox,  dan  bahasa  pemrograman  PHP  dan HTML.
2. Metode Metode  yang  digunakan  untuk  proses  pencarian  istilah  SOP  yakni  algoritma  knuth morris pratt (KMP) yang dituliskan dalam Bahasa pemrograman PHP.

## 3. Pengguna
Pengguna yang terlibat dalam proses penambahan dan pencarian istilah SOP ini adalah admin dan user LPM.

## Analisis kebutuhan sistem
Dalam  penelitian  ini  terdapat  dua  kebutuhan  sistem  yakni,  kebutuhan  fungsional  dan kebutuhan  non  fungsional.  Seperti  telah  dijelaskan  pada  bab  3,  kebutuhan  fungsional utama  yang  harus  dimiliki  oleh  sistem  pencarian  istilah  SOP  adalah,  sistem  dapat mencocokkan  kesamaan  kata  yang  dicari  dengan  kata  yang  tersimpan  di  basis  data menggunakan algoritma knuth morris pratt.
Sedangkan kebutuhan non fungsional  yang harus dimiliki oleh sistem pencarian istilah SOP adalah, sistem dapat mengeluarkan fitur auto complete dari kata yang di ketikkan oleh user dan  admin, selain itu sistem harus mengeluarkan informasi  jumlah kata baik yang  tidak  atau  berhasil  ditemukan  serta  sistem  mampu  memberikan  informasi  posisi dari kata yang ditemukannya.

## Analisis Data
Data pada penelitian ini adalah daftar istilah SOP LPM UIN Ar-Raniry Banda Aceh dan Universitas  Serambi  Mekah.  Daftar  istilah  SOP  tersebut  dimasukkan  kedalam  sebuah basis data yang dalam penelitian ini menggunakan basis data MySql. Dalam basis data terdapat  100  daftar  istilah  SOP  beserta  makna  dari  masing-masing  istilahnya. Keseluruhan  daftar  istilah  dan  makna  dari  SOP  tersebut,  akan  disimpan  dan  dipanggil melalui sistem yang dibuat menggunakan Bahasa pemrograman PHP.

## Pemodelan Sistem
Pemodelan sistem dilakukan untuk mendeskripsikan bentuk visual dari sistem pencarian istilah SOP  LPM  yang dikembangkan.  Bentuk  visual  ini dibuat untuk  memperlihatkan alur dari sistem dan pihak-pihak yang terlibat dalam sistem pencarian istilah SOP LPM ini.  Untuk  memudahkan  pemahaman  pihak-pihak  yang  terlibat  dalam  sistem,  maka bentuk  visual  dari  sistem  dibuat  dengan  menggunakan  tiga  diagram  UML  yakni,  use case diagram, activity diagram, dan sequence diagram.

## Use Case Diagram
Diagram use case berperan penting dalam perancangan suatu sistem. Use case diagram dibuat  untuk  menunjukkan  hubungan  antara  aktor  dengan  use  case  di  dalam  sistem. Dalam  penelitian  ini  ada  dua  aktor  yang  berinteraksi  pada  tiga  use  case  yakni:  admin melakukan  login  dan  tambah  istilah  SOP  LPM,  dan  user  hanya  melakukan  pencarian istilah SOP. Untuk lebih jelas, berikut use case dari sistem pencarian istilah SOP LPM:
Admin LPM Login Tambah Istilah SOP Cari Istilah SOP Algoritma KMP <<include>> User LPM Pencocokan panjang kata/teks dengan pattern Penemuan Karakter
Kata/Teks
Hitung nilai pergeseran karakter Membandingkan karakter kata/teks <<extend>> <<extend>> <<extend>> <<extend>>
Gambar 2. Diagram Use Case Pencarian Istilah SOP LPM

## Activity Diagram
Activity  diagram  digunakan  untuk  penjelasan  terinci  dari  diagram  use  case  yang telah  di  buat.  Activity  diagram  dapat  menjelaskan  dengan  baik  urutan  aktivitas dalam  sebuah  proses.  Activity  diagram  menggambarkan  aktivitas  dari  sistem, bukan    apa  yang  dilakukan  oleh  aktor.  Pada  penelitian  ini  activity  diagram digunakan  untuk  memperjelas  aktivitas  setiap  use  case  yang  telah  dirancang sebelumnya,  yakni:  use  case  login,  use  case  tambah  istilah  sop,  dan  use  case pencarian istilah sop.
System Login
Admin LPM System Ph as e Masukkan User Name dan Password Autentifikasi User Name dan Password Tampilkan Form Tambah Istilah SOP Tambahkan Istilah SOP Valid Tidak Valid
Gambar 3. Activity Diagram Sistem Login
System Pencarian Istilah SOP
User LPM
System Ph as e Masukkan Istilah/ Teks Cari Istilah/Teks di Dalam Basis Data Tampilkan Informasi Istilah/Teks tidak ditemukan Tampilkan Informasi Jumlah Istilah dan Posisi String yang ditemukan Istilah ditemukan Istilah tidak ditemukan
Gambar 4. Activity Diagram Sistem Tambah Istilah SOP
System Pencarian Istilah SOP
User LPM System Ph as e Masukkan Istilah/ Teks Cari Istilah/Teks di Dalam Basis Data Tampilkan Informasi Istilah/Teks tidak ditemukan Tampilkan Informasi Jumlah Istilah dan Posisi String yang ditemukan Istilah ditemukan Istilah tidak ditemukan
Gambar 5. Activity Diagram Sistem Pencarian Istilah SOP

## Rancang Bangun Sistem
Rancang bangun sistem bertujuan untuk menentukan modul-modul apa saja yang akan di buat pada proses pengembangan sistem. Untuk memudahkan pemetaan modul-modul yang digunakan, pada penelitian ini rancang bangun sistem digambarkan dalam bentuk diagram  alir  (flowchart)  yang  didasarkan  pada  analisis  sistem  yang  telah  dijabarkan sebelumnya, berikut flowchart rancang bangun sistem pencarian istilah SOP.

## Flowchart Sistem
Mulai Tampilkan Halaman Pencarian Cari Istilah or Tambah Istilah Tampilkan Halaman Hasil Cari Tampilkan Halaman Login Tampilkan Halaman Tambah Istilah SOP Selesai
Gambar 6. Flowchart Sistem Pencarian Istilah SOP
Flowchart Algoritma Knuth Morris Pratt
Mulai
Input i=0; j=0; Apakah Pattern[i] = String[j] Apakah i = Len[Pattern] Ya i = i – Offsets [i] j = j + Offsets [i] Tidak j = j + 1 j – 1 i = 1 i = i + 1; Apakah j = Len[String] Ya Tidak Selesai Ya Tidak
Gambar 7. Flowchart Knuth Morris Pratt

## Rancang Bangun Antar Muka Sistem
Rancang bangun antar muka sistem di buat sebagai rancangan awal sebelum dilakukan perancangan sistem yang sebenarnya, yakni menggunakan bahasa pemrograman HTML dan PHP. Berdasarkan pada analisis sistem dan kebutuhan fungsional sebelumnya, terdapat tiga rancangan antar muka yang akan di buat yakni, antar muka pencarian, antar muka login, dan antar muka tambah istilah SOP.

## Antar Muka Pencarian
Antar muka pencarian SOP, di buat untuk melakukan proses pencarian dan menampilkan informasi hasil pencarian dari pattern yang di cari. Dalam antar muka pencarian ini, Terdapat satu teks, dua button, dan halaman list hasil pencarian dengan bentuk rancangan sebagai berikut:
Cari Tambah
Hasil Pencarian
Jumlah istilah yang ditemukan : Posisi String dari istilah yang ditemukan :
Nama SOP LPM List istilah SOP dan makna

## Gambar 8. Antar Muka Pencarian Istilah SOP

## Antar Muka Login
Antar muka login, di buat untuk melakukan proses login dan sebelum dilakukan proses penambahan istilah baru. Dalam antar muka login ini, Terdapat dua teks dan dua button dengan bentuk rancangan antar muka sebagai berikut:
Login Kembali User Name Password Gambar 9. Antar Muka Login

## Antar Muka Tambah Istilah Baru
Antar muka tambah istilah baru SOP, di buat untuk melakukan proses penambahan istilah bar uke dalam basis data. Dalam antar muka pencarian ini, Terdapat tiga teks, dua button dengan bentuk rancangan sebagai berikut:
Simpan Kembali Id Istilah Nama Istilah Makna Istilah Gambar 10. Antar Muka Login

## 3. Hasil dan Pembahasan Pengujian Sistem
Pada  proses  awal  pencocokan  string  algoritma  KMP  akan  menghitung  fungsi pinggiran  dari  sebuah  pattern  (P)  yang  ingin  di  cari,  proses  ini  sering  diistilahkan dengan  preprocessing  (proses  awal).  Tujuan  utama  dari  preprocessing  adalah  untuk melompati  atau  melewati  pergeseran  yang  tidak  diperlukan  pada  saat  proses perbandingan  string  berlangsung.  Dengan  kata  lain,  fungsi  pinggiran  adalah  cara menentukan  besaran  pergeseran  nilai  pattern  (P)  yang  dimungkinkan  dengan membandingkan  teks  dengan  pattern  sebelum  proses  pencarian  dilakukan.  Fungsi pinggiran dilambangkan dengan b(j) yang merupakan ukuran awalan dari Panjang string pattern (P) serta akhiran dari P[1..j].
Sebagai  contoh  untuk  melihat  perhitungan  fungsi  pinggiran  secara  manual  dari algoritma KMP seperti yang telah dijelaskan pada paragraph di atas, pada penelitian ini dilakukan  uji  coba  perhitungan  fungsi  pinggiran  dengan  mengambil  dua  sampel istilah/teks  yang  akan  dijadikan  sebagai  pattern  pencarian  yakni:  istilah/teks  “auditor auditee”.
Contoh. Diketahui: Istilah/Teks = kegiatan audit; Pattern = auditee. Pada  proses  pencocokan  ini  ditetapkan  indeks  awal  dari  pattern  (P)  bernilai  0,  dengan perhitungan awalan dan akhiran dari pattern (P) adalah sebagai berikut: Awalan pattern (P): [], a, au, aud, audi, audit, audite. Akhiran pattern (P): [], e, ee, tee, itee, ditee, uditee.
Dengan nilai fungsi pinggiran dari setiap karakter adalah sebagai berikut:
J 0 1 2 3 4 5 6 P[j] a u d i t e e B[j] 0 0 0 0 0 1 0
Dimana: j = Indeks pattern (P), P[j] = Pattern (P), dan B[j] = Fungsi Pinggiran. Ditentukan nilai Nilai pinggiran yang terpanjang untuk string P[0..5] adalah b(j) = 1. Berikut disajikan langkah-langkah pencocokan istilah/teks dengan pattern (P).

## PENERAPAN ALGORITMA KNUTH-MORRIS-PRATT PADA FITUR PENCARIAN DEFINISI ISTILAH STANDAR OPERASIONAL PROSEDUR (SOP) PADA LEMBAGA PENJAMINAN MUTU UIN AR-RANIRY

## Langkah pertama
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Teks (T) a u d i t o r a u d i t e e Pattern (P) a u d
i t e e
Pada  langkah  pertama  proses  pencocokan  dari  kiri  teks  dengan  kiri  pattern  terdapat beberapa karakter yang bersesuaian yakni, karakter teks ke-0 (P0) sampai karakter teks ke-4  (P4)  dengan  karakter  pattern  ke-0  sampai  karakter  pattern  ke-4,  dengan  nilai karakter  teks  =  “audit”  dan  nilai  pattern  =  “audit”.  Namun  karakter  teks  ke-5  dengan karakter  pattern  ke-5  tidak  bersesuaian  dengan  nilai  karakter  teks  =  “o”  dan  nilai karakter  pattern  =  ”e”,  maka  pattern  digeser  sebanyak  i  –  b  dimana  i  adalah  indeks karakter pattern yang bersesuaian dengan indeks karakter teks yakni sebesar 5 karakter, dan b adalah nilai fungsi pinggiran terpanjang dengan nilai 1. Maka I  – b = 5 – 1 = 4, sehingga pattern di geser sebanyak empat karakter ke kanan.
Langkah ke dua
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Teks (T) a u d i t o r a u d i t e e Pattern (P) a u d i t
e e
Pada langkah ke dua proses pencocokan dari kiri teks (T4) dengan kiri pattern (P4) tidak terdapat karakter  yang bersesuaian, dengan nilai  karakter teks = t dan nilai pattern = a sehingga pattern digeser ke kanan sebanyak satu karakter.

## Langkah ke tiga
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Teks (T) a u d i
t
O r
a u d i t e e Pattern (P) A u d i t e e
Pada  langkah  ke  tiga  proses  pencocokan  dari  kiri  teks  (T5)  dengan  kiri  pattern  (P5) tidak terdapat karakter yang bersesuaian, dengan nilai karakter teks = o dan nilai pattern = a sehingga pattern digeser ke kanan sebanyak satu karakter.

## Langkah ke empat
i 0 1 2 3 4 5 6 7 8 9 10
11 12 13 14 Teks (T) a u d i
t O r
a u d i t e e Pattern (P) a u d i t e e
Pada  langkah  ke  empat  proses  pencocokan  dari  kiri  teks  (T6)  dengan  kiri  pattern  (P6) tidak terdapat karakter yang bersesuaian, dengan nilai karakter teks = r dan nilai pattern = a sehingga pattern digeser ke kanan sebanyak satu karakter.

## Langkah ke lima
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Teks (T) A u d i
t o r a u d i t e e Pattern (P) a u d i t e e
Pada  langkah  ke  lima  proses  pencocokan  dari  kiri  teks  (T7)  dengan  kiri  pattern  (P7) tidak  terdapat  karakter  yang  bersesuaian,  dengan  nilai  karakter  teks  =  “  ”  dan  nilai pattern = a sehingga pattern digeser ke kanan sebanyak satu karakter.

## Langkah ke enam
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Teks (T) A u d i
t o r a u d i t e e Pattern (P) a u d i t e e
Pada  langkah  ke  enam  proses  pencocokan  dari  kiri  teks  (T)  dengan  kiri  pattern  (P) ditemukan  pola  keseluruhan  pattern  bersesuaian  dengan  keseluruhan  karakter  teks, sehingga proses pencocokan selesai.

## Implementasi Antar Muka Sistem
Berikut  disajikan  implementasi  antar  muka  sistem  yang  telah  dikembangkan  dalam penelitian ini:
a. Implementasi Antar Muka Pencarian Istilah SOP
Gambar 11. Antar Muka Pencarian Istilah SOP

## b. Implementasi Antar Muka Login
Gambar 12. Antar Muka Login

## c. Implementasi Antar Muka Tambah Istilah SOP
Gambar 13. Antar Muka Tambah Istilah SOP Baru

## d. Implementasi Antar Muka Ubah dan Hapus Data Istilah SOP
Gambar 14. Antar Muka Ubah dan Hapus Istilah SOP

## Pengujian Kelayakan Sistem
Dalam  penelitian  ini,  pengujian  kelayakan  sistem  dilakukan  dengan  menggunakan indikator  pertanyaan  yang  diturunkan  dari  standar  fungsionalitas  yang  telah  disusun pada bab 3 sebelumnya. Indikator pertanyaan tersebut, di skalakan dengan skala linkert agar penilaian terhadap setiap indikator fungsionalitas dapat dikuantitatifkan. Skala yang digunakan pada penelitian ini adalah skala 1 – 5 yakni, 1 = kurang sekali, 2 = kurang, 3 = cukup, 4= baik, 5 = sangat baik. Total keseluruhan nilai  adalah:  5×7  ꞊  35,  dimana  5  adalah  nilai  skala  tertinggi  (maksimal),  sedangkan  7 adalah jumlah   ndicator pertanyaan.
Berdasarkan  pada  indikator  pertanyaan  yang  diberikan,  diperoleh  hasil  penilaian  pada Tabel 1.
Tabel 1. Hasil Pengujian Kelayakan Sistem No Komponen Pengujian Hasil Pengujian yang Diharapkan Hasil 1 Pencocokan String yang di cari Aplikasi dapat menemukan kata (string) yang tersimpan di dalam basis data sesuai dengan kata (string) yang di inputkan pengguna ( user ) pada fitur pencarian 5 2 Kecepatan Pencarian Fitur pencarian dapat mengeluarkan prediksi kata (string) yang tersimpan pada basis data dalam jangka waktu kurang dari 1 detik 3 3 Penambahan data ke dalam basis data Aplikasi berhasil menambahkan data ke dalam basis data yang telah disediakan 5 4 Penghapusan data pada basis data Aplikasi berhasil menghapus data yang tersimpan pada basis data sesuai dengan id-nya 5

## PENERAPAN ALGORITMA KNUTH-MORRIS-PRATT PADA FITUR PENCARIAN DEFINISI ISTILAH STANDAR OPERASIONAL PROSEDUR (SOP) PADA LEMBAGA PENJAMINAN MUTU UIN AR-RANIRY
5 Pengubahan data pada basis data Aplikasi berhasil mengubah data yang tersimpan pada basis data sesuai dengan id-nya 5 6 Kemudahan penggunaan aplikasi Aplikasi menyediakan fitur informasi penggunaan aplikasi 3 7 Tampilan aplikasi Aplikasi memiliki tampilan yang menarik 2 Total 28
Terlihat  pada  tabel  di  atas,  nilai  total  keseluruhan  pengujian  sistem  dari  7  indikator pertanyaan yakni bernilai total 28, agar dapat menghitung persentase kategori kelulusan kebutuhan fungsional dari sistem yang dikembangkan, maka nilai total hasil pengujian sistem tersebut dikuantitatifkan dengan hasil sebagai berikut:
χ = 28 35 = 0. 8 Dimana: 0.8 = Mean (rata-rata) 28 = Jumlah keseluruhan nilai yang didapatkan 35 = Jumlah total keseluruhan nilai maksimal indikator
Sehingga  nilai  mean  (rerata)  dari  hasil  pengujian  adalah  0.8  atau  80%.  Agar  dapat  di deskripsikan,  maka  nilai  persentase  yang  di  didapatkan  tersebut  harus  di  kualitatifkan, dengan  menggunakan  standar  predikat  (kategori)  kelulusan  yang  di  adopsi  dari suharsimi arikunto (2015:58)  yang dapat di lihat pada tabel 2.
Tabel 2.  Standar Kategori Kelulusan
No. Interval Kategori 1. 81 – 100% Sangat Layak 2. 61 – 80% Layak 3. 41 – 60% Cukup 4. 21 – 40% Kurang Layak 5. 0 – 20% Tidak Layak

## 4. Kesimpulan
Berdasarkan hasil uji kelayakan sistem, pengembangan sistem pencarian SOP ini layak untuk digunakan dan dapat meningkatkan efisiensi pencarian istilah SOP LPM, karena berada pada interval 61 – 80% dengan nilai mean (rerata) 0.8 atau setara dengan 80%.

## DAFTAR PUSTAKA
[1]    T. Atmoko, “STANDAR OPERASIONAL PROSEDUR (SOP) DAN AKUNTABILITAS KINERJA INSTANSI PEMERINTAH,” vol. 1934, no. 7, 2004.
[2] V. Mutiawani, “Hashtable sebagai Alternatif dari Algoritma Pencarian Biner pada Aplikasi E-Acesia,” PhD Propos., vol. 1, no. 2, pp. 943–952, 2015.
[3] L. H. Atrinawati, “Analisis Kompleksitas Algoritma untuk Berbagai Macam Metode
Pencarian Nilai (Searching) dan Pengurutan Nilai (Sorting) pada Tabel,” Progr. Stud. Tek. Inform., pp. 1–13.
[4] M. Rossaria, B. Susilo, and Ernawati, “Implementasi Algoritma Pencocokan String Knuth-Morris-Pratt Dalam Aplikasi Pencarian Dokumen Digital Berbasis Android,” J. Rekursif, vol. 3, no. 2, pp. 183–195, 2015.
[5] D. Effendi, T. Hartono, and A. Kurnaedi, “PENERAPAN STRING MATCHING MENGGUNAKAN ALGORITMA BOYER-MOORE PADA TRANSLATOR BAHASA PASCAL KE C,” Sist. Informasi, Univ. Komput. Indones., vol. 11, no. 2, pp. 262–275, 2014.
[6] A. S. A. Barakbah, Ali Ridho, Tita Karlita, Logika dan Algoritma. Program Studi Teknik Informatika Program Studi Teknik Informatika Departemen Teknik Informatika dan
Komputer Departemen Teknik Informatika dan Komputer Politeknik Elektronika Negeri Surabaya, 2013.
[7] A. M. Zaky, Implementasi Algoritma Knuth Morris Pratt Pada Perancangan Game Hanacaraka. JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS NEGERI SEMARANG, 2015.
[8] G. H. Ekaputri and Y. A. Sinaga, “Aplikasi Algoritma Pencarian String Knuth-Morris-Pratt dalam Permainan Word Search,” Tek. Inform. Inst. Teknol. Bandung, pp. 2–4, 2006.
[9] I. M. Tanjung, IMPLEMENTASI ALGORITMA KNUTH-MORRIS-PRATH STRING MATCHING UNTUK MENCARI KATA ATAU ISTILAH PADA KAMUS KOMPUTER BERBASIS ANDROID., 1st ed. Medan: PROGRAM STUDIEKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN,
2015.
[10] Ali Muhson, “Teknik Analisis Kuantitatif,” Makal. Tek. Anal. II, pp. 1–7, 2006.
Website:
Santoso, Hari. “Implementasi Algoritma String Matching Knuth-Morris-Pratt Menggunakan PHP”. 10 Agustus 2018. https://www.elangsakti.com/2013/03/implementasi-algoritma- string-matching.html.