• Tidak ada hasil yang ditemukan

Perancangan sistem dengan Entity Relationship Diagram

BAB IV ANALISA DAN PENERAPAN

ANALISA DAN PERANCANGAN

4.3.1 Perancangan sistem dengan Entity Relationship Diagram

Desain sistem dengan entity relationship diagram dilukiskan dengan conceptual data model (gambar 4-4). Pada awal setiap tabel selalu dituliskan jenis tabel yaitu master atau dituliskan dengan “m” dan proses ditulis dengan “p”. Kedua penanda ini yang menjadi acuan bahwa bila sebuah tabel dikatakan master maka nilai yang ada didalamnya tidak akan mengalami perubahan. Sedangkan bila sebuah tabel diawali dengan proses atau “p” maka tabel tersebut merupakan tabel proses dan isi dari tabel tersebut sering mengalami perubahan.

62 4.3.2 Pembuatan Physical Database serta hubungannya dengan sistem indexing

dan searching

Pembuatan database dengan sistem indexing dan searching mempunyai hubungan yang cukup erat dimana sistem indexing merupakan sistem yang memasukkan data ke database dan sistem searching adalah sistem yang mencari kedalam database. Oleh karena kedua alasan itulah maka desain database dibuat agar dapat mengakomodir dua kepentingan tersebut. Berikut ini adalah daftar tabel yang digunakan beserta dengan tipedatanya:

mempunyai

Gambar 4-4 Conceptual Data Model

63

 Tabel 4.3 m_document berisi daftar dokumen yang ada pada direktori penyimpan

dokumen / paper.

Nama Field Type Field Keterangan

Fnkd_document Bigint(6) Kode dokumen

Fc_path_document Varchar(255) Path dokumen Fc_jenis_document Varchar(100) Jenis dokumen

Fc_have_text_file Char(1) Status mempunyai text file Fc_indexed Char(1) Status telah ter - index

Fd_tgl_updt Datetime Tanggal update

Fc_extensi_document Varchar(4) Ekstensi dokumen Fc_nama_file Varchar(25) Nama file tanpa ekstensi

Tabel 4.3 Tabel m_document

 Tabel 4.4 m_kata berisi daftar kata yang telah masuk ke dalam sistem (baik dari

index maupun dari searching).

Nama Field Type Field keterangan Fnkd_kata Bigint(6) Kode kata Fc_kata Varchar(255) Keterangan kata Fd_tgl_updt Datetime Tanggal update

Tabel 4.4 Tabel m_kata

 Tabel 4.5 m_library berisi daftar kata kunci / keyword yang telah masuk pada sistem. Disimpan dalam bentuk kode kata. Bila inputan berupa phrase maka akan diapit dengan tanda petik ganda (“).

Nama Field Type Field Keterangan

Fnkd_library Bigint(6) Kode library

Fc_library Varchar(255) Keterangan library

Fd_tgl_updt Datetime Tanggal update

Tabel 4.5 Tabel m_library

64

 Tabel 4.6 m_stop_word berisi daftar kata yang termasuk pada kata yang sering

muncul (stop word) dan tidak diikutkan pada proses indexing.

Nama Field Type Field Keterangan

Fnkd_stop_word Bigint(6) Kode stop word Fc_stop_word Varchar(255) Keterangan stop word

Fd_tgl_updt Datetime Tanggal update

Tabel 4.6 Tabel m_stop_word

 Tabel 4.7 m_keyword_attach_to_paper berisi daftar kata kunci / keyword yang

memang dituliskan oleh penulis dokumen (paper)

Nama Field Type Field Keterangan

Fnkd_library Bigint(6) Kode library

Fnkd_document Bigint(6) Kode dokumen

Tabel 4.7 Tabel m_keyword_attach_to_paper

 Tabel 4.8 p_indexing berisi daftar kata yang di-index

Nama Field Type Field Keterangan

Fnkd_Kata Bigint(6) Kode kata

Fnkd_Document Varchar(255) Kode dokumen

Fnkd_Kata_Kanan Bigint(6) Kode kata yang ada dikanan posisi kata saat ini

Fnkd_Posisi Bigint(6) Posisi kata

Fd_Tgl_Updt Datetime Tanggal update

Tabel 4.8 Tabel p_indexing

 Tabel 4.9 p_jml_kata_pd_document berisi daftar jumlah keluaran (occurance) kata.

Nilai yang ada pada tabel ini didapatkan dari tabel p_indexing

Nama Field Type Field Keterangan

Fnkd_kata Bigint(6) Kode kata

Fnkd_document Varchar(255) Kode dokumen

Fn_jml_kata_pd_document Bigint(6) Jumlah kata pada dokumen (word occurance)

Fd_tgl_updt Datetime Tanggal update

Tabel 4.9 Tabel p_jml_kata_pd_document

65

 Tabel 4.10 keyword_to_paper berisi relasi dari keyword terhadap paper Nama Field Type Field Keterangan

Fnkd_document Bigint(6) Kode dokumen

Fnkd_kata Bigint(6) Kode library

Fn_fuzzy_value double Nilai fuzzy Fd_tgl_updt Datetime Tanggal update

Tabel 4.10 Tabel p_keyword_to_paper

 Tabel 4.11 paper_to_paper berisi relasi dari paper terhadap paper Nama Field Type Field Keterangan Fnkd_document1 Bigint(6) Kode dokumen 1 Fnkd_document2 Bigint(6) Kode dokumen 2 Fn_fuzzy_value double Nilai fuzzy Fd_tgl_updt Datetime Tanggal update

Tabel 4.11 Tabel p_paper_to_paper

 Tabel 4.12 keyword_to_keyword berisi relasi dari keyword terhadap keyword Nama Field Type Field Keterangan

Fnkd_kata1 Bigint(6) Kode library 1 Fnkd_kata2 Bigint(6) Kode library 2 Fn_fuzzy_value double Nilai fuzzy Fd_tgl_updt Datetime Tanggal update

Tabel 4.12 Tabel p_keyword_to_keyword

 Tabel 4.13 paper_to_keyword berisi relasi dari paper terhadap keyword

Nama Field Type Field Keterangan

Fnkd_kata Bigint(6) Kode library

Fnkd_document Bigint(6) Kode dokumen

Fn_fuzzy_value double Nilai fuzzy

Fd_tgl_updt Datetime Tanggal update

Tabel 4.13 Tabel p_paper_to_keyword

66

 Tabel 4.14 published berisi tentang detail sebuah dokumen dan juga berisi keyword

yang sudah ditentukan oleh penulis

Nama Field Type Field Keterangan PublishedID Varchar(25) Kode publisher

Title Varchar(225) Judul dokumen

Keyword Varchar(255) Kata kunci dokumen ke-1 Author Varchar(50) Pengarang

Keyword2 Varchar(255) Kata kunci dokumen ke-2 Tabel 4.14 Published

Tabel yang menjadi perhatian dalam kepentingan kedua sistem ini (indexing dan searching) adalah tabel 4.8 p_indexing. Tabel ini merupakan tabel inti dari seluruh proses. Pada tabel inilah semua data yang di-index akan disimpan dan dicari.

Tabel 4.8 p_indexing dibuat dengan meniru metode link – listed (dimana satu objek bisa menjadi acuan untuk objek yang lain). Dengan meniru metode link – listed inilah maka tabel 4.8 p_indexing dibuat agar asumsi bahwa dengan data satu kata maka kita bisa mengetahui data kata berikutnya. Sehingga proses pembacaan dapat mengikuti pola n-1 dimana n adalah jumlah kata yang dicari. Selengkapnya mengenai pengisian (inserting data) tabel p_indexing dijelaskan sebagai berikut :

 Pembacaan dari file teks. Hasil pembacaan dari file teks adalah seluruh isi dari file teks termasuk tanda baca dan new line (\n)

 Dilakukan pembersihan terhadap semua new line. Sehingga setelah dibersihkan

seluruh isi teks akan tertampung dalam satu variabel. (satu variabel dengan string yang sangat panjang yang berisi seluruh isi file)

 Kemudian dilakukan pembersihan terhadap tanda baca dan stop word

67

 Setelah melewati beberapa tahap pembersihan maka proses penyimpanan data dilakukan.

 Seperti yang tertera diatas bahwa seluruh isi file tertampung pada satu variabel maka

dengan memisahkan dengan tanda spasi akan didapatkan posisi kata (dihitung dari kiri).

 Dimulailah proses pemasukan data (insert data) dengan urutan yaitu kata (word in

current positon), kode dokumen, kata berikut (word in the next position), posisi kata (current word position).

Gambar 4-5 menggambarkan dengan jelas cara kerja pembuatan tabel p_indexing.

Kemudian bila dilihat dari sistem searching maka bentuk tabel seperti yang tergambar pada gambar 4-5 akan mempersingkat jumlah pembacaan ke database. Hal ini bisa dilihat dengan ilustrasi sebagai berikut.

Kata pencarian : aku belajar

Gambar 4-5 Gambar pembuatan tabel p_indexing

File Aku belajar menggunakan search engine

Filter

aku belajar menggunakan search engine

Database

kata dokumen kata_berikut posisi aku 1 belajar 0 belajar 1 menggunakan 1 menggunakan 1 search 2 search 1 engins 3 engine 1 4

68 Proses searching “hanya” mencari dimana kata adalah “aku” dan kata_berikut adalah

“belajar” mengacu pada gambar 4-5 maka proses pencarian hanya perlu dilakukan pada 1 record.

Kata pencarian : menggunakan search engine

Proses searching “hanya” mencari dimana kata adalah “menggunakan” dan kata_berikut adalah “search”, mengacu pada gambar 4-5 maka proses pencarian akan dilanjutkan dengan mencari kata “search” pada dokumen 1 dan kata_berikutnya adalah

“engine”. Maka hasil akan ditemukan dalam 2 record. Sehingga dapat disimpulkan bahwa pencarian hanya akan membutuhkan jumlah fetch ke database sebesar n-1 kali dimana n adalah jumlah kata yang dicari.

4.3.3 Perancangan dan pembuatan sistem indexing dan searching dengan fuzzy