ABSTRAK
Indonesia merupakan negara dengan keragaman budaya, salah satunya dalam hal masakan tradisional. Setiap daerah yang tersebar di sepanjang kepulauan Indonesia memiliki ciri khas masakan tradisionalnya masing-masing. Namun, keadaan geografis berupa negara kepulauan membatasi kesempatan masyarakat untuk saling mempelajari masakan tradisional antar daerah di Indonesia.
Perkembangan teknologi memfasilitasi kebutuhan masyarakat untuk memperoleh informasi resep masakan melalui situs web yang khusus menyajikan informasi resep masakan tradisional Indonesia. Namun, situs web yang tersedia baru menyediakan bentuk pencarian data resep berdasarkan nama resep saja. Sementara pengguna situs membutuhkan bentuk pencarian yang lebih kompleks dengan menggunakan beberapa buah parameter pencarian seperti pencarian data resep berdasarkan bahan makanan atau pencarian dengan mengikutsertakan kata atau nama bahan yang dihilangkan (exclude term). Keseluruhan laporan Tugas Akhir ini akan membahas proses perancangan dan implementasi fungsi pencarian pada pangkalan data resep masakan tradisional.
ABSTRACT
Indonesia is a country with cultural diversity, especially in terms of traditional cuisine. Each region throughout Indonesia archipelago has its unique traditional cuisine. However, these geographic conditions also limit the opportunities to learn each other traditional cuisine between its local residents.
Technology facilitates the needs of people to obtain information. There are many websites provide culinary information such as Indonesian traditional cuisine. However, these websites can only provide search function based on recipe name. While web users need more complex search function, using several search parameters such as search recipes based on ingredient names or search recipes with including excluded words or ingredient names (exclude term). This whole documentation will discuss the process of design and implementation of search function on traditional cuisine database.
DAFTAR ISI
DAFTAR LAMPIRAN ... xi
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang... 1
1.2 Rumusan Masalah ... 1
1.3 Tujuan Pembahasan... 2
1.4 Ruang Lingkup Kajian ... 2
1.5 Sumber Data ... 2
1.6 Sistematika Penyajian ... 2
BAB II DASAR TEORI ... 4
2.1 Basis Data ... 4
2.2 Pencarian Data ... 5
2.3 Multiple Field Search ... 10
2.4 Unified Modelling Language (UML) ... 12
2.4.1 Use Case Diagram ... 13
2.4.2 Activity Diagram ... 16
2.5 Entity Relationship Diagram (ER Diagram) ... 18
2.5.1 Kunci (key) ... 19
2.5.2 Pemetaan Kardinalitas ... 20
2.6 PHP (PHP: HyperText Preprocessor) ... 23
2.7 JQuery ... 25
2.8 Pengujian Perangkat Lunak ... 26
BAB III ANALISA DAN PEMODELAN ... 28
3.1.1 Use Case Pencarian Resep Berdasarkan Nama Resep ... 31
3.1.2 Use Case Pencarian Resep Berdasarkan Nama Bahan... 32
3.1.3 Use Case Pencarian Resep berdasarkan Nama Resep dengan Mencantumkan Kategori Resep, Metode Masak dan Kata yang Dihilangkan ... 35
3.1.4 Use Case Pencarian Resep berdasarkan Nama Bahan dengan Mencantumkan Kategori Resep, Metode Masak dan Nama Bahan yang Dihilangkan ... 36
3.1.5 Activity Diagram Menghilangkan Karakter Selain Alfabet ... 40
3.1.6 Activity Diagram Memecah Kata Pencarian... 40
3.1.7 Activity Diagram Menghilangkan Elemen Duplikat ... 41
3.1.8 Activity Diagram Menghilangkan Stopwords ... 41
3.1.9 Activity Diagram Mengurutkan Hasil Pencarian berdasarkan Tingkat Kunjungan Halaman Resep ... 42
3.1.10 Activity Diagram Mengurutkan Hasil Pencarian berdasarkan Jumlah Nama Bahan ... 43
3.2 Entity Relationship Diagram ... 43
3.3. Web Map ... 44
3.4 Perancangan Antarmuka ... 45
3.4.1 Pembagian Layout ... 45
3.4.2 Pembagian Layout Halaman Pencarian ... 46
3.4.3 Halaman Pencarian Sederhana berdasarkan Nama Resep ... 47
3.4.4 Halaman Pencarian Sederhana berdasarkan Nama Bahan ... 47
3.4.5 Halaman Pencarian Lanjut berdasarkan Nama Resep ... 47
3.4.6 Halaman Pencarian Lanjut berdasarkan Nama Bahan ... 48
3.4.7 Halaman Hasil Pencarian Sederhana berdasarkan Nama Resep ... 48
3.4.8 Halaman Hasil Pencarian Sederhana berdasarkan Nama Bahan ... 49
3.4.9 Halaman Hasil Pencarian Lanjut berdasarkan Nama Resep ... 49
3.4.10 Halaman Hasil Pencarian Lanjut berdasarkan Nama Bahan ... 50
BAB IV PERANCANGAN DAN IMPLEMENTASI ... 51
4.1 Implementasi Halaman Antarmuka ... 51
4.1.1 Halaman Pencarian Sederhana berdasarkan Nama Resep ... 51
4.1.2 Halaman Pencarian Sederhana berdasarkan Nama Bahan ... 51
4.1.3 Halaman Pencarian Lanjut berdasarkan Nama Resep ... 52
4.1.4 Halaman Pencarian Lanjut berdasarkan Nama Bahan ... 52
4.1.6 Halaman Hasil Pencarian Sederhana berdasarkan Nama Bahan ... 54
4.1.7 Halaman Hasil Pencarian Lanjut berdasarkan Nama Resep ... 54
4.1.8 Halaman Hasil Pencarian Lanjut berdasarkan Nama Bahan ... 55
4.2 Diagram Tabel ... 55
BAB V PENGUJIAN ... 57
5.1 Blackbox testing ... 57
5.1.1 Pencarian Sederhana berdasarkan Nama Resep ... 57
5.1.2 Pencarian Sederhana berdasarkan Nama Bahan ... 57
5.1.3 Pencarian Lanjut berdasarkan Nama Resep ... 58
5.1.4 Pencarian Lanjut berdasarkan Nama Bahan ... 59
5.1.5 Pengurutan Hasil Pencarian berdasarkan Tingkat Kunjungan Halaman Resep ... 60
5.1.6 Pengurutan Hasil Pencarian berdasarkan Jumlah Kecocokan Nama Bahan ... 61
5.1.7 Fungsi Penghilangan Kata Pencarian ... 62
5.1.8 Fungsi Penghilangan Nama Bahan ... 63
BAB VI KESIMPULAN DAN SARAN ... 64
6.1 Kesimpulan ... 64
6.2 Saran ... 64
DAFTAR TABEL
Tabel 2.1 Operator Perbandingan ... 8
Tabel 2.2 Operator Logika ... 9
Tabel 2.3 Contoh Tabel Mahasiswa ... 19
Tabel 2.4 Parameter dan Penjelasan Perintah mysql_connect() ... 24
Tabel 2.5 Parameter dan Penjelasan Perintah mysql_select_db() ... 25
Tabel 2.6 Parameter dan Penjelasan Perintah mysql_query() ... 25
Tabel 2.7 Parameter dan Penjelasan Perintah mysql_fetch_array() ... 25
DAFTAR GAMBAR
Gambar 2.1 Ilustrasi Operator Boolean "AND" ... 11
Gambar 2.2 Ilustrasi Operator Boolean "OR" ... 11
Gambar 2.3 Ilustrasi Operator Boolean "NOT" ... 12
Gambar 2.4 Contoh Use Case Diagram Sistem Penyewaan Buku ... 14
Gambar 2.5 Simbol System Boundary... 14
Gambar 2.6 Simbol Use Case ... 15
Gambar 2.7 Simbol Aktor ... 15
Gambar 2.8 Simbol Relasi ... 16
Gambar 2.9 Simbol Initial State ... 16
Gambar 2.10 Simbol Final State ... 16
Gambar 2.11 Simbol Activity ... 17
Gambar 2.12 Simbol Transition ... 17
Gambar 2.13 Simbol Desicion ... 17
Gambar 2.14 Contoh Activity Diagram Pengembalian Buku ... 17
Gambar 2.15 Simbol Himpunan Entitas ... 18
Gambar 2.16 Simbol Atribut ... 18
Gambar 2.17 Simbol Himpunan Relasi ... 18
Gambar 2.18 Ilustrasi Kardinalitas Satu ke Satu (One to One) ... 20
Gambar 2.19 Contoh Kardinalitas Satu ke Satu (One to One) ... 21
Gambar 2.20 Ilustrasi Kardinalitas Satu ke Banyak (One to Many) ... 21
Gambar 2.21 Contoh Kardinalitas Satu ke Banyak (One to Many) ... 21
Gambar 2.22 Ilustrasi Kardinalitas Banyak ke Satu (Many to One) ... 22
Gambar 2.23 Contoh Kardinalitas Banyak ke Satu (Many to One) ... 22
Gambar 2.24 Ilustrasi Kardinalitas Banyak ke Banyak (Many to Many) ... 22
Gambar 2.25 Contoh Kardinalitas Banyak ke Banyak (Many to Many) ... 23
Gambar 2.26 Ilustrasi Cara Kerja PHP ... 23
Gambar 3.2 Activity Diagram Proses Pencarian Sederhana Berdasarkan Nama Resep ... 32
Gambar 3.3 Activity Diagram Proses Pencarian Sederhana Berdasarkan Nama Bahan ... 34
Gambar 3.4 Activity Diagram Proses Pencarian Lanjut berdasarkan Nama Resep. ... 37
Gambar 3.5 Activity Diagram Proses Pencarian Lanjut Berdasarkan Nama Bahan ... 39
Gambar 3.6 Activity Diagram Menghilangkan Karakter Selain Alfabet ... 40
Gambar 3.7 Activity Diagram Memecah Kata Pencarian ... 41
Gambar 3.8 Activity Diagram Menghilangkan Elemen Duplikat ... 41
Gambar 3.9 Activity Diagram Menghilangkan Stopwords ... 42
Gambar 3.10 Activity Diagram Mengurutkan Hasil Pencarian berdasarkan Tingkat Kunjungan Halaman Resep ... 43
Gambar 3.11 Activity Diagram Mengurutkan Hasil Pencarian berdasarkan Jumlah Nama Bahan ... 43
Gambar 3.12 ER Diagram Pangkalan Data Resep Masakan Tradisional ... 44
Gambar 3.13 Web Map Fungsi Pencarian Resep Masakan Tradisional ... 45
Gambar 3.14 Pembagian Layout ... 46
Gambar 3.15 Pembagian Layout Halaman Pencarian. ... 46
Gambar 3.16 Rancangan Halaman Pencarian Sederhana berdasarkan Nama Resep ... 47
Gambar 3.17 Rancangan Halaman Pencarian Sederhana berdasarkan Nama Bahan ... 47
Gambar 3.18 Rancangan Halaman Pencarian Lanjut berdasarkan Nama Resep ... 48
Gambar 3.19 Rancangan Halaman Pencarian Lanjut berdasarkan Nama Bahan ... 48
Gambar 3.20 Rancangan Halaman Hasil Pencarian Sederhana berdasarkan Nama Resep ... 49
Gambar 3.21 Rancangan Halaman Hasil Pencarian Sederhana berdasarkan Nama Bahan ... 49
Gambar 3.22 Rancangan Halaman Hasil Pencarian Lanjut berdasarkan Nama Resep ... 50
DAFTAR LAMPIRAN
Lampiran A Penjelasan Atribut untuk Tiap Entitas pada ER-Diagram Pangkalan Data Resep Masakan Tradisional
Lampiran B Penjelasan Field pada Tabel Pangkalan Data Resep Masakan Tradisional Lampiran C Kode Program
BAB I PENDAHULUAN
1.1 Latar Belakang
Indonesia merupakan negara dengan keragaman budaya, salah satunya dalam hal
masakan tradisional. Setiap daerah yang tersebar di sepanjang kepulauan Indonesia memiliki
ciri khas masakan tradisionalnya masing-masing. Namun keadaan geografis berupa negara
kepulauan dengan luas 1.890.754 km2 (BPS, 2011) ini menyebabkan tidak semua masyarakat Indonesia memperoleh kesempatan untuk mempelajari masakan tradisional antar daerah di
Indonesia.
Kebutuhan masyarakat untuk memperoleh informasi dan mempelajari masakan
tradisional terpenuhi dengan tersedianya beragam situs web yang khusus menyajikan informasi
resep masakan tradisional. Situs web tersebut dilengkapi fungsi pencarian dan penyimpanan
data resep milik pengguna. Namun, bentuk pencarian yang disediakan terbatas pada pencarian
berdasarkan nama resep saja. Jika pengguna ingin mencari resep berdasarkan nama bahan
makanan yang dimilikinya, metode pencarian seperti ini tidak dapat memfasilitasi kebutuhan
tersebut. Kekurangan metode pencarian seperti ini yaitu mengharuskan pengguna untuk
menelusuri satu per satu data resep sampai menemukan resep yang sesuai dengan bahan
makanan yang dimilikinya. Selain itu, jika pengguna ingin mencari resep yang menggunakan
bahan A tetapi tidak mengandung bahan B, maka dibutuhkan sebuah fungsi pencarian yang
mampu melakukan penghilangan kata atau nama bahan (exclude term) sehingga dapat
membantu pengguna situs web mendapatkan data resep sesuai kebutuhannya.
1.2 Rumusan Masalah
Beberapa masalah yang muncul dalam pembuatan fungsi pencarian resep berdasarkan
nama bahan makanan ini adalah:
1) Bagaimana mencari data resep berdasarkan nama resep dan nama bahan makanan yang
terkandung pada resep tersebut?
3) Bagaimana menyajikan informasi pencarian data resep berdasarkan urutan tingkat
kecocokan hasil pencarian yang diperoleh?
1.3 Tujuan Pembahasan
Tujuan dari Tugas Akhir ini adalah membuat fungsi pencarian berdasarkan nama resep,
nama bahan, kata atau nama bahan yang dihilangkan (exclude term), kategori resep dan
metode masak yang digunakan dalam suatu resep.
1.4 Ruang Lingkup Kajian
Pembahasan pada proses pembuatan fungsi pencarian data resep masakan ini
mencakup:
1) Lebar layar antarmuka minimal yang digunakan adalah 1024 pixel.
2) Bahasa yang digunakan untuk antarmuka menggunakan bahasa Indonesia.
3) DBMS menggunakan MySQL versi 5.1.45 dengan storage engine InnoDB.
4) Pemodelan basis data menggunakan relational model.
5) Pencarian data hanya dilakukan pada pangkalan data resep masakan tradisional.
6) Pengukuran tingkat kecocokan hasil pencarian diukur berdasarkan banyaknya kesamaan
data resep dengan data pencarian.
7) Tanda koma (,) digunakan sebagai penanda bahwa suatu kata merupakan satu kesatuan
nama bahan.
8) Tanda kurang (-) digunakan sebagai penanda kata pencarian yang dihilangkan dan nama
bahan yang dihilangkan.
9) Perancangan dan implementasi fungsi sign in, sign up, tambah resep, ubah resep dan hapus
resep telah dibuat pada Kerja Praktek.
1.5 Sumber Data
Sumber data yang digunakan dalam pembuatan fungsi pencarian data resep ini berasal
dari buku dan internet.
1.6 Sistematika Penyajian
Dalam kaitannya dengan penulisan laporan Tugas Akhir ini, sistematika pembahasan
BAB I PENDAHULUAN
Menjelaskan secara umum mengenai latar belakang masalah, rumusan masalah, tujuan
pembahasan, ruang lingkup kajian, sumber data dan sistematika pembahasan.
BAB II DASAR TEORI
Teori basis data, pencarian data, multiple field search, teori UML dan perangkat lunak yang
digunakan untuk menyelesaikan Tugas Akhir ini.
BAB III ANALISA DAN PEMODELAN
Analisa dan pemodelan dari fungsi pencarian data serta analisa arsitektur yang digunakan.
BAB IV PERANCANGAN DAN IMPLEMENTASI
Langkah-langkah detil perancangan dan implementasi fungsi pencarian data resep masakan.
BAB V PENGUJIAN
Laporan pengujian terhadap hasil implementasi dengan menggunakan metode Black-box
testing.
BAB VI KESIMPULAN DAN SARAN
Pengetahuan dan kesimpulan yang didapat setelah menyelesaikan karya ilmiah ini serta hal
BAB VI KESIMPULAN DAN SARAN
6.1 Kesimpulan
Berdasarkan tujuan yang telah dibuat pada bab 1 laporan ini, diperoleh kesimpulan
bahwa:
1) Telah berhasil dibuat fungsi pencarian data resep yang menggunakan parameter
pencarian berupa nama resep, nama bahan, kata atau nama bahan yang dihilangkan
(exclude term), kategori masakan dan metode masak yang terdapat dalam suatu resep.
2) Setelah proses pencarian dilakukan, data resep yang ditemukan berhasil diurutkan
berdasarkan tingkat kunjungan halaman resep untuk pencarian berdasarkan nama
resep dan pengurutan berdasarkan jumlah kecocokan nama bahan untuk pencarian
berdasarkan nama bahan.
6.2 Saran
Parameter pencarian dapat ditambah menggunakan daerah asal suatu resep. Selain itu
hasil pencarian dapat diurutkan berdasarkan tanggal suatu resep disimpan. Sehingga data
DAFTAR PUSTAKA
American Heritage. (2000). Stopwords Definition. The American Heritage Dictionary. Retrieved July 9, 2011, from http://www.thefreedictionary.com/stopword
BPS. (2011). Luas wilayah Indonesia. Badan Pusat Statistik. Retrieved July 9, 2011, from
http://www.datastatistik-indonesia.com/component/option,com_tabel/kat,1/idtabel,117/Itemid,165/
Collins. (2009). Database definition. Collins English Dictionary Complete & Unabridged (10th ed.). Retrieved November 20, 2010, from http://dictionary.reference.com/browse/database
Encyclopædia Britannica. (2011). Keyword search definition. Encyclopædia Britannica Online.
Retrieved July 9, 2011, from http://www.britannica.com/EBchecked/topic/315979/keyword-search
Indiana University. (2010). Basic Database Searching Techniques (Information Commons). Indiana University Libraries. Retrieved November 21, 2010, from
http://www.libraries.iub.edu/index.php?pageId=1002224
Laudon, K. C., & Laudon, J. P. (2008). Sistem Informasi Manajemen (edisi 10). Jakarta : Penerbit Salemba Empat.
Merriam-Webster. (2011). Keyword Definition. Merriam-Webster Online Dictionary. Retrieved July 9, 2011, from http://www.merriam-webster.com/dictionary/keyword
Merriam-Webster. (2011). Search engine definition. Merriam-Webster Online Dictionary. Retrieved July 9, 2011, from http://www.merriam-webster.com/dictionary/search%20engine
Nugroho, A. (2009). Rekayasa Perangkat Lunak Menggunakan UML dan Java. Yogyakarta : Penerbit Andi.
Oppel, A., & Sheldon, R. (2008). SQL: a beginner’s guide (3rd ed.). McGraw-Hill Osborne Media.
Ritchie, C. (2008). Database Principles and Design (3rd ed.). Cengage Learning Business Press.
Tomida, G. (2006). Why and when to use a database. Retrieved May 23, 2010, from http://e-articles.info/e/a/title/Why-and-When-to-Use-a-Database/