## Aplikasi Pencarian Dengan Menggunakan Algoritma Knuth Morris Pratt Pada Berkas Dokumen Shipment
Rusito, Nurul Khasanah
Sistem Komputer, Sekolah Tinggi Elektronika dan Komputer PAT (STEKOM), Semarang Indonesia Jln. Majapahit 605, Semarang E-mail: rusito@stekom.ac.id

## Abstrak
Pencarian  berkas  transaksi  shipment  sangatlah  vital  untuk  sebuah  perusahaan  yang  bergerak  di  bidang  ekspor  impor.  Jika berkas  tersebut  hilang  atau  terselip  atau  tertukar  maka  pengurusan  ekspor  dan  impor  tidak  bisa  diselesaikan  tepat  waktu. Sistem  yang  selama  ini  berjalan  dalam  pencarian  berkas  masih  manual  dengan  mencari  berkas  dalam  bentuk  fisik  pada lemari berkas file atau mencari pdf attachment yand terdapat di email. Dengan sistem pencarian berkas yang baru diharapkan dapat  menghemat  waktu  pencarian  dan  mengatasai  permasalahan  yang  ada.  Sistem  ini  dikembangkan  dengan  bahasa pemograman ASP.net MVC dan database SQLite dengan menerapkan algoritma knuth morris pratt . Dari hasil uji efektifitas, dapat disimpulkan bahwa  efektifitas sistem  yang baru  jauh lebih besar dari pada sistem  yang lama,  yaitu sebesar 85,00%. Sedangkan untuk sistem yang lama hanya sebesar 45,00%. Ini menunjukkan bahwa sistem yang baru sudah lebih baik dan efektif daripada sistem yang lama.

## Kata Kunci:  Aplikasi Pencarian, Algoritma Knuth Morris Pratt, Berkas, Dukumen, Shipment

## Abstract
File  search  of  shipment  transactions  is  vital  for  a  company  engaged  in  export  import.  If  the  file  is  lost  or  tucked  or exchanged, the export and import management cannot be completed on time. The system that has been running in the search for files is still manual by searching for files in physical form in file file cabinets or searching for pdf attachments found in e- mail. With the new file search system, it is expected to save search time and overcome existing problems. This system was developed with ASP.net MVC programming language and SQLite database by applying the Knuth Morris Pratt algorithm. From the results of the effectiveness test, it can be concluded that the effectiveness of the new system is far greater than the old system, which is equal to 85.00%. While for the old system only 45.00%. This shows that the new system is better and more effective than the old system..
Keywords : Search Applications, Knuth Morris Pratt Algorithm, File, Document, Shipment

## 1. PENDAHULUAN
Perubahan  dan  pembaharuan  dalam  bidang  teknologi  informasi  seperti  otomatisasi  dan  komputerisasi  telah berkembang  dengan  cepat  dan  menuntut  kalangan  industri  dan  praktisi  yang  berkecimpung  didalamnya  untuk lebih  siap  menghadapi  kemajuan  yang  ada,  dengan  selalu  mencari  inovasi-inovasi  baru  sebagai  solusi pemecahan dari setiap persoalan yang dihadapi.
Perusahaan shipment memiliki  banyak  data  transaksi  yang  digunakan  dalam  penyelesaian  suatu shipment . Pencarian berkas transaksi shipment sangatlah vital untuk sebuah perusahaan yang bergerak di bidang ekspor impor dimana berkas-berkas yang terkumpul tersebut didapat dari pihak pembeli dan penjual baik yang berasal dari dalam negeri maupun luar negeri.
Sistem yang selama ini berjalan dalam penyimpanan berkas masih manual dalam bentuk fisik berkas file dalam lemari berkas dan pdf attachment menggunakan email sebagai media penyimpanan, dalam satu transaksi shipment bisa terdapat lebih dari satu email yang berasal dari pihak pembeli maupun penjual dimana user harus mengecek  setiap  email  yang  bersangkutan  dengan  transaksi shipment. Hal  ini  menjadikan space penyimpanan ruang  memakan  tempat  dan  pencarian  berkas  membutuhkan  waktu  yang  relatif  lama  sehingga  secara  tidak langsung akan  berpengaruh penyajian  informasi  menjadi sangat tidak efektif.    Jika  berkas tersebut hilang atau terselip atau tertukar maka pengurusan ekspor dan impor tidak bisa diselesaikan tepat waktu.
Dengan  latar  belakang  permasalahan  tersebut  maka  diperlukan  suatu  sistem  komputerisasi  yang dilengkapi  dengan  metode  pencarian  yang  akurat  dan  cepat  menggunakan  metode  pencocokan  string  dengan algoritma Knuth-Morris-Pratt (KMP) serta  dikembangkan  dengan  bahasa  pemograman  ASP.net  MVC  dan database  SQLite.  Pencarian  string  yang  juga  bisa  disebut  pencocokan  string (String  Matching) merupakan algoritma untuk melakukan pencarian semua kemunculan string pendek yang disebut pattern di string yang lebih panjang  yang  disebut  teks  (Charras,  1977  :  11).  Dengan  algoritma  KMP  waktu  pencarian  dalam  pencocokan pattern  dan  teks  dapat  berkurang  dikarenakan  algoritma  ini  melakukan  sejumlah  pergeseran  lebih  jauh  sesuai dengan  informasi  ketidakcocokan  string  antara teks  dan  pattern  (Sri  Wulan,  2011).  Melalui  penerapan  metode ini  maka proses pencarian data berdasarkan  masukan kata/ pattern dapat menghasilkan  informasi dengan cepat sehingga layanan informasi berkas shipment menjadi lebih baik dan efisien karena user hanya perlu melakukan pencarian ke dalam aplikasi pencarian berkas yang sudah terkoneksi dengan email user untuk upload dokumen ke  dalam  sistem  dan  untuk  pencarian  berkas  user  bisa  memasukkan pattern atau  kata  kunci  dari  berkas  yang
ingin dicari ke dalam input pencarian berkas, yang hasilnya nanti berkas yang dicari bisa langsung ditampilkan atau bisa di- download untuk keperluan kepengurusan ekspor dan  impor. User tidak perlu  lagi  membuka email satu per satu atau membuka file berkas berlembar-lembar untuk mencari berkas transaksi.

## 2. METODE PENELITIAN

## 2.1 Research and Development (RND)
Menurut  Borg  and  Gall  (1983:775),  yang  dimaksud  dengan  model  penelitian  dan  pengembangan  adalah “a process used develop and validate educational  product” . Kadang-kadang penelitian ini juga disebut ‘research based  development’,  yang  muncul  sebagai  strategi  dan  bertujuan  untuk  meningkatkan  kualitas  pendidikan. Selain  untuk  mengembangkan  dan  memvalidasi  hasil-hasil  pendidikan, research  and  development juga bertujuan  untuk  menemukan  pengetahuan-pengetahuan  baru  melalui ‘basic  research’ ,  atau  untuk  menjawab pertanyaan-pertanyaan khusus tentang masalah-masalah yang bersifat praktis melalui ‘applied research’ , yang digunakan untuk meningkatkan praktik-praktik pendidikan. P Pendekatan research  and  development (RND)  dalam  pendidikan  meliputi  sepuluh  langkah.  Adapun bagian langkah-langkah penelitiannya seperti ditunjukkan pada gambar berikut.
Gambar 1 . Bagan RND
Selanjutnya, untuk dapat memahami tiap langkah tersebut dapat dijelaskan sebagai berikut: 1. Research  and  information  collection .  (melakukan  penelitian  dan  pengumpulan  informasi).  Katakanlah, didahului dengan penelitian awal terkait dengan produk pendidikan yang akan dikembangkan.
2. Planning (melakukan perencanaan).
3. Develop Preliminary form of Product . (mengembangkan bentuk awal produk).
4. Preliminary Field Testing . (melakukan uji lapangan awal). 5. Main Product Revision . (melakukan revisi produk utama).
6. Main Field Testing . (melakukan uji lapangan untuk produk utama).
7. Operational Product Revision . (melakukan revisi produk operasional).
8. Operational Field Testing . (melakukan uji lapangan terhadap produk final).
9. Final Product Revision . (melakukan revisi produk final). 10. Disemination and Implementation . (diseminasi dan implementasi).

## 2.2 Penelitian Terkait dan Landasan Teori
1. Maya  Rosaria,  Boko  Susilo,  Ernawati,  Universitas  Bengkulu  2010,  Jurnal  dengan  judul:  Implementasi Algoritma  Pencocokan  String Knuth  Morris  Pratt dalam  Aplikasi  Pencarian  Dokumen  Digital  Berbasis Android
Pada  penelitian  ini  dibangun  sebuah  aplikasi  yang  bertujuan  untuk  mencari  dokumen  yang  berasal  dari Android dan mengaplikasikannya dengan menggunakan algoritma pencocokan string sebagai salah satu cara untuk menemukan dokumen digital yang terdapat pada Android menggunakan algoritma Pencocokan string Knuth-Morris-Pratt sebagai  algoritma  dalam  aplikasi  pencarian  dokumen.  Penelitian  ini  telah  berhasil dibangun,yang  dapat  melakukan  proses  pencarian  dokumen  dengan  menggunakan  pergeseran  dari  Fungsi Pinggiran  pada  algoritma Knuth-Morris-Pratt dan  pencarian  yang  dapat  dilakukan  dengan  menggunakan fungsi Wildcard atau karakter string  yang  berfungsi  menggantikan peran karakter string alphabet 26 huruf. Aplikasi  pencarian  dokumen  digital  berbasis  Android  dengan  menggunakan  algoritma Knuth-Morris-Pratt
ini juga mampu membaca dan menemukan dokumen dengan ekstensi yang sama dan judul yang di inputkan mengandung karakter yang sama tetapi beda penulisan.
2. Abi Mahan Zaki, Universitas Negeri Semarang 2015, Skripsi dengan judul: Implementasi Algoritma Knuth Morris Pratt pada Perancangan Game Hanacaraka
Berdasarkan hasil penelitian yang dilakukan dapat diambil kesimpulan telah berhasil mengimplementasikan  algoritma Knuth  Morris  Pratt pada  perancangan game Hanacaraka.  Hasil  pengujian pada perangkat lunak diperoleh presentase 97,14% pada pengujian fungsionalitas perangkat lunak. Dari skor presentase  yang  didapat  maka  kualitas  perangkat  lunak  telah  mempunyai  predikat  Sangat  Layak.  Kualitas pencocokan string dalam game berhasil ditingkatkan dengan adanya pengecekan jawaban yang hampir benar dimana tidak bisa dilakukan jika tidak menggunakan algoritma Knuth Morris Pratt.
2.3 Kerangka Berfikir
Gambar 2. Kerangka Berfikir

## 3. ANALISA DAN PEMBAHASAN

## 3.1 Analisa Penerapan Knuth Morris Pratt
Dalam pengembangan dengan algoritma KMP, berikut ini adalah penerapan algoritma pencocokan string dalam sistem pencarian berkas shipment:
1. Terlebih dahulu menentukan pattern (P) dan text (T) yang akan dicari. Dalam kasus ini, pattern (P) dan text (T) yang akan dicari adalah nomor pada berkas Bill of Lading sebagai berikut :
P = 002006 Y T Customer Service Sistem  pencarian  data transaksi  shipment  yang masih  manual  meng- haruskan  user  membuka email  dan  lembar  berkas satu per satu Penyimpanan dokumen dalam bentuk fisik/ print out lembar berkas,  rawan  akan  hilang  dan terselip Tidak tersedia nya sistem pencarian yang terintegrasi antara email dan dokumen PENGUMPULAN DATA DESAIN PRODUK VALIDASI  DESAIN PRODUK IDENTIFIKASI MASALAH Revisi Desain UJI COBA PRODUK PT. YUDHANUSA EKSPRESINDO CARAKA

## PENERAPAN ALGORITMA KNUTH MORRIS PRATT PADA APLIKASI
PENCARIAN BERKAS BERBASIS WEB ( Studi Kasus di PT. YUDHANUSA EKSPRESINDO CARAKA ) Observasi Studi Literatur Wawancara ASP.net MVC , SQLite WEB Aplikasi Algoritma KMP , tool spell checker Tenaga Ahli Pakar User

## T = HKGSRG002006A
2. Selanjutnya cara menghitung nilai pinggiran dari pattern . Nilai pinggiran didefinisikan sebagai ukuran awalan  terpanjang  dari pattern. Nilai  pinggiran f(j) didefinisikan  sebagai  ukuran  awal  terpanjang  dari  P  yang merupakan akhiran dari P[1..j]. f(j)=j+1 Fungsi pinggiran tersebut akan dijabarkan dalam Tabel berikut; Keterangan: j = indeks P[j]   = Pattern dari indeks ke j=0 sampai dengan j=n f(j)   = Fungsi pinggiran dari indeks ke j=0 sampai dengan j=n dan diawali dengan f(0) = 0 langkah penghitungan f(j) ; a. f(0) = 0
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6 f(j) 0
b. f(1) , melalui pencocokan P[j] (0) dengan Pnext[j] (n) P[j] 0 = 0 P[j] 1 = 0 P[j] 0 = P[j] 1 ----- > terjadi kecocokan Jika terjadi kecocokan maka nilai f(j) = j + 1 Jadi nilai f(1) = 1
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6
f(j) 0 1
c. f(2) , bergeser ke kanan untuk mulai pencocokan berikutnya yaitu P[j] 1 dengan P[j] 2 P[j] 1 = 0 P[j] 2 = 2 P[j] 1 ≠ P[j] 2 ----- > tidak ada kecocokan Jika tidak ada kecocokan maka nilai f(j) = 0 Jadi nilai f(2) = 0
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6 f(j) 0 1 0
d. f(3)  ,  karena  tidak  ada  kecocokan  pada  f(j)  sebelumnya  maka  pencocokan  diulang  atau  bergeser mundur ke kiri ke P[j] 1 dicocokan dengan P[j] 3 P[j] 1 = 0 P[j] 3 = 0 P[j] 1 = P[j] 3 ------ > terjadi kecocokan Karena sebelumnya dijelaskan jika terjadi kecocokan maka nilai f(j) = j +1 Jadi perhitungan nilai f(3) adalah ; Nilai f(j) pada P[j] 1 + 1 = 1 + 1 = 2 Jadi nilai f(3) = 2
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6 f(j) 0 1 0 1
e. f(4) , bergeser ke kanan untuk mulai pencocokan berikutnya yaitu P[j] 2 dengan P[j] 4 ; P[j] 2 = 0 P[j] 4 = 4 P[j] 2 ≠ P[j] 4 ----- > tidak ada kecocokan Jadi nilai f(4) = 0
j 0 1 2 3 4 5
P[j] 0 0 2 0 0 6 f(j) 0 1 0 1 2
f. f(5) , pencocokan diulang atau bergeser ke kiri ke P[j] 1 lagi P[j] 1 = 0 P[j] 5 = 6 P[j] 1 ≠ P[j] 5 ----- > tidak ada kecocokan Jadi nilai f(5) = 0
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6 f(j) 0 1 0 1 2 0
Dari perhitungan diatas didapat nilai fungsi pinggiran pada pattern adalah ;
j 0 1 2 3 4 5 P[j] 0 0 2 0 0 6 f(j) 0 1 0 1 2 0
3. Lakukan peng-index-an atau memberikan nilai indeks ke text, yang nanti akan dicocokan dengan tabel pattern  yang  sudah  dibuat  dengan  fungsi  pinggiran  sebelumnya  .  Adapun  nilai  indeks  pattern  dan  text  akan dijabarkan dalam tabel berikut ;
i 0 1 2 3 4 5 6 7 8 9 10 11 12 T(i) H K G S R G 0 0 2 0 0 6 A
Tabel Nilai Indeks untuk Pattern dan fungsi pinggiran dari Pattern :
j 0 1 2 3 4 5 P(j) 0 0 2 0 0 6 f(j) 0 1 0 1 2 0 4. Cara perhitungan algoritma Knuth Morris Pratt adalah ;
Bandingkan ujung kiri teks dan ujung kiri pada Pattern dimulai dari i ke 0 sampai dengan i ke n .
T(i) H K G S R G 0 0 2 0 0 6 A P(j) 0 0 2 0 0 6
Karena P(j) tidak sama dengan T(i) maka P(j) melakukan pergeseran sampai kondisi T(i) == P(j).
T(i) H K G S R G 0 0 2 0 0 6 A P(j) 0 0 2 0 0 6
Ketika  kondisi  P(j)  ==  T(i)  maka  untuk  proses    pencarian,  pattern  nya  di  mulai  dari  T(i)+1  dan  P(j)+1 sampai akhir pattern atau sampai panjang pattern terpenuhi dengan kondisi P(j) == T(i)   dan i <= T(m)
T (i) H K G S R G 0 0 2
0 0 6 A P (j) 0 0 2 0 0 6 T(i) H K G S R
G 0 0
2 0 0 6 A P(j) 0 0 2 0 0 6 T(i) H K G S R G 0 0 2 0 0 6 A
P(j) 0 0 2 0 0 6 T(i) H K G S R G 0 0 2 0 0 6 A P(j) 0 0 2 0 0 6 T(i) H K G S R G 0 0 2 0 0 6 A P(j) 0 0 2 0 0 6
Pencarian berhasil ,semua pattern telah ditemukan tapi kondisi i masih i <= T(m) sehingga masih melakukan proses pencarian sampai kondisi i  >  T(m).
T(i) H K G S R G 0 0 2 0 0 6 A P(j) 0 0 2 0 0 6
lihat tabel pinggiran  f , karena sudah  melakukan pergeseran sampai  akhir pattern maka nilai pinggiran pattern yang  diambil  adalah  yang  terakhir  f(j)  =  0,  maka  pencocokan  dilakukan  kembali  ke  posisi  index  ke  0  =  awal pattern , dan P(j) di bandingkan dengan T(i) , dimana P(j) = 0 dan T(i) = A ,tidak ada kecocokan disini, sehingga pencocokan akan dilanjutkan tetapi karena nilai I > dari T(m) atau panjang t ext maka pencarian dihentikan.
T(i) H K G S R
G 0 0
2 0 0 6 A P(j) 0 0 2 0 0 6
Jika  semua  huruf  pada pattern sudah  di  cocokan dengan text maka  akan  di  temukan  sebuah  pola  kosa  kata  di dalam teks .  Dalam  menemukan  sebuah  pola pattern di  dalam text akan  dilakukan  pergeseran  beberapa  kali untuk  mencocokan  setiap  karakter  pada pattern yang  di  mulai  dari  sebelah  kiri  untuk  mencocokan  setiap karakter pada text .
Contoh ilustrasi dari bagaimana algoritma Knuth Morris Pratt bekerja ini menggunakan pattern (002006) yang panjangnya  enam  karakter  melakukan  pencocokan  dengan text yang  panjangnya  tiga  belas  karakter  untuk menemukan sebuah pola kata yang sama dengan  pattern tersebut. Dengan  melakukan pencocokan satu persatu di dalam pattern dengan seluruh karakter yang terdapat pada text.

## 3.2 Pengujian Alpha
Pengujian  sistem  dilakukan  dengan  menggunakan  sistem  test,  yaitu  menguji  kemampuan  keseluruhan  yang disediakan aplikasi dengan melihat integrasi dari semua paket sistem.
Tabel 1. Pengujian Sistem Alpha
No Kelas Uji Teknik Pengujian Kriteria Evaluasi Kerja 1 Authentifikasi Administrator Black Box Simulasi  sistem  memeriksa  proses login  administrator,  berhasil  atau tidak,  kemudian  menyimpan  session adminis-trator pada saat  proses login, dan mematikan session saat administrator  sudah  logout,  sehingga sistem  tidak  bisa  dibuka  lagi  kecuali harus login kembali. 2 Pengolahan data customer Black Box Sistem  dapat  menampilkan  list  data customer,  menambah,  menghapus, mengubah dan mencari data customer. 3 Pengolahan data agent Black Box Sistem  dapat  menampilkan  list  data agent, menambah, menghapus,
mengubah dan mencari data agent. 4 Pengolahan data country Black Box Sistem  dapat  menampilkan  list  data country, menambah, menghapus, mengubah dan mencari data country. 5 Pengolahan data import Black Box Sistem  dapat  mengolah  data  import, mengunggah  dokumen  dari  email, mengirim  dokumen  ke  alamat  email agent dan customer,  mengubah, serta menghapus dan mencari data import. 6 Pengolahan export Black Box Sistem  dapat  mengolah  data  export, mengunggah  dokumen  dari  internal storage, mengirim dokumen ke alamat  email  agent  dan  customer, serta    mengubah,  menghapus  dan mencari data import. 7 Pengolahan pencarian berkas Black Box Sistem  dapat  mencari  pattern  yang diinginkan  dan  juga  berdasarkan pattern suggestion, menampilkan hasil  pencarian  beserta  link  berkas yang  merujuk  pada  file  pdf  yang dapat diunduh.

## 3.3 Hasil Uji Efektifitas
Tabel 2. Instrumen Pengujian Data Aspek – Aspek Kinerja Sistem Sistem Kerja Ketepatan Penyelesaian 1 2 3 4 Kemudahan Mengakses Informasi 1 2 3 4 Kecepatan Kinerja 1 2 3 4 Kemudahan Kinerja 1 2 3 4
Keterangan : 4 = Sangat Baik 3 = Baik 2 = Kurang Baik
1 = Tidak Baik
Untuk  menghitung  rata  –  rata  efektivitas  sistem  kerja  dapat  ditentukan  skor  ideal  terlebih  dahulu dengan rumus :
Keterangan : 4 = Skor Jawaban Tertinggi 4 = Jawaban Butir Instrumen 3 = Jumlah Responden
Keterangan : 4 = Skor Tertinggi 3 = Jumlah Responden
Dibawah ini adalah hasil observasi beserta perhitungan tingkat efektivitas sistem kerja. Tabel 3. Kinerja Sistem Lama Responden Skor Untuk Butir Nomor Jumlah A B C D User 1 2 2 1 2 7 User 2 2 2 1 2 7 User 3 3 1 2 2 8 SKOR IDEAL = 4 X 4 X 3 = 48
SKOR IDEAL SETIAP ATRIBUT  = 4 X 3 = 12
Jumlah 7 5 4 6 22
Berdasarkan  tabel  diatas  diperoleh  jumlah  data  adalah  22.  Dengan  demikian,  efektivitas  sistem  kerja lama  adalah  22  :  48  =  0,45  atau  45%  dari  kriteria  yang  diharapkan.  Jika  dilihat  kinerja  sistem berdasarkan  ketepatan  penyelesaian  sebesar  7  :  12  =  0,58  atau  58%  dari  kriteria  yang  diharapkan. Berdasarkan  kemudahan  mengakses  informasi  sebesar  5  :  12  =  0,42  atau  42%  dari  kinerja  yang diharapkan.  Berdasarkan  kecepatan  kinerja  sebesar  4  :  12  =  0,33  atau  33%  dari  kinerja  yang diharapkan.  Berdasarkan  kemudahan  kinerja  sebesar  6  :  12  =  0,50  atau  50%  dari  kriteria  yang diharapkan. Dari hasil diatas dapat disimpulkan bahwa efektivitas sistem kerja lama kurang baik karena rata – rata nilai yang diperoleh sebesar 45% dilihat dari beberapa aspek diatas.
Tabel 4 . Kinerja Sistem Baru Responden Skor Untuk Butir Nomor Jumlah A B C D User 1 3 4 3 3 13 User 2 3 4 4 3 14 User 3 4 3 3 4 13 Jumlah 10 11 10 10 41 Keterangan :
A = Ketepatan Penyelesaian B = Kemudahan Mengakses Informasi C = Kecepatan Kinerja D = Kemudahan Kinerja
Berdasarkan  tabel  diatas  diperoleh  jumlah  data  adalah  41.  Dengan  demikian,  efektivitas  sistem  kerja baru  adalah  41  :  48  =  0,85  atau  85%  dari  kriteria  yang  diharapkan.  Jika  dilihat  kinerja  sistem berdasarkan  ketepatan  penyelesaian  sebesar  10  :  12  =  0,83  atau  83%  dari  kriteria  yang  diharapkan. Berdasarkan  kemudahan  mengakses  informasi  sebesar  11  :  12  =  0,91  atau  91%  dari  kinerja  yang diharapkan.  Berdasarkan  kecepatan  kinerja  sebesar  10  :  12  =  0,83  atau  83%  dari  kinerja  yang diharapkan.  Berdasarkan  kemudahan  kinerja  sebesar  10  :  12  =  0,83  atau  83%  dari  kriteria  yang diharapkan. Dari hasil diatas dapat  disimpulkan bahwa efektivitas sistem kerja  baik karena rata  – rata nilai yang diperoleh sebesar 83% dilihat dari beberapa aspek diatas.
Tabel 5 . Hasil Analisa Penilaian Oleh Responden Sistem Lama Aspek Kinerja Sistem Sistem Baru 58,00% Ketepatan Penyelesaian 83,00% 42,00% Kemudahan mengakses informasi 91,00% 33,00% Kecepatan kinerja 83,00% 50,00% Kemudahan kinerja 83,00% 45,00% Rata-rata 85,00%
Dari hasil diatas, dapat disimpulkan bahwa efektifitas sistem yang baru jauh lebih besar dari pada sistem yang lama, yaitu sebesar 85,00%. Sedangkan untuk sistem yang lama hanya sebesar 45,00%.

## 4. IMPLEMENTASI

## 4.1 Form Search Document by Pattern
Merupakan menu search bar yang selalu tampil di semua halaman. User bisa melakukan pencarian dengan cara memasukkan pattern atau kata kunci ke dalam search bar. Search bar ini juga dilengkapi dengan beberapa filter, pada  saat  tombol  drop  down  ditekan  amakan  akan  muncul  beberapa  filter  untuk  mencari  dokumen  yang  lebih spesifik.  Filter-filter tersebut  diantaranya  checklist  case  sensitive,  checklist  multiple  pattern,  filter  berdasarkan transaksi  import  atau  export,  berdasarkan  nama  agent,  nama  cutomer,  dan  yang  terakhir  terdapat  pilihan  from date to date untuk mencari berkas pada periode tertentu.
Gambar 3. Form Search Document by Pattern

## 4.2 Form report export
Merupakan halaman yang digunakan untuk menampilkan data import dan berkas import yang sudah diunggah. Report export terdapat filter from date to date yang berfungsi menampilkan report berdasarkan periode tertentu.
Gambar 4. Form Report Export

## 5. KESIMPULAN
Berdasarkan  uji  efektivitas  terhadap  sistem  lama  dan  sistem  yang  baru  dihasilkan  uji  yaitu  efektifitas  sistem lama  45%  dan  hasl  uji  efektifitas  sistem  baru  85%.  Uji  dilakukan  terhadap  3  user  pemakai  sistem  baru. Sedangkan uji alpaha dilakukan dengan teknik black box . Terdapat tujuh kelas uji yang dilakukan dengan teknik black box yang mengasilkan uji tersebut sudah sesuai dengan fungsionalitas program aplikasi yang dibuat.

## REFERENCES
[1] Al-Bahra bin ladjamudin, 2013; “Analisis dan desain sistem informasi ” , Yogyakarta : Graha Ilmu
[2] Aulia, Rama, 2008; “Analisa Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore dalam Proses Pencarian String”, Bandung : ITB
[3] Dewanto  R  A.,  Aradea,  2007;  ”Aplikasi  SMS  Gateway  Dengan  Koreksi  Kesalahan  Menggunakan  Fuzzy  String  Matching”, Yogyakarta : Universitas Siliwangi Tasikmalaya
[4] Donald Knuth, James H. Morris, Jr. Vaughan Pratt. 1977. Fast pattern matching in strings. SIAM Journal on Computing.
[5] Hutahean, Jeperson, 2014; “Konsep Sistem Informasi”, Yogyakarta : Deepublish
[6] John Galloway, Brad Wilson, K. Scott Allen, David Matson, 2014; “Professional ASP.NET MVC 5” United States of America: John Wiley and Sons, Inc.
[7] Lars Powers, Mike Snell, 2016; “Microsoft Visual Studio 2015 Unleashed”, United States of America: Pearson Education, Inc.
[8] Michael  T.  Goodrich,  Roberto  Tamassia,  2015:  “Algorithm  Design  and  Applications”,  United  States  of  America:  John  Wiley  and Sons, Inc.
[9] Waruwu,  F.  T.,  &  Mesran,  M.  (2014).  IMPLEMENTASI  ALGORITMA  KNUTH  MORRIS  PRATT  PADA  APLIKASI  KAMUS ISTILAH LATIN FLORA DAN FAUNA BERBASIS ANDROID. Majalah Ilmiah INTI , 4 (1), 96–102.
[10] Owens, Michael, 2006; “The Definitive Guide to SQLite”, United States of America: Apress.
[11] Rahayu, Eka Fitri, 2015; “Sistem Operasi”, Depok : Universitas Gunadarma.
[12] Raymond Mcleod,Jr., George P.Schell, 2008; “Sistem Informasi Manajemen, Edisi 10”. Jakarta : Salemba Empat
[13] Rinaldy, Eddie, 2006; “Kamus Perdagangan Internasional”, Jakarta : Indonesian Legal Center Publishing
[14] Riyanto,  2011;  “Sistem  Informasi  Penjualan  dengan  PHP  dan  MySql  (Studi  kasus  Aplikasi  Apotik  Integrasi  Barcode  Scanner”, Yogyakarta : Gava Media
[15] Soleh, Moch. Yusuf, 2010; “Implementasi Algoritma KMP dan Boyer-Moore dalam Aplikasi Search Engine Sederhana”, Bandung: ITB
[16] Fau, A., Mesran, M., & Ginting, G.  L. (2017). Analisa Perbandingan Boyer Moore Dan Knuth Morris Pratt Dalam Pencarian Judul Buku  Menerapkan  Metode  Perbandingan  Eksponensial  (  Studi  Kasus :  Perpustakaan  STMIK  Budi  Darma  ). Jurnal  Times (Technology Informatics & Computer System) , 6 (1), 12–22.
[17] Sugiyono, Prof. Dr., 2009; “Metode Penelitian Kuantitatif, Kualitatif dan R&D”, Jakarta : Alfhabeta.
[18] Wahana Komputer , 2010; “Mendesain website dinamis dan menarik dengan adobe dreamweaver cs4”, Yogyakarta : Andi Offset
[19] Yuhefizar, Ir. HA Mooduto, Rahmat Hidayat, 2009; “Cara Mudah Membangun Website Interaktif Menggunakan Content Manajemen Sistem Joomla (CMS)”, Jakarta : Elekmedia Komputindo