LAMPIRAN A (KODE PROGRAM)
1. data.php 0){ //memuncullkan jika hasil lebih dari 0 while($data=mysql_fetch_row($result)){ $id=$data[0]; $data=$data[1]." (".$data[2].")"; $arr[]=array("id" => $id, "data" => $data); //memasukkan data ke erray } } mysql_close($koneksi); echo json_encode($arr); //decode array kedalam json untuk di tampilkan ?>
2. Fungsi Levenshtein DELIMITER ;; CREATE FUNCTION levenshtein( s1 VARCHAR(255), s2 VARCHAR(255) ) RETURNS INT DETERMINISTIC BEGIN DECLARE s1_len, s2_len, i, j, c, c_temp, cost INT; DECLARE s1_char CHAR; DECLARE cv0, cv1 VARBINARY(256); SET s1_len = CHAR_LENGTH(s1), s2_len = CHAR_LENGTH(s2), cv1 = 0x00, j = 1, i = 1, c = 0; IF s1 = s2 THEN RETURN 0; ELSEIF s1_len = 0 THEN RETURN s2_len; ELSEIF s2_len = 0 THEN RETURN s1_len; ELSE WHILE j <= s2_len DO
Universitas Sumatera Utara
53
SET cv1 = CONCAT(cv1, UNHEX(HEX(j))), j = j + 1; END WHILE; WHILE i <= s1_len DO SET s1_char = SUBSTRING(s1, i, 1), c = i, cv0 = UNHEX(HEX(i)), j = 1; WHILE j <= s2_len DO SET c = c + 1; IF s1_char = SUBSTRING(s2, j, 1) THEN SET cost = 0; ELSE SET cost = 1; END IF; SET c_temp = CONV(HEX(SUBSTRING(cv1, j, 1)), 16, 10) + cost; IF c > c_temp THEN SET c = c_temp; END IF; SET c_temp = CONV(HEX(SUBSTRING(cv1, j+1, 1)), 16, 10) + 1; IF c > c_temp THEN SET c = c_temp; END IF; SET cv0 = CONCAT(cv0, UNHEX(HEX(c))), j = j + 1; END WHILE; SET cv1 = cv0, i = i + 1; END WHILE; END IF; RETURN c; END;
Universitas Sumatera Utara
LAMPIRAN B (RANCANGAN SISTEM)
1. Use Case Diagram
Pilih Judul Buku
Melihat Informasi buku
Input Judul Buku
Login
Tambah Data Buku
Admin
User Kelola Informasi Buku Edit Data Buku
Melihat Daftar Buku Hapus Data Buku
di dalam use case diagram dapat digambarkan bahwa terdapat 2 orang aktor yang akan berperan, yaitu user dan admin. Untuk memperoleh informasi mengenai buku yang dicari maka aktor user harus memasukkan input berupa judul buku ke dalam search box. Selanjutnya jika pencarian yang dilakukan berhasil maka sistem akan menampilkan sebuah halaman yang berisi kumpulan dari buku-buku yang berkaitan dengan judul buku yang diinputkan, kemudian user harus mengklik salah satu dari judul buku yang ditampilkan untuk dapat melihat informasi buku secara lengkap. Selanjutnya untuk bagian admin yaitu terlebih dahulu melakukan login, dengan menginputkan username dan password, jika username dan password berhasil divalidasi, maka selanjutnya admin akan masuk ke halaman beranda. Untuk melakukan pengelolahan admin dapat melakukan penambahan, pengeditan dan penghapusan buku.
Universitas Sumatera Utara
55
2. Data flow diagram (DFD) a. DFD level 0 Data flow diagram level 0 atau disebut juga dengan diagram konteks yang menggambarkan sistem yang akan dibuat.
- Login - Melihat Daftar Buku - Mencari Buku
- Input Info Buku
- Mengetik judul buku yang dicari
- Mengelola Info Buku
Simulasi Algoritma Levenshtein Distance Untuk Fitur Autocomplete Pada Aplikasi Katalog Perpustakaan
User
Admin
- Informasi Buku
- Pesan Login
- Autocomplete
- Informasi Buku
Diagram konteks di atas terdiri dari dua entitas luar sebagai berikut : No.
Entitas Luar
Keterangan
User dapat melakukan pencarian data buku dengan mengetikkan judul buku yang ingin dicari, 1
User
selanjutnya user akan menerima keluaran berupa autocomplete dan informasi buku yang dicari Admin melakukan proses login ke dalam sistem untuk dapat mengelola informasi buku berupa
2
Admin
menambah,mengedit dan menghapus informasi buku
Universitas Sumatera Utara
56
b. DFD level 1 DFD level 1 akan menggambarkan modul-modul yang ada di dalam sistem yang akan dibuat. Judul Buku
1.0 Input Buku yang dicari
User
Autocomplete Klik Judul Buku
2.0 Melihat Data Buku
Informasi Buku
Admin
Hasil Pencocokan Judul buku Pencocokan Judul buku Informasi Buku Judul buku yang Dipilih
Username dan Password
3.0 Login
Username & Password
Tabel Admin
Validasi
Pesan Login
4.0 Melihat Daftar Buku
Informasi buku
Informasi buku
Tambah/Edit/ Hapus Buku Informasi buku berubah
5.0 Mengelola Data Buku
Informasi buku
Tabel Buku Hasil pengelolahan
Pada DFD level 1 dapat dilihat modul-modul yang terdapat di dalam sistem, adapun modul ataupun bagian yang akan dilakukan oleh user yaitu input judul buku yang ingin dicari dan melihat data atau informasi buku. Sedangkan untuk modul atau bagian yang akan dilakukan oleh admin yaitu login, melihat daftar buku, input data buku dan mengelola data buku. c. DFD level 2 Pada gambar 3.4 akan ditampilkan DFD level 2 yang akan menggambarkan dekomposisi dari DFD level 1.
Universitas Sumatera Utara
57
Data buku bertambah Judul Buku/Pengarang/Penerbit dst
Admin
Informasi buku berubah Mengubah data
Informasi buku sudah tidak ada Menghapus informasi buku
5.1 Input/Tambah Data Buku
5.2 Edit Data Buku
5.3 Hapus Data Buku
Data buku bertambah Menambahkan Data buku
Informasi buku berubah Mengubah data
Tabel Buku
Informasi buku sudah tidak ada Menghapus informasi buku
Pada DFD level 2 dapat dijelaskan penjabaran dari DFD level 1 bagian 5. Dimana pada bagian ini proses mengelola buku dapat dibagi menjadi 3 hal, yaitu menambah data buku, mengedit data buku dan menghapus data buku. Adapun proses mengelola data buku ini hanya dapat dilakukan oleh admin, setiap data buku yang telah diolah baik itu ditambah, diedit dan dihapus akan tersimpan perubahannya ke dalam tabel buku di database.
Universitas Sumatera Utara