TA : Rancang Bangun Sistem Pendukung Keputusan Penentuan Rumah Makan Berbasis J2ME.

(1)

PENENTUAN RUMAH MAKAN BERBASIS J2ME

Oleh :

Nama : Rahmada Nurizki NIM : 98.41010.4155 Program : S1 (Strata Satu) Jurusan : Sistem Informasi

SEKOLAH TINGGI

MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA


(2)

Halaman

ABSTRAKSI ... iv

KATA PENGANTAR ... v

DAFTAR ISI ... vii

DAFTAR TABEL ... ix

DAFTAR GAMBAR ... xi

DAFTAR LAMPIRAN ... xiv

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 2

1.3 Pembatasan Masalah ... 2

1.4 Tujuan ... 2

1.5 Sistematika Penulisan ... 2

BAB II LANDASAN TEORI ... 5

2.1 Sistem Pendukung Keputusan ... 5

2.2 Java 2 Micro Edition (J2ME) ... 8

2.3 Bahasa Pemrograman Web JSP (Java Server Pages) ... 12

2.4 Komunikasi Data Tanpa Kabel ... 13

2.5 Algoritma Asiklis ... 15

2.6 Database MySQL ... 20

2.7 SQL (Structured Query Language) ... 25

BAB III METODE PENELITIAN ... 28

3.1 Pengumpulan Data ... 28


(3)

3.3 Wawancara ... 29

3.4 Analisa Permasalahan ... 30

3.5 Studi Literatur ... 31

3.6 Perancangan Model Sistem ... 31

BAB IV IMPLEMENTASI DAN EVALUASI ... 55

4.1 Implementasi ... 55

4.2 Evaluasi ... 77

BAB V PENUTUP ... 89

5.1 Kesimpulan ... 89

5.2 Saran ... 89

DAFTAR PUSTAKA ... 91

LAMPIRAN ... 94


(4)

PENDAHULUAN

1.1Latar Belakang Masalah

Perkembangan arus informasi yang semakin lancar membuat jarak dan waktu bukan menjadi penghalang yang berarti, hal itu juga didukung oleh kemajuan teknologi komunikasi, salah satunya adalah wireless application, yaitu suatu aplikasi yang dikembangkan pada perangkat mobile, semacam Palm, PocketPC, dan handphone, asalkan perangkat tersebut Java Enable dan dapat digunakan melakukan akses keluar (telepon dan internet). Pemanfaatan perangkat mobile yang kian hari semakin banyak, membuat pangsa pasar aplikasi untuk perangkat mobile (wireless aplication) sangat luas dan menjanjikan.

Rumah makan yang semakin banyak jumlahnya di Surabaya, dengan beraneka ragam menu masakan, fasilitas dan kelas membuat semakin banyak pilihan bagi konsumen. Tetapi keadaan tersebut juga dapat membuat konsumen bingung dalam menentukan pilihan rumah makan yang sesuai dengan keinginan dan kemampuan, antara lain tentang menu masakan, harga atau biaya yang harus disediakan, lokasi atau jarak tempuh rumah makan dari posisi konsumen. Karena itu diperlukan adanya suatu sistem pendukung keputusan yang dapat membantu konsumen rumah makan. Dengan adanya hal tersebut, sekaligus memanfaatkan pesatnya perkembangan teknologi perangkat mobile beserta aplikasinya, maka merupakan suatu tantangan dan peluang yang menarik agar dapat membangun sistem pendukung keputusan berbasis aplikasi mobile bagi konsumen rumah makan.


(5)

1.2Perumusan Masalah

Dengan memanfaatkan teknologi aplikasi mobile sebagai pendukung keputusan. Maka permasalahannya adalah, bagaimana membuat sistem pendukung keputusan penentuan rumah makan berbasis J2ME.

1.3Pembatasan Masalah

Sistem pendukung keputusan penentuan rumah makan berbasis J2ME ini dibatasi beberapa hal, yaitu:

1. Sistem hanya berfungsi pada perangkat mobile dan emulator dari Java Handheld yang telah Java Enable,dan telah terinstal aplikasi ini.

2. Sistem memberikan keputusan dan saran tentang rumah makan, menu masakan, biaya, lokasi atau jarak rumah makan dari user.

3. Sistem hanya sebagai sarana informasi dan pendukung keputusan rumah makan kepada konsumen, untuk transaksi pembelian dilakukan pada rumah makan.

1.4Tujuan

Tujuan dari rancang bangun sistem pendukung keputusan ini adalah membuat suatu sistem pendukung keputusan penentuan rumah makan berbasis J2ME.

1.5Sistematika Penulisan BAB I PENDAHULUAN

Di dalam bab ini menjelaskan mengenai latar belakang masalah dibuatnya sistem pendukung keputusan rumah makan berbasis J2ME (Java 2 Micro Edition) ini, perumusan masalah apa saja yang


(6)

berhubungan dengan sistem, batasan masalah yang dibahas, tujuan dari pembuatan sistem, dan sistematika penulisan, yaitu rangkuman singkat tentang bab di dalam laporan Tugas Akhir ini.

BAB II LANDASAN TEORI

Dalam bagian ini akan dijelaskan tentang landasan-landasan teori apa saja yang digunakan dalam pembuatan sistem pendukung keputusan ini. Landasan teori yang digunakan antara lain adalah sistem pendukung keputusan, J2ME, bahasa pemrograman web Java Server Pages (JSP), komunikasi data tanpa kabel, Algoritma Asiklis,

Database MySQL, dan Structured Query Language (SQL).

BAB III METODE PENELITIAN

Pada bagian ini dijelaskan tentang apa saja metode yang digunakan, dan langkah-langkah yang dilakukan sebelum melakukan perancangan sistem, kemudian dilanjutkan dengan perancangan model sistem, arus data pada sistem, dan perancangan database yang digunakan didalam sistem.

BAB IV IMPLEMENTASI DAN EVALUASI

Pada implementasi dan evaluasi ini menjelaskan tentang proses implementasi dari landasan teori dan metode penelitian kedalam suatu sistem yang utuh, terdiri dari hardware dan software. Setelah proses implementasi telah berjalan dengan baik, kemudian dilakukan evaluasi yang bertujuan mengidentifikasi, menganalisa, memperbaiki dan


(7)

menyempurnakan adanya kekurangan yang terdapat di dalam sistem pendukung keputusan berbasis J2ME ini.

BAB V PENUTUP

Berisikan kesimpulan dari keseluruhan pembahasan yang telah diulas di dalam Tugas Akhir ini, selain itu juga saran bagi pengembangan sistem pendukung keputusan berbasis J2ME ini di masa mendatang, agar lebih sempurna dan bermanfaat.


(8)

LANDASAN TEORI

Dalam penyusunan dan penyelesaian rancang bangun sistem pendukung keputusan penentuan rumah makan berbasis aplikasi mobile yang menggunakan J2ME ini, digunakan beberapa landasan teori, yaitu:

2.1Sistem Pendukung Keputusan

Sistem pendukung keputusan atau yang disebut juga Decision Support System (DSS) adalah suatu sistem terdiri dari prosedur-prosedur yang berkaitan dan melakukan pemrosesan data untuk memberikan saran-saran yang dapat membantu user dalam pengambilan keputusan tentang suatu masalah. Input yang berasal dari user diproses dengan teknik Knowledge Based System (KBS) atau sistem berbasis pengetahuan yang memiliki data-data yang disimpan dalam

database kemudian disusun menjadi informasi, untuk menghasilkan saran atau rekomendasi yang diberikan kembali kepada user.

Setiap sistem pasti memiliki struktur, begitu juga dengan sistem pendukung keputusan, semua komponen-komponen struktur tersebut saling berkaitan untuk membentuk suatu sistem yang dapat memberikan hasil yang diinginkan user, yaitu input, proses, dan output. Input adalah elemen yang dimasukkan pada sistem, proses adalah semua elemen yang digunakan untuk merubah input menjadi output, sedangkan output adalah hasil akhir atau keputusan akhir yang merupakan hasil pengolahan dari input. Berikut ini adalah gambar dari struktur dasar sistem pendukung keputusan.


(9)

Input Proses Output

Pembuat keputusan

Feedback

Gambar 2.1 Struktur dasar sistem pendukung keputusan

Penggunaan sistem pendukung keputusan sebagai metode dalam pembuatan rancang bangun sistem pendukung keputusan penentuan rumah makan berbasis aplikasi mobile ini, karena sistem pendukung keputusan memiliki berbagai kelebihan, yaitu:

1. Sistem pendukung keputusan dapat digunakan untuk menyelesaikan suatu masalah khusus yang diharapkan penyelesaiannya. Dalam rancang bangun sistem ini adalah masalah yang berkaitan dengan rumah makan.

2. Sebuah sistem pendukung keputusan dapat mempresentasikan keadaan yang ada pada dunia nyata kedalam suatu sistem berbasis komputer.

3. Sistem pendukung keputusan dapat menyediakan keputusan atau saran yang diharapkan dalam waktu yang singkat.

4. Sistem pendukung keputusan dapat meningkatkan kemampuan pemecahan masalah dari pembuat keputusan.

5. Sistem pendukung keputusan dapat dioperasikan hanya dengan data yang sederhana tetapi lengkap.

Didalam sistem pendukung keputusan, untuk memecahkan suatu masalah didasarkan pada tahapan-tahapan untuk memecahkan suatu masalah, yaitu:


(10)

2. Mengklasifikasi masalah yang dihadapi pada kategori yang mendasar dan mudah untuk dipahami.

3. Menyusun sebuah model dari masalah yang mendeskripsikan kenyataan yang sebenarnya dari suatu masalah.

4. Menentukan solusi-solusi yang mungkin berhasil untuk diujicobakan pada model masalah yang dibuat tadi, selanjutnya mengevaluasi hasilnya.

5. Dari ujicoba solusi-solusi tersebut, lalu menentukan salah satu solusi yang dapat menghasilkan pemecahan yang paling baik.

Sistem pendukung keputusan memiliki beberapa karakteristik dan kapabilitas yang saling berhubungan dan menunjang satu dengan lainnya dalam menghasilkan saran yang nantinya dapat digunakan oleh user sebagai bahan dalam membuat keputusan, yang diuraikan pada gambar berikut ini.

Sistem Pendukung Keputusan Program yang semiterstruktur Bagi pengambil keputusan di berbagai level Digunakan kelompok dan perorangan Keputusan tidak bergantung pada satu urutan Dapat mengembangkan desain, pilihan dan

kemampuan

Mendukung berbagai cara

pemecahan masalah & proses Mampu

beradaptasi dan fleksibel Interaktif dan mudah digunakan Efektif tetapi tidak

efisien User mengontrol sistem Mudah digunakan oleh end-user Analisa dan pemodelan Kemampuan dalam mengakses data 1 2 3 4 5 6 7 8 9 10 11 12 13


(11)

2.2Java 2 Micro Edition (J2ME)

Java 2 Micro Edition (J2ME) adalah salah satu dari tiga kategori Java versi 1.2 atau yang lebih dikenal dengan Java 2, dikembangkan oleh Sun Microsystem. Ketiga kategori Java 2 tersebut adalah:

1. Java 2 Standard Edition (J2SE)

J2SE adalah Java yang pertama kali dihasilkan oleh Sun Microsystem. J2SE merupakan teknolologi Java yang utama, sedangkan Java yang lain, yaitu J2ME dan J2EE dikembangkan berdasarkan J2SE dengan penyesuaian terhadap peralatan komputasi yang menjadi sasaran. Kategori Java ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada level Personal Computer (PC) dengan berbagai macam sistem operasi. J2SE memiliki kemampuan untuk membuat program seperti halnya bahasa-bahasa pemrograman yang lain, seperti Pascal, C/C++, Delphi, Visual Basic, dan lain-lain.

2. Java 2 Enterprise Edition (J2EE)

Kategori ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada lingkungan Enterprise, dengan menambah komponen yang diperlukan pada J2EE, yaitu semacam Enterprise Java Bean (EJB), Java CORBA, Servlet dan Java Server Pages (JSP), serta Java Extensible Markup Language (XML).

3. Java 2 Micro Edition (J2ME)

Kategori ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada handheld devices atau perangkat-perangkat semacam


(12)

handphone, Palm, Personal Data Assistant (PDA), dan PocketPC. Pada kategori ketiga inilah sistem pendukung keputusan ini akan dibangun.

Seperti yang disebutkan sebelumnya, J2ME dirancang untuk dapat menjalankan program Java pada perangkat-perangkat mobile semacam handphone dan PDA, yang memiliki karakteristik berbeda dibanding dengan sebuah komputer biasa, misalnya kecilnya jumlah memori, keterbatasan resolusi dan lebar layar atau display pada handphone dan PDA. J2ME terdiri atas komponen-komponen yang membentuknya sehingga aplikasi yang dibuat dengan J2ME dapat dijalankan pada perangkat mobile, komponen tersebut adalah sebagai berikut:

1. Java Virtual Machine (JVM)

Komponen ini untuk menjalankan program-program Java pada emulator atau handheld devices.

2. Java API (Aplication Programming Interface)

Komponen ini merupakan kumpulan library untuk menjalankan dan mengembangkan program Java pada handheld devices.

3. Tools lain untuk pengembangan aplikasi Java, yaitu sejenis emulator Java Phone.

Dalam J2ME dibagi menjadi dua bagian yang dikenal dengan istilah

configuration dan profile. Dua buah istilah tersebut sangat penting dalam perkembangan aplikasi wireless dengan Java, yaitu:


(13)

2.2.1 J2ME Configuration

J2ME Configuration mendefinisikan lingkungan kerja J2ME runtime,

oleh karena setiap handheld devices memiliki fitur-fitur yang berbeda-beda, J2ME Configuration ini dirancang untuk menyediakan library standar yang mengimplementasikan fitur standar dari sebuah handheld devices. J2ME Configuration bisa dikatakan adalah JRE (Java Runtime Environment) pada handheld devices, karena lingkungan kerja yang dimaksud meliputi Java Virtual Machine yang digunakan untuk menjalankan program Java, dan Java Virtual Machine pada J2ME ini berbeda dengan J2ME pada Java Development Kit (JDK) yang ada pada PC. Artinya J2ME yang ada pada handheld devices hanya memiliki fitur-fitur yang berkaitan dengan perangkat wireless saja yang diimplementasikan.

Ada dua kategori J2ME Configurationsaat ini, yaitu: 1. CLDC (Connected Limited Device Configuration)

Kategori ini umumnya digunakan untuk aplikasi Java pada handphone semacam Nokia, Siemens, Java Phone, organizer/PDA (Personal Digital Assistant) semacam PALM, PocketPC, dan two way pagers. Umumnya perangkat-perangkat tersebut hanya memiliki memori berukuran 160-512 Kilo Bytes.

2. CDC (Connected Device Configuration)

Kategori ini pada umumnya digunakan untuk aplikasi Java pada perangkat-perangkat handheld devices dengan ukuran memori paling tidak 2 Mega Bytes. Contohnya adalah internet TV, Nokia Communicator, Sony Ericsson P800, dan TV pada mobil.


(14)

Berikut adalah beberapa perbedaan antara CDC (Connected Device Configuration) dan CLDC (Connected Limited Device Configuration), yang diuraikan pada tabel berikut ini.

Tabel 2.1 Perbedaan CLDC dan CDC

CLDC CDC

Mengimplementasikan subset dari J2SE

Mengimplementasikan seluruh fitur pada J2SE

JVM yang digunakan dikenal dengan nama KVM (Kilobytes Virtual Machine)

JVM yang digunakan dikenal dengan nama CVM (Capable Virtual Machine)

Digunakan pada perangkat handheld dengan ukuran memori terbatas (160-512 Kbytes)

Digunakan pada perangkat handheld dengan ukuran memori minimal 2 Mbytes

Prosesor : 16 Bit atau 32 Bit Prosesor : 32 Bit

2.2.2 J2ME Profile

Jika J2ME Configuration menyediakan Library Java untuk implementasi fitur-fitur standar dari sebuah handheld devices, J2ME Profile menyediakan implementasi-implementasi tambahan yang sangat spesifik dari sebuah handheld devices. Sebagai analogi sebuah handphone Nokia/Siemens/Motorola dan lain-lain memiliki kemampuan untuk menelepon ke suatu PSTN (Public Switch Telephone Network) atau handphone lain karena ini merupakan kemampuan standar dari sebuah handphone. Namun masing-masing handphone tentulah ada fitur-fitur tersendiri yang membedakan dengan tipe yang lain. Kemampuan


(15)

standar itulah yang diimplementasikan oleh J2ME Configuration, sedangkan kemampuan lain yang sangat bergantung pada jenis perangkat handheld devices yang digunakan, akan diimplementasikan oleh J2ME Profile.

Ada lima kategori J2ME Profile saat ini, yaitu: 1. Mobile Information Device Profile (MIDP)

Adalah profile yang menyediakan user interface, media penyimpanan, jaringan, dan model aplikasi API untuk wireless devices, antara lain telepon selular dan pager dua arah.

2. Foundation Profile (FP)

Adalah profile yang digunakan untuk implementasi yang lengkap dari Java Virtual Machine termasuk didalamnya Platform Java 2 dan Standard Edition API pada perangkat mobile.

3. Personal Profile

Profile yang merupakan perkembangan lebih lanjut dari Personal Java yang menyediakan kompabilitas dengan aplikasi yang dibangun untuk versi 1.1.x dan 1.2.x dari Personal Java.

4. Remote Method Invocation (RMI) Profile

Profile yang mendefinisikan subset yang minimal dari J2SE 1.3 RMI API. 5. Personal Digital Assistance Profile (PDAP)

Pada hal ini PDAP khusus dibuat pada handheld devices yang berbasis Palm OS, misal Palm Pilots dan Visors.

2.3Bahasa Pemrograman Web JSP (Java Server Pages)

JSP (Java Server Pages) merupakan penerus dari teknologi Java yang merupakan produk dari Sun Microsystem. JSP merupakan bahasa pemrograman


(16)

web yang bahasanya mengapdosi dari bahasa Java. Keunggulan dari JSP adalah menyediakan model pemrograman baru dan infrastruktur untuk aplikasi yang lebih aman, skalabel, dan stabil.

Dalam sistem pendukung keputusan penentuan rumah makan berbasis aplikasi mobile ini, JSP digunakan sebagai penghubung antara aplikasi MIDlet dengan server web untuk melakukan request data dan query data pada server database, yang kemudian dikembalikan kepada aplikasi MIDlet untuk ditampilkan pada handheld devices.

2.4Komunikasi Data Tanpa Kabel

Komunikasi data tanpa kabel sangat cepat perkembangannya karena sekarang mobilitas manusia semakin tinggi. Jaringan tanpa kabel mempunyai berbagai manfaat, misalnya kantor portable. Orang yang sedang dalam perjalanan sering ingin menggunakan peralatan elektronik portablenya untuk mengirim dan menerima telepon, fax, dan email, membaca file jarak jauh, akses ke komputer jarak jauh, dan sebagainya dan juga ingin bisa melakukan hal-hal tersebut dari manapun, baik darat, laut, atau udara.

Dalam sistem pendukung keputusan penentuan rumah makan ini, komunikasi data tanpa kabel merupakan sasaran yang ingin dituju, karena aplikasi pada sistem ini dikhususkan bagi perangkat mobile, yaitu handphone yang memiliki fitur Java Enable. Saat ini komunikasi data tanpa kabel pada umumnya menggunakan telepon selular digital atau yang disebut Global System for Mobile Communication (GSM) dan Code division Multiple Access (CDMA). Kedua sistem tersebut mampu menghubungkan perangkat mobile dengan internet.


(17)

Adapun protokol yang dipakai untuk menghubungkan perangkat mobile dengan internet yaitu General Packet Radio Service (GPRS) dan Circuit Switched Data

(CSD). Kedua sistem protokol tersebut memiliki beberapa perbedaan yang sangat mencolok yaitu pada biaya, untuk GPRS penghitungan biaya berdasar besarnya paket data yang diterima atau dikirim, sedangkan untuk CSD penghitungan biaya berdasar lamanya akses untuk pertukaran data tanpa memperhatikan ukuran data, sistem CSD mirip dengan sistem dial up PC kepada Internet Services Provider

(ISP), sehingga pemborosan biaya sering terjadi pada CSD. Prinsip kerja pertukaran data tanpa kabel pada telepon selular adalah sebagai berikut.

ME SIM Mobille station ME SIM Mobille station Base Transceiver Station Base Transceiver Station Base Station Contoller

Base Station Subsystem

Mobille switching

center Operation and maintenance center

Data communication network

VLR AuC EIR HLR

Network subsystem

PSTN

Um Abis A

Auc Autentication center EIR Equipment identity register HLR Home location register ME Mobille equipment

PSTN Public switched telephone network SIM Subscriber identity module VLR Visitor location register

Gambar 2.3 Arus pertukaran data pada telepon selular

Mobile Station atau handphone yang memiliki SIM Card (Subscriber Identity Module), mengirim dan menerima sinyal dari Base Transceiver Station


(18)

juga masih berada dekat BTS yaitu pada satu Base Station Subsystem (BSS).

Kemudian dari BSS dilanjutkan kepada Network Subsystem (NS), didalam network subsystem terdiri dari:

1. Mobile Switching Center (MSC), yang merupakan inti dari network subsystem.

2. Home Location Register (HLR) database, yang berfungsi menyimpan informasi permanen dan sementara dari tiap SIM Card.

3. Visitor Location Register (VLR) database, berfungsi menyimpan data dari lokasi visitor atau yang akan ditelepon dan menelepon pada mobile station. 4. Authentication Center (AuC) database, fungsinya sebagai penyimpan data

tentang semua aktifitas autentifikasi dari sistem.

5. Equipment Identity Register (EIR) database, fungsinya menjaga jalur dari mobile station. Misalnya pada keamanan, yaitu untuk menonaktivkan SIM yang dicuri atau hilang.

2.5Algoritma Asiklis

Algoritma asiklis adalah suatu algoritma yang digunakan dalam menentukan rute terdekat antara titik atau node didalam suatu jaringan, yang didasari oleh perhitungan rekursif dalam menentukan rute terpendek. Penggunaan metode algoritma asiklis ini dikarenakan memiliki kelebihan yaitu lebih efisien, karena hanya melibatkan sedikit perhitungan, jika dibandingkan dengan penggunaan algoritma siklis. Yang termasuk dalam algoritma siklis adalah Algoritma Djikstra. Pada algoritma siklis penghitungan juga menghitung rute yang telah dicek nilai


(19)

jaraknya, sedangkan pada algoritma asiklis rute yang telah dihitung jaraknya tidak dilakukan penghitungan kembali sehingga proses lebih cepat.

Penggunaan algoritma asiklis dalam aplikasi mobile sistem pendukung keputusan ini adalah sebagai penentu lokasi dan jarak terdekat antara posisi user dengan rumah makan yang diinginkan user. Algoritmanya adalah sebagai berikut: Algoritma Asiklis

{

i = node sebelum; j = node sekarang;

u = hasil jarak terdekat antar node i dan j; d = jarak antar 2 node;

stopMaju, stopMundur = 0; //Langkah-langkah:

1. Tentukan posisi node awal mulai dari posisi user label node dengan 0. 2. Tentukan posisi node tujuan, yaitu posisi rumah makan yang dicari. 3. While (cariMaju != tujuan)

{

3a. Cari node selain node asal yang terhubung dengan node asal.

3b. Dari hasil tersebut hitung jarak terdekat (u) dengan rumus uj = min {ui + dij}.


(20)

3d. Nilai asal = uj. 3e. Nilai cariMaju = uj. }

4. While (cariMundur != asal) {

4a. Dari uj yang sama dengan tujuan, cari node yang mendahuluinya. 4b. Jumlahkan dengan nilai uj dari masing-masing node dari butir 1. 4c. Tampilkan node-node yang terhubung dan terjemahkan dengan nama

jalan. }

5. Tampilkan total nilai dari jumlah uj. 6. Stop.

}

Misal user berada di wilayah node 1, ingin mencari rumah makan yang menyediakan menu makanan dan minuman yang diinginkannya, maka sistem akan memberikan saran dimana lokasi rumah makan dan jaraknya dari user yang menyediakan menu pilihan user. Untuk memperjelas permasalahan tersebut dapat dijelaskan dalam gambar sebagai berikut.


(21)

1

4

6

5

7

2

3

2 4 10 5 1 9 6 8 7 11 3 Posisi user Rumah makan yang disarankan

Gambar 2.4 Posisi user dengan rumah makan

Dalam gambar 2.4 tersebut posisi user pada node 1, ingin mencari menu makanan nasi goreng seafood, dari hasil pengolahan data yang dilakukan sistem ditemukan bahwa menu tersebut disediakan oleh rumah makan yang berada pada node 7. Sistem lalu memberitahukan kepada user bahwa rumah makan tersebut berada pada node 7, kemudian sistem melakukan perhitungan jarak dan rute terpendek antara user dengan rumah makan tersebut menggunakan rumus sebagai berikut:

uj = jarak terdekat dari node 1 ke node j

di mana u1 = 0 berdasarkan definisinya. Nilai-nilai uj, j = 1,2, …, n, dihitung

secara rekursif dengan rumus berikut ini.

uj= min {ui + dij}

i

ui adalah jarak terdekat ui ke satu node i yang tepat mendahuluinya.

dijadalah jarak dijantara node saat ini j ke node sebelumnya i.

Rumus rekursif tersebut mengharuskan bahwa jarak terdekat uj ke node j dihitung hanya setelah kita menghitung jarak terdekat ui ke setiap node sebelumnya i yang dihubungkan ke j dengan sebuah busur langsung.


(22)

Dalam pemecahan akhir dari model rute terdekat ini, adalah tidak memadai hanya menentukan uj dari node j. Secara serempak, harus mengidentifikasi node lain yang ditemui disepanjang rute tersebut. Agar mencapai sasaran ini, menggunakan prosedur pelabelan yang mengkaitkan label berikut ini dengan j:

label node j = [uj, n]

dimana n adalah node j yang tepat mendahuluinya, yang mengarah pada jarak terdekat uj.

uj = min {ui + dij} i

= un + dnj

Berdasarkan definisinya, label di node 1 adalah [0, -], yang menunjukkan bahwa node 1 adalah sumber.

Perhitungan dilakukan dalam beberapa tahap, dengan setiap tahap diidentifikasi dengan setiap node yang berbeda. Tabel 2.2 memberikan urutan perhitungan yang mengarah pada pemecahan akhir.

Tabel 2.2 Perhitungan jarak antar node-node

Node j Perhitungan uj Label

1 u1 = 0 [0, -]

2 u2 = u1 + d12 = 0 + 2 = 2, dari 1 [2, 1]

3 u3 = u1 + d13 = 0 + 4 = 4, dari 1 [4, 1]

4 u4 = min {u1 + d14, u2 + d24, u3 + d34}

= min {0 + 10, 2 + 11, 4 + 3} = 7, dari 3 [7, 3] 5 u5 = min {u2 + d25, u4 + d45}

= min {2 + 5, 7 + 8} = 7, dari 2 [7, 2]

6 u6 = min {u3 + d36, u4 + d46}

= min {4 + 1, 7 + 7} = 5, dari 3 [5, 3]

7 u7 = min {u5 + d57, u6 + d67}


(23)

Rute optimum tersebut diperoleh dengan dimulai dari node 7 dan menelusuri ke belakang dengan menggunakan informasi label. Urutan berikut memperlihatkan prosedur tersebut:

(7) → [13, 5] → (5) → [7, 2] → (2) →[2, 1] → (1)

Algoritma tersebut pada kenyataannya memberikan jarak terdekat antara node 1 dan setiap node lainnya dalam jaringan ini. Jadi rute yang harus ditempuh user dari posisinya sekarang ke rumah makan pada node 7 adalah melalui node-node 1, 2, 5, 7. Dengan jarak 2 + 5 + 6 = 13.

Dengan menggunakan algoritma asiklis tersebut, nantinya sistem pendukung keputusan ini juga dapat memberikan output berupa saran mengenai posisi rumah makan dan jaraknya dari posisi user.

2.6Database MySQL

MySQL adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis di bawah lisensi General Public Lisence (GPL). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial.

MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu Structured Query Language (SQL). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan/seleksi dan pemasukan data yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.

Tingkat kemampuan suatu sistem database (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang


(24)

dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti dalam query yang dilakukan oleh single user, kecepatan query MySQL dapat sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Hal tersebut merupakan kemampuan yang cukup menakjubkan bagi software ini meskipun gratis.

MySQL adalah satu dari sekian banyak sistem database dan merupakan terobosan solusi yang tepat dalam aplikasi database. Didukung oleh ribuan bahkan jutaan komunitas pengguna di internet yang siap membantu. Selain itu juga tersedia mailing list dan homepage khusus yang memberikan tutorial serta dokumentasi lengkap.

MySQL dikembangkan sekitar tahun 1994 oleh sebuah perusahaan pengembang software dan konsultan database bernama MySQL AB yang berlokasi di Swedia. Pada waktu itu perusahaan tersebut masih bernama TcX DataKonsult AB, dan tujuan awal dikembangkannya MySQL adalah mengembangkan aplikasi berbasis web pada client.

Awalnya Michael Widenius “Monty”, pengembang satu-satunya di TcX, memiliki sebuah aplikasi UNIREG dan rutin ISAM buatannya sendiri dan sedang mencari antarmuka SQL yang cocok diimplementasikan ke dalamnya. Pada awalnya Monty memakai miniSQL (mSQL) pada eksperimennya itu, namun mSQL dirasa kurang sesuai, karena terlalu lambat dalam pemrosesan query.

Akhirnya Monty menghubungi David Hughes, pembuat mSQL yang sedang merilis versi kedua dari mSQL. Kemudian Monty mencoba membuat


(25)

sendiri mesin SQL yang memiliki antarmuka mirip dengan SQL, tetapi dengan kemampuan yang lebih sesuai, dan lahirlah MySQL.

Tentang pengambilan nama MySQL, sampai saat ini masih belum jelas asal-usulnya. Ada yang berpendapat nama My diambil dari huruf depan dan belakang Monty, tetapi versi lain mengatakan nama itu diambil dari putri Monty yang kebetulan juga bernama My.

Sebagai database server yang memiliki konsep database modern, MySQL memiliki banyak sekali keistimewaan. Berikut ini beberapa keistimewaan yang dimiliki oleh MySQL.

1. Portability

MySQL dapat berjalan stabil pada berbagai sistem operasi, diantaranya adalah Microsoft Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, HP-UX dan masih banyak lagi.

2. Open Source

MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL, sehingga kita dapat menggunakannya tanpa dipungut biaya.

3. Multiuser

MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. Hal ini memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan.

4. Performance Tuning

MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak perintah SQL per satuan waktu.


(26)

5. Column Types

MySQL memiliki tipe kolom yang sangat kompleks, seperti signed/unsigned integer, float, double, char, varchar, text, blob, date, time, datetime, timestamp, year, set serta enum.

6. Command and Functions

MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query.

7. Security

MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama

host, dan izin akses user dengan sistem perizinan yang mendetail serta

password terenkripsi. 8. Scalability dan Limits

MySQL mampu menangani database dalam skala besar, dengan jumlah

records lebih dari 50 juta dan 60 ribu tabel, serta 5 miliar baris. Selain itu, batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya. 9. Connectivity

MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket (Unix), atau Named Pipes (NT).

10. Localisation

MySQL dapat mendeteksi pesan kesalahan (error code) pada client dengan menggunakan lebih dari dua puluh bahasa. Tetapi Bahasa Indonesia masih belum termasuk didalamnya.


(27)

11. Interface

MySQL memiliki interface terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi Application Programming Interface (API).

12. Clients dan Tools

MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk

online.

13. Struktur Tabel

MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan database lainnya semacam PostgreSQL ataupun Oracle.

Saat ini MySQL merupakan software database yang memegang kendali terbesar pada aplikasi database berbasis web. Arsitektur databasenya sangat cocok bekerja pada lingkungan tersebut, didukung kemampuannya dalam berinteraksi dengan berbagai bahasa pemrograman side-server seperti PHP, ASP, CGI dan JSP. Seperti kita ketahui, saat ini masih belum ada yang mampu menggantikan kedudukan bahasa-bahasa pemrograman tersebut dalam dunia web maupun internet.

Keluwesan MySQL yang mampu berjalan pada berbagai sistem operasi semakin menjanjikan masa depan yang cerah. Khususnya pada web database, dimana posisi web server saat ini masih dipegang kuat oleh Linux dengan berbagai distro-nya.


(28)

Ringan dan cepat begitulah kesan yang melekat pada database open source ini, meski bukan merupakan SQL server yang sesungguhnya, karena belum memiliki semua fitur-fitur seperti yang ada pada database berbasis dekstop.

Namun pengembang MySQL sudah berniat untuk melengkapi fitur-fitur tersebut pada versi mendatang.

Seiring dengan perkembangannya, MySQL mulai banyak dipakai pengguna database non-web, karena selain handal pada platform web, MySQL juga telah memenuhi syarat sebagai database dekstop. Terbukti banyaknya pengguna database seperti Yahoo! Finance, perusahaan sekuritas Jepang Aizawa, bahkan Badan Antariksa Amerika Serikat (NASA) menggunakan MySQL untuk mengelola data keuangan dan transaksi bisnisnya.

2.7SQL (Structured Query Language)

SQL adalah bahasa pemrograman terstruktur yang digunakan untuk memproses basis data, pada umumnya dapat dipergunakan untuk mendefinisikan basis data, memanipulasi data yang ada di dalam basis data dan untuk mengadministrasi penggunaan basis data.

SQL pertama kali didefinisikan pada tahun 1970 oleh Dr. E.F. Codd dan IBM San Jose Laboratory kemudian dinamakan Structured English Query Language (SEQUEL). Pada perkembangannya SEQUEL diubah namanya menjadi SQL dan oleh American National Standard Institute (ANSI) didefinisikan sebagai SQL-92, dan distandarisasi oleh International Standard Organization (ISO) sebagai ISO/IEC 9057:1992, “Database Language SQL”.

SQL adalah bahasa non-procedural yang termasuk keluarga Fourth Generation Language (4GL) yang artinya adalah perintah-perintah SQL


(29)

merupakan deskripsi dari hasil yang diinginkan dan bukan merupakan cara atau prosedur untuk mengeluarkan hasil tersebut. Dalam ANSI-SQL, perintah-perintah SQL dibagi menjadi 6 kategori, yaitu:

1. Data-Query Language

Data-Query Language dipergunakan untuk mengambil data yang diperlukan dari basis data. Sintak yang digunakan adalah SELECT.

2. Data-Manipulation Language

Digunakan untuk melakukan manipulasi data yang akan atau telah disimpan di dalam tabel. Perintah-perintah dari SQL jenis Data-Manipulation Language ini adalah INSERT untuk mengisi data baru, UPDATE untuk mengubah data lama dengan data baru, dan DELETE untuk menghapus data lama.

3. Transaction-Processing Language

Digunakan untuk menentukan apakah data yang telah diperbarui dengan menggunakan data-manipulation language akan disimpan secara permanen di database atau tidak. Perintah-perintah SQL yang termasuk di dalam kelompok ini adalah BEGIN TRANSACTION, COMMIT, dan ROLLBACK.

4. Data-Control Language

Digunakan untuk menentukan hak akses individu atau group dalam mempergunakan database. Perintah-perintah SQL yang termasuk dalam kelompok ini adalah GRANT dan REVOKE.

5. Data-Definition Language

Digunakan untuk membuat tabel baru dalam database (CREATE TABLE), menambah file indeks (CREATE INDEX), hubungan antar tabel (PRIMARY


(30)

KEY, FOREIGN KEY, PREFERENCE), serta menghapus tabel dan indeks (DROP TABLE dan DROP INDEX).

6. Cursor-Control Language

Digunakan untuk memproses record dari tiap-tiap tabel. Perintah-perintahnya adalah FETCH INTO, UPDATE WHERE CURRENT.


(31)

METODE PENELITIAN

Dalam metode penelitian sistem pendukung keputusan penentuan rumah makan berbasis Java 2 Micro Edition (J2ME) ini dilakukan beberapa langkah-langkah.

3.1Pengumpulan Data

Pengumpulan data dilakukan untuk mengumpulkan semua data-data yang diperlukan dalam pembuatan aplikasi ini, kemudian dilakukan pengelompokan dan analisa dari data yang didapat. Data-data yang dikumpulkan untuk pembuatan aplikasi ini berupa:

1. Data rumah makan beserta lokasinya.

2. Data menu masakan yang dijual oleh rumah makan yang dijadikan data. 3. Data jalan yang ada di wilayah Surabaya.

4. Data jenis menu masakan.

5. Data-data lain yang berhubungan dengan masalah yang dihadapi.

3.2Observasi

Dilakukan dengan mengamati secara langsung tentang rumah makan, kebutuhan konsumen rumah makan, jalan, dan hal lain yag berhubungan dengan rancang bangun sistem pendukung keputusan ini. Dari observasi yang dilakukan maka sistem yang dibangun adalah sistem pendukung keputusan penentuan rumah makan berbasis aplikasi mobile, yang dapat diakses dari manapun, kapanpun, asalkan perangkat mobile yang digunakan untuk akses telah Java Enable atau

Java Support.


(32)

3.3Wawancara

Pengumpulan data dilakukan dengan cara mengadakan wawancara kepada pihak rumah makan dan beberapa konsumen rumah makan. Dari hasil wawancara kepada dua pihak tersebut maka didapatkan beberapa hal dari pihak rumah makan dan dari pihak konsumen rumah makan.

3.3.1 Dari pihak rumah makan 1. Daftar menu rumah makan. 2. Jenis masakan rumah makan. 3. Kelas harga dari rumah makan.

4. Keterangan lain yang berkaitan dengan rumah makan.

3.3.2 Dari pihak konsumen rumah makan

1. Konsumen rumah makan ingin mencari rumah makan yang menjual menu masakan yang sesuai dengan keinginan dan kemampuan tanpa harus memakan banyak waktu, biaya, dan tenaga.

2. Konsumen rumah makan ingin mengetahui daftar menu rumah makan tertentu tanpa harus mendatangi atau menghubungi rumah makan yang dikehendaki. 3. Konsumen rumah makan ingin mengetahui rumah makan apa saja yang ada di

suatu lokasi jalan tertentu.

4. Konsumen rumah makan ingin mengetahui jarak dan rute terpendek dari posisi konsumen sampai ke rumah makan yang ingin ditujunya.

5. Konsumen rumah makan menginginkan dalam memperoleh informasi dan saran tentang rumah makan dapat diperoleh tanpa harus memakan banyak waktu, biaya, dan tenaga, serta dapat dilakukan dimanapun, kapanpun,


(33)

menggunakan peralatan yang telah dimilikinya dan selalu dibawa. Dalam hal ini misalnya handphone.

3.4Analisa Permasalahan

Melakukan analisa terhadap data-data yang telah diperoleh dan dikumpulkan, kemudian disesuaikan dengan rancangan sistem, kebutuhan dan teknologi yang ada, sehingga dapat diketahui baik tidaknya suatu sistem terhadap masalah yang dihadapi agar dalam proses pembuatannya sistem dapat berjalan dengan baik, cepat, tepat, sesuai dengan harapan, dan tujuan yang telah ditetapkan sebelumnya. Dari hasil analisa setelah melakukan langkah-langkah diatas, maka didapatkan:

1. Prosedur dalam penentuan rumah makan yang dilakukan oleh konsumen rumah makan masih dilakukan secara manual, misalnya dalam mencari menu yang dikehendaki konsumen kadang masih telepon ke beberapa rumah makan untuk mendapatkan informasi.

2. Kerugian waktu, tenaga, dan biaya yang sering dialami konsumen dalam menentukan dan mencari rumah makan.

3. Kurangnya informasi tentang suatu rumah makan yang didapatkan oleh konsumen rumah makan.

4. Pemanfaatan teknologi mobile pada masa sekarang yang masih belum optimal dan tidak imbang dengan daya beli. Dan kebanyakan teknologi tersebut masih digunakan sebagai trend mode atau gaya hidup yang dapat menyebabkan masalah sosial.


(34)

3.5Studi Literatur

Yaitu dengan mempelajari buku-buku dan membaca artikel-artikel yang ada kaitannya dengan permasalahan yang dihadapi, antara lain pemrograman Java Server Pages (JSP), J2ME, database MySQL, dan perkembangan teknologi mobile.

3.6Perancangan Model Sistem

Dalam sistem pendukung keputusan penentuan rumah makan berbasis J2ME ini, sistem yang akan dibangun diuraikan sebagai berikut. User melakukan input untuk meminta pendapat tentang rumah makan, biaya, menu masakan, lokasi atau jarak pada sistem melalui sistem user interface, yang pada aplikasi ini berjalan pada perangkat mobile. Sistem user interface adalah penghubung user dengan proses pengambil keputusan. Setelah masukan diterima oleh sistem pengambil keputusan maka dilakukan proses pengolahan data-data yang ada pada database oleh manajemen data, kemudian di-query dan diteruskan pada sistem pengambil keputusan yang juga membandingkannya dengan yang ada pada sistem berbasis pengetahuan. Sistem pengambil keputusan sangat mengandalkan database dan sistem berbasis pengetahuan agar dapat menghasilkan keputusan yang diminta user. Setelah proses pengambilan keputusan selesai dilakukan oleh sistem pengambil keputusan, kemudian dilanjutkan untuk dikembalikan kepada user melalui sistem user interface, yang berupa tampilan pada mobiledevice berisi saran hasil dari keputusan sistem ini. Secara garis besar diuraikan pada gambar berikut.


(35)

Data rumah makan Lokasi Kelas Jenis masakan Data masakan Jenis Menu Harga Database

Proses pengembilan keputusan oleh sistem

Sistem user interface

Sistem berbasis pengetahuan Input Minta saran rumah makan, biaya, menu, jarak

atau lokasi

Output

Rumah makan, biaya, menu, lokasi atau jarak

User Manajemen

data

internet

Gambar 3.1 Gambaran model sistem yang akan dibangun

Berdasarkan gambaran sistem yang telah digambarkan diatas, kemudian dilanjutkan dengan perancangan terhadap sistem dengan menggunakan tool


(36)

perancangan, yaitu Sysbase Power Designer 6 untuk melakukan desain sistem, antara lain:

1. Pembuatan diagram berjenjang, untuk menggambarkan diagram tentang sistem yang akan dibuat.

2. Pembuatan Data Flow Diagram (DFD), untuk menggambarkan arus data serta proses pengolahan data yang ada pada sistem yang akan dibuat.

3. Pembuatan Entity Relationship Diagram (ERD), untuk menggambarkan hubungan antara tabel-tabel yang ada pada sistem yang akan dibuat.

0 SPK Penentuan Rumah Makan 1 Sistem Pengolahan dan Penyimpanan Data SPK 2 Sistem Pencarian Keputusan 1.1 Sistem Rumah Makan 1.2 Sistem Daftar Masakan 1.4 Sistem Jenis Masakan 1.3 Sistem Jenis Menu 1.5 Sistem Kelas Harga 1.6 Sistem Jalan 1.7 Sistem Hubungan Jalan 1.1.1 Sistem Menu Rumah Makan 2.1 Sistem Cari Menu

Favorit

2.2 Sistem Cari Jenis

Masakan 2.3 Sistem Tampil Daftar Masakan 2.4 Sistem Cari Restoran 2.5 Sistem Tentukan

Jarak dan Rute

Gambar 3.2 Diagram berjenjang sistem pendukung keputusan

Setelah pembuatan diagram berjenjang, kemudian dilanjutkan dengan perancangan DFD sistem yang berupa Context Diagram, yaitu diagram yang menggambarkan arus data pada level yang paling rendah.


(37)

Gambar 3.3 Context Diagram sistem pendukung keputusan

Dari Context Diagram kemudian dilakukan decompose untuk lebih memperdetail rancangan sistem kedalam DFD level 0, yang dibagi menjadi 2 subsistem, yaitu Sistem Pengolahan dan Penyimpanan Data Pada Sistem Pendukung Keputusan, dan Sistem Pendukung Keputusan, yang digambarkan pada gambar 3.4 berikut ini.


(38)

(39)

3.6.1 Rancangan Model Sistem Pengolahan dan Penyimpanan Data Pada Sistem Pendukung Keputusan

Gambar 3.5 DFD Level 1 Sistem Pengolahan dan Penyimpanan Data Pada Sistem Pendukung Keputusan


(40)

Dari DFD Level 1 Sistem Pengolahan dan Penyimpanan Data Pada Sistem Pendukung Keputusan, kemudian juga dilakukan decompose untuk lebih memperdetail gambaran dari sistem kedalam 7 subsistem, yaitu:

A. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Rumah Makan

Gambar 3.6 Model Sistem Pengolahan dan Penyimpanan Data Rumah Makan

Sistem Pengolahan dan Penyimpanan Data Rumah Makan memiliki 5 subproses, salah satu suproses yaitu Pengolahan Data Menu Masakan perlu dilakukan decompose lagi karena di dalam subsistem tersebut ada beberapa proses yang perlu dilakukan. Rancangan subsistem Pengolahan Data Menu Masakan adalah sebagai berikut.


(41)

Gambar 3.7 Model Sistem Pengolahan Data Menu Masakan

Gambar 3.7 Model Sistem Pengolahan Data Menu Masakan adalah model sistem yang melakukan pengolahan data dari menu masakan yang tersedia pada suatu rumah makan, tiap rumah makan makan memiliki daftar menu masakan yang berbeda, maka tiap rumah makan memiliki satu tabel

daftar_menu_rumah_makan_x. Pada nama tabel tersebut terdapat huruf “x”, artinya adalah ID dari rumah makan yang ada pada tabel rumah_makan. Misal rumah makan Mmmm memiliki ID rumah makan 125, dari ID tersebut maka tabel daftar menu rumah makan Mmmm bernama daftar_menu_rumah_makan_125.


(42)

B. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Masakan

Gambar 3.8 Model Sistem Pengolahan dan Penyimpanan Data Masakan

Gambar 3.8 Model Sistem Pengolahan dan Penyimpanan Data Masakan berfungsi menjelaskan rancangan pengolahan data dari data nama-nama masakan. Setiap masakan memiliki tabel penjual_masakan_x, pada tabel tersebut berisi ID rumah makan yang menyediakan menu masakan tersebut beserta harganya pada tiap-tiap rumah makan.


(43)

C. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Jenis Menu

Gambar 3.9 Model Sistem Pengolahan dan Penyimpanan Data Jenis Menu

Sistem ini adalah mengolah data-data jenis menu, misalnya jenis makanan, minuman, juice atau jenis-jenis yang lain. Dalam sistem ini, jenis menu berhubungan dengan daftar menu masakan rumah makan.


(44)

D. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Jenis Masakan

Gambar 3.10 Model Sistem Pengolahan dan Penyimpanan Data Jenis Masakan

Sistem ini berfungsi sebagai pengolahan dan penyimpanan data jenis masakan. Data jenis masakan misalnya suatu masakan apakah termasuk jenis masakan Asian, Fast Food, atau yang lainnya.

E. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Kelas Harga

Sistem pengolahan dan penyimpanan data kelas harga ini menyimpan data kelas harga atau kelas dari rumah makan. Data yang disimpan misalnya kelas harga murah, sedang, dan luxury (mahal).


(45)

Gambar 3.11 Model Sistem Pengolahan dan Penyimpanan Data Kelas Harga

F. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Jalan Sistem ini bertujuan untuk mengolah dan menyimpan data-data jalan yang ada di Surabaya.


(46)

G. Rancangan Model Sistem Pengolahan dan Penyimpanan Data Hubungan Jalan

Gambar 3.13 Model Sistem Pengolahan dan Penyimpanan Data Hubungan Jalan

Sistem ini berfungsi sebagai pengolah dan menyimpan data-data hubungan antar jalan satu dengan jalan lain yang terhubung langsung ke jalan tersebut. Misalnya Jalan Diponegoro, terhubung dengan jalan-jalan antara lain: Jalan Pasar Kembang, Raya Wonokromo, dan Jalan Dr. Sutomo.

3.6.2 Rancangan Model Sistem Pendukung Keputusan

Pada DFD Level 1 Sistem Pendukung Keputusan terdiri dari satu subsistem dari sistem pendukung keputusan, yaitu Sistem Pendukung Keputusan Pada Perangkat Mobile, sistem ini berada atau ter-install pada perangkat mobile


(47)

tiap-tiap user agar dapat mengakses sistem ini. DFD Level 1 Sistem Pendukung Keputusan digambarkan sebagai berikut.

Gambar 3.14 DFD Level 1 Sistem Pendukung Keputusan

Dari subsistem Sistem Pendukung Keputusan Pada Perangkat Mobile, kemudian dilakukan decompose yang menghasilkan 6 subsistem. Hasil decompose tersebut diuraikan pada gambar berikut ini.


(48)

Gambar 3.15 Model Sistem Pendukung Keputusan Pada Perangkat Mobile

3.6.3Perancangan Struktur Database

Perancangan struktur database dilakukan dengan pembuatan ERD, untuk menggambarkan entity yang saling berhubungan didalam database, susunannya sebagai berikut.


(49)

Gambar 3.16 ERD pada sistem pendukung keputusan

3.6.4Struktur Database

Berdasarkan perancangan-perancangan yang dilakukan dalam bentuk model pada sistem ini, kemudian dilanjutkan dengan pembuatan struktur database. Yang dilakukan didalam struktur database ini adalah pembuatan database dan tabel-tabel yang digunakan dalam sistem ini. Database pada sistem ini sebelumnya menggunakan Database MySQL 3.23.30-gamma, kemudian dilakukan upgrade ke versi yang lebih baru, yaitu menggunakan Database MySQL 5.0.0-alpha, nama database yang digunakan dalam Tugas Akhir ini adalah TA98410104155. Pada Database MySQL ada hal yang berbeda dibandingkan dengan database lain, yaitu tentang penggunaan foreign keys (FK), pada MySQL foreign keys tidak digunakan untuk menggabungkan dua tabel atau lebih, tetapi hanya digunakan untuk melihat informasi yang terdapat pada kolom


(50)

tertentu dari suatu tabel, dari kolom tabel yang lain. Adapun struktur dari database yang digunakan adalah sebagai berikut.

A. Tabel Angka

Tabel angka digunakan untuk menyimpan kode angka yang dipakai pada kode koordinat peta Surabaya.

Tabel 3.1 Struktur tabel angka

Field Name FK Table Type Lenght Keterangan

id_angka - int 2 ID angka

angka - char 2 Nama angka

B. Tabel Daftar Menu Rumah Makan X

Tabel daftar_daftar_menu_rumah_makan_x digunakan untuk menyimpan daftar menu masakan yang ada pada suatu rumah makan tertentu (x). Huruf “x” menandakan ID dari rumah makan yang memakai tabel tersebut. Tiap kali ada data rumah makan baru, maka secara otomatis program akan menciptakan tabel daftar_menu_rumah_makan_x ini sesuai dengan ID rumah makan yang diberikan sistem. Struktur tabel tersebut adalah sebagai berikut.

Tabel 3.2 Struktur tabel daftar menu rumah makan x

Field Name FK Table Type Lenght Keterangan

id_menu - int 5 ID menu

id_nama_menu masakan.id_masa

kan int 7 ID nama masakan

id_jenis_menu jenis_menu.id_je

nis_menu int 5 ID nama jenis menu


(51)

C. Tabel Hitung

Tabel hitung digunakan dalam proses untuk menentukan rute-rute jalan dan penghitungan jarak terpendek dari posisi user sampai posisi jalan rumah makan.

Tabel 3.3 Struktur tabel hitung

Field Name FK Table Type Lenght Keterangan

asal jalan.id_jalan int 6 Node jalan asal

tujuan jalan.id_jalan int 6 Node jalan tujuan

jarak jalan.panjang double 5,2 Jarak antar node

total - double 5,2 Total jarak

D. Tabel Hitung 2

Tabel hitung2 digunakan dalam proses untuk menentukan rute-rute jalan dan penghitungan jarak terpendek dari posisi user sampai posisi jalan rumah makan.

Tabel 3.4 Struktur tabel hitung 2

Field Name FK Table Type Lenght Keterangan

asal jalan.id_jalan int 6 Node jalan asal

tujuan jalan.id_jalan int 6 Node jalan tujuan

jarak jalan.panjang double 5,2 Jarak antar node


(52)

E. Hitung 3

Tabel hitung3 digunakan dalam proses untuk menentukan rute-rute jalan dan penghitungan jarak terpendek dari posisi user sampai posisi jalan rumah makan.

Tabel 3.5 Struktur tabel hitung 3

Field Name FK Table Type Lenght Keterangan

asal jalan.id_jalan int 6 Node jalan asal

tujuan jalan.id_jalan int 6 Node jalan tujuan

jarak jalan.panjang double 5,2 Jarak antar node

total - double 5,2 Total jarak

F. Tabel Hubungan Jalan

Tabel hubungan_jalan digunakan untuk menyimpan data hubungan antara jalan satu dengan lainnya.

Tabel 3.6 Struktur tabel hubungan jalan

Field Name FK Table Type Lenght Keterangan

id_hubungan_jalan - int 6 ID hubungan jalan

id_jalan1 jalan.id_jalan int 6 ID jalan pertama

id_jalan2 jalan.id_jalan int 6 ID jalan kedua

G. Tabel Huruf

Tabel huruf digunakan untuk menyimpan kode huruf yang dipakai pada kode koordinat peta Surabaya.


(53)

Tabel 3.7 Struktur tabel huruf

Field Name FK Table Type Lenght Keterangan

id_huruf - int 2 ID huruf

huruf - char 1 Nama huruf

H. Tabel Jalan

Tabel jalan digunakan untuk menyimpan data nama jalan yang ada di Kota Surabaya beserta kode koordinat jalan di peta dan panjang jalan.

Tabel 3.8 Struktur tabel jalan

Field Name FK Table Type Lenght Keterangan

id_jalan - int 5 ID jalan

nama_jalan - varchar 50 Nama jalan

id_blok_huruf huruf.id_huruf int 2 ID koordinat huruf

id_blok_angka angka.id_angka int 2 ID koordinat angka

panjang - double 5,2 Panjang jalan

I. Tabel Jalan 2

Tabel jalan2 sama dengan tabel jalan, digunakan untuk menyimpan data nama jalan yang ada di Kota Surabaya beserta kode koordinat jalan di peta dan panjang jalan. Tabel jalan digunakan sebagai mirror tabel jalan, untuk mengolah sistem hubungan jalan.


(54)

Tabel 3.9 Struktur tabel jalan 2

Field Name FK Table Type Lenght Keterangan

id_jalan2 - int 5 ID jalan 2

nama_jalan2 - varchar 50 Nama jalan 2

id_blok_huruf huruf.id_huruf int 2 ID koordinat huruf

id_blok_angka angka.id_angka int 2 ID koordinat angka

panjang - double 5,2 Panjang jalan

J. Tabel Jenis Masakan

Tabel jenis_masakan digunakan untuk menyimpan data-data jenis masakan, misalnya jenis masakan Indonesian, Asian, dan lain sebagainya.

Tabel 3.10 Struktur tabel jenis masakan

Field Name FK Table Type Lenght Keterangan

id_jenis_masakan - int 5 ID jenis masakan

jenis_masakan - varchar 50 Nama jenis masakan

K. Tabel Jenis Menu

Tabel jenis_menu digunakan untuk menyimpan data jenis menu, misalnya jenis menu makanan, minuman, juice, dan lain sebagainya.

Tabel 3.11 Struktur tabel jenis menu

Field Name FK Table Type Lenght Keterangan

id_jenis_menu - int 5 ID jenis menu


(55)

L. Tabel Kelas Harga

Tabel kelas_harga digunakan untuk menyimpan data berbagai macam kelas harga rumah makan, misalnya murah, sedang, atau luxury (mahal).

Tabel 3.12 Struktur tabel kelas harga

Field Name FK Table Type Lenght Keterangan

id_kelas_harga - int 5 ID kelas harga

kelas_harga - varchar 50 Nama kelas harga

M.Tabel Masakan

Tabel masakan digunakan untuk menyimpan data-data nama masakan yang ada pada sistem ini, misalnya nasi goreng, ayam panggang, dan lain-lain.

Tabel 3.13 Struktur tabel masakan

Field Name FK Table Type Lenght Keterangan

id_masakan - int 7 ID masakan

nama_masakan - varchar 60 Nama masakan

N. Tabel Penjual Masakan X

Tabel penjual_masakan_x digunakan untuk menyimpan data-data rumah makan yang menyediakan suatu masakan, huruf “x” pada nama tabel

penjual_masakan_x menunjukkan ID masakan yang ada pada tabel masakan. Tiap kali ada input nama masakan baru pada tabel masakan, maka program secara otomatis akan membuat tabel penjual_masakan_x. Jika ada rumah makan yang


(56)

menambahkan nama masakan tertentu maka, tabel penjual_masakan_x akan menambahkan ID rumah makan yang menjual masakan tersebut.

Tabel 3.14 Struktur tabel penjual masakan x

Field Name FK Table Type Lenght Keterangan

id - int 7 ID penjual masakan

id_rumah_makan rumah_makan.id_

rumah_makan int 7 ID rumah makan

id_jenis_menu jenis_menu.id_je

nis_menu int 5 ID jenis menu

harga

daftar_menu_rum ah_makan_x.harg a

double 10,2 Harga yang dipakai di rumah makan

O. Tabel Rumah Makan

Tabel rumah_makan digunakan untuk menyimpan data tentang rumah makan, termasuk didalamnya nama rumah makan, alamat rumah makan, dan hal lain yang berhubungan dengan rumah makan seperti telepon, jenis masakan yang disediakan, dan keterangan.

Tabel 3.15 Struktur tabel rumah makan

Field Name FK Table Type Lenght Keterangan

id_rumah_mak

an - int 7 ID rumah makan

nama_rumah_

makan - varchar 50 Nama rumah makan

id_jalan_rumah

_makan jalan.id_jalan int 5 Jalan rumah makan

nomor_rumah_

makan - varchar 15

Nomor alamat rumah makan

telepon - varchar 12 Nomor telepon


(57)

Field Name FK Table Type Lenght Keterangan

id_jenis_masak an

jenis_masakan.id

_jenis_masakan int 5 ID jenis masakan

id_kelas_harga kelas_harga.id_ke

las_harga int 5 ID kelas harga

keterangan - varchar 50 Keterangan lain

rumah makan

P. Tabel Rute

Tabel rute digunakan untuk menyimpan data rute terpendek jalan yang dapat ditempuh oleh user setelah sistem melakukan penghitungan jarak dan rute terdekat.

Tabel 3.16 Struktur tabel rute

Field Name FK Table Type Lenght Keterangan

rute jalan.id_jalan int 6 ID rute terpendek


(58)

IMPLEMENTASI DAN EVALUASI

Pada bagian implementasi dan evaluasi akan dibahas tentang penerapan landasan teori dan metode penelitian dari sistem pendukung keputusan penentuan rumah makan berbasis Java 2 Micro Edition (J2ME) ini kedalam implementasi

hardware dan software. Setelah dilakukan implementasi dilanjutkan dengan evaluasi dari penerapan tersebut.

4.1 Implementasi

Implementasi bertujuan menerapkan semua yang telah dilakukan pada langkah-langkah sebelumnya kedalam bentuk sistem yang telah direncanakan.

4.1.1 Implementasi Hardware

Pada Tugas Akhir ini implementasi sistem diterapkan pada komputer dengan spesifikasi pokok sebagai berikut:

1. Prosesor AMD K-6 II 350 ™3D processor. 2. Mainboard DFI K6BV3+ Rev A.

3. Hardisk 40 Giga Bytes.

4. Memori Visipro SDRAM 160 Mega Bytes, terdiri dari 64 Mega Bytes sebanyak 2 keping, dan 32 Mega Bytes sebanyak 1 keping.

5. Video Graphic Adapter (VGA) dengan memori sebesar 4 Mega Bytes.

Komputer dengan spesifikasi tersebut digunakan sebagai server dari

database dan Java Server Pages (JSP). Dari hardisk 40 Giga Bytes yang terdapat pada komputer tersebut, yang terpakai dalam implementasi sistem ini kurang lebih


(59)

hanya sekitar 150 Mega Bytes saja. Sebagai ujicoba dari program yang telah dibuat pada perangkat mobile, apakah dapat dijalankan pada perangkat yang sebenarnya, maka juga digunakan sebuah handphone produksi dari Siemens AG, yaitu Siemens C55 yang memiliki spesifikasi total memori sebesar 512 Kbytes, dan 376 Kbytes yang dapat dimodifikasi, serta mendukung protokol untuk komunikasi data General Packet Radio Service (GPRS) dan Circuit Switched Data (CSD), serta memiliki firmware versi 19. Handphone tersebut digunakan karena memiliki fitur Java yang telah terintegrasi di dalamnya, meskipun tampilan layarnya masih hitam putih.

Gambar 4.1 Handphone SIEMENS C55

Untuk mentransfer aplikasi J2ME yang telah dibuat kedalam handphone, terlebih dahulu firmware C55 diberi patch dengan software Siemens x5x Java Enabler 1.3 by Skylord untuk membuka sistem handphone agar aplikasi dapat ditransfer. Selanjutnya untuk mentrasfer aplikasi pada handphone Siemens digunakan kabel data dari handphone Siemens C55, yang terhubung melalui COM 1 menggunakan software Siemens Data Exchange.


(60)

Gambar 4.2 Siemens x5x Java Enabler 1.3 by Skylord

Aplikasi yang telah dibuat, di-copy-kan pada folder Mobile\java\jam yang ada pada Siemens C55. Aplikasi harus diletakkan pada folder tersebut, agar firmware dari handphone dapat mengenali aplikasi untuk dijalankan, tetapi pada handphone yang lain cara instalasi aplikasi MIDlet ini berbeda, tergantung vendor

perangkatnya asalkan mobile device yang dipakai telah Java Enable.

4.1.2 Implementasi Software

Dalam implementasi software, terdiri dari beberapa macam software yang semuanya saling berhubungan, mulai dari sistem operasi, teks editor, editor HTML, server, database, dan emulator. Sofware-software tersebut adalah sebagai berikut:

1. Sistem operasi menggunakan Microsoft Windows XP Professional versi 2002 dengan Service Pack 1.

2. JDK 1.3 yang kemudian di-upgrade ke JSDK 1.4.0 digunakan sebagai Java


(61)

3. Server JSP menggunakan Allaire Jrun 3.0 produksi Allaire Corporation, yang sekarang telah bergabung dengan Macromedia. Sehingga versi terbarunya bernama Macromedia JRun.

4. Database sebelumnya menggunakan MySQL 3.23.30-gamma, kemudian di-upgrade ke MySQL 5.0.0-alpha.

5. Administrasi database MySQL menggunakan phpMyAdmin 2.1.0, yaitu suatu aplikasi administrasi database MySQL yang berbasis web, menggunakan bahasa pemrograman PHP, dan berjalan pada server Apache versi 1.3.14. 6. J2ME Wireless Toolkit 1.0.4_01 digunakan sebagai emulator Java Phone dan

sebagai pembuat class-class yang nantinya dapat dieksekusi pada perangkat mobile yang sebenarnya.

7. Palm OS Emulator digunakan untuk ujicoba aplikasi dari sistem pendukung keputusan ini pada Palm OS.

8. Sysbase Power Designer 6 sebagai tool dalam perancangan model sistem. 9. Software pendukung lain yang berguna dalam penyusunan keseluruhan sistem

pendukung keputusan ini.

Setelah semua komponen hardware dan sofware dapat berjalan dengan semestinya, maka sistem pendukung keputusan berbasis J2ME ini akan dapat berfungsi sesuai yang diharapkan. Berikut adalah gambaran implementasi sistem pendukung keputusan ini.


(62)

Windows XP Professional Database MySQL 5.0.0-alpha Penulisan listing program MIDlet Penulisan listing program JSP

Teks editor Edit Plus Java Standard Development Kit 1.4.0 Allaire Jrun 3.0 Web Server J2ME Wireless Toolkit

Developer Sistem Pendukung Keputusan

Penentuan Rumah Makan Berbasis J2ME

Web JSP untuk

query database Aplikasi MIDlet Dicompille Ditampilkan Ditampilkan Request Data Query Database Interaksi User


(63)

1. Sistem Maintenance Data

Sistem maintenance data berupa web yang disusun dengan menggunakan JSP, digunakan sebagai sarana untuk menginputkan data-data yang diperlukan pada sistem pendukung keputusan ini. Data-data yang diinputkan adalah sebagai berikut:

1. Rumah makan, adalah sistem maintenance data rumah makan dan daftar menu rumah makan.

2. Daftar Masakan, adalah sistem maintenance daftar nama-nama masakan. 3. Jenis Menu, adalah sistem maintenance macam-macam jenis menu. 4. Jenis masakan, adalah sistem maintenance data jenis masakan.

5. Kelas harga, adalah sistem maintenance data kelas harga dari rumah makan. 6. Jalan, adalah sistem maintenance data jalan yang ada di Surabaya.

7. Hubungan jalan, adalah sistem maintenance data koneksi hubungan antar jalan.


(64)

2. Tampilan Awal Sistem Pendukung Keputusan

Gambar 4.5 Tampilan awal sistem pendukung keputusan

Pada saat program pertama kali dijalankan maka akan menampilkan 5 menu awal yang terdiri dari menu favorit, jenis masakan, menu restoran, rumah makan di jalan, serta jarak dan rute. Untuk memilih menu yang dipilih menggunakan panah atas atau panah bawah pada handphone.

3. Menu Favorit

Menu favorit digunakan untuk mencari rumah makan yang menyediakan menu masakan yang kita kehendaki, outputnya berupa nama rumah makan yang menyediakan masakan yang kita cari. Berikut ini adalah gambaran pada sistem pencarian menu favorit.


(65)

Sebelum dilakukan pencarian menu favorit, jika perlu dapat dilakukan

setting jenis menu yang akan dicari. Setting jenis menu terdiri dari menampilkan semuanya, menampilkan jenis makanan, minuman, atau jenis yang lain.

Gambar 4.7 Menu setting pencarian jenis menu

Menu help pada pencarian menu favorit berisi keterangan singkat tentang cara kerja sistem pencarian menu favorit. Isi lengkap dari help adalah sebagai berikut, sebelum mencari menu favorit, periksa mode pencarian, apakah sesuai dengan keinginan anda, lalu inputkan nama menu favorit yang anda inginkan pada pencarian menu, pastikan nama menu yang anda inputkan telah sesuai. Hal tersebut agar pencarian dapat memberikan hasil yang optimal dan sesuai harapan anda. Jika sistem memberikan hasil yang tidak anda harapkan atau tidak memberikan hasil (blank), kemungkinan input yang anda lakukan pada pencarian menu kurang lengkap atau data tidak ditemukan oleh sistem, ulangi dengan kata kunci yang lain.


(66)

Gambar 4.8 Menu help pencarian jenis menu

Input pada pencarian menu favorit adalah nama masakan yang hendak kita cari. Setelah menginputkan nama masakan yang kita cari lalu pilih tombol OK agar sistem mulai melakukan pencarian.

Gambar 4.9 Menu input nama menu yang kita cari

Hasil output jika rumah makan yang menyediakan masakan yang kita cari telah ditemukan adalah pada gambar 4.10. Jika rumah makan yang menyediakan masakan yang kita cari tidak ditemukan maka outpunya seperti pada gambar 4.11.


(67)

Gambar 4.10 Output hasil pencarian jika rumah makan penyedia ditemukan

Gambar 4.11 Output hasil pencarian jika rumah makan penyedia tidak ditemukan

Pada kondisi tertentu kemungkinan koneksi ke server tidak berhasil atau gagal karena putusnya jaringan atau sebab lain. Jika terjadi hal demikian output yang dikeluarkan sistem adalah sebagai berikut.


(68)

Gambar 4.12 Output jika koneksi ke server gagal atau putus

4. Jenis Masakan

Menu pencarian jenis masakan digunakan untuk mencari rumah makan yang menyediakan jenis masakan yang sesuai dengan yang kita inputkan. Misalnya jenis masakan Indonesia, Asian, atau yang lainnya. Untuk pencarian yang lebih spesifik maka dapat dilakukan setting pencarian seperti pada gambar 4.14 berikut ini.


(69)

Gambar 4.14 Menu setting kelas harga pada pencarian jenis masakan

Gambar 4.15 Menu help pada pencarian jenis masakan

Isi selengkapnya dari menu help pada pencarian jenis masakan adalah sebagai berikut, Sebelum mencari rumah makan dengan jenis masakan tertentu sesuai dengan keinginan anda, pastikan setting kelas harga telah sesuai dengan keinginan anda. Setting standar kelas harga adalah pada pencarian di seluruh kelas harga. Untuk memulai pancarian rumah makan, inputkan nama jenis masakan yang anda cari. Jika sistem tidak memberikan hasil (blank) atau data yang ditampilkan tidak sesuai dengan keinginan anda, kemungkinan data yang anda inputkan kurang lengkap atau data rumah makan tidak ditemukan, cobalah dengan menginputkan nama jenis masakan yang lain.


(70)

Gambar 4.16 Menu input nama jenis masakan yang kita cari

Gambar 4.17 Output hasil pencarian jika rumah makan penyedia ditemukan


(71)

Gambar 4.19 Output jika koneksi ke server gagal atau putus

5. Daftar Menu

Daftar menu digunakan untuk menampilkan apa saja menu masakan, baik makanan, minuman atau yang lain yang disediakan di suatu rumah makan. Untuk menampilkan daftar menu menurut jenisnya maka dapat dilakukan setting penampilan menu, yaitu pada menu jenis menu, seperti pada gambar 4.21 berikut.


(72)

Gambar 4.21 Menu setting jenis menu masakan yang akan ditampilkan

Gambar 4.22 Menu help pada daftar menu

Menu help berisi keterangan tentang menu daftar menu ini, isi selengkapnya adalah sebagai berikut, menu ini digunakan untuk menampilkan daftar menu dari rumah makan yang ingin anda ketahui, dengan cara inputkan nama rumah makan pada kotak dialog, sebelumnya pastikan bahwa mode penampilan menu masakan pada bagian tampil daftar menu telah sesuai dengan yang anda kehendaki, pilihannya antara lain tampilkan semuanya, makanan, minuman, atau lain-lain. Jika sistem memberikan hasil yang tidak anda harapkan atau tidak memberikan hasil (blank), kemungkinan input yang anda lakukan pada nama restoran atau rumah makan kurang lengkap atau data tidak ditemukan oleh sistem, ulangi dengan kata kunci rumah makan yang lain.


(73)

Gambar 4.23 Menu input nama rumah makan

Gambar 4.24 Output daftar menu masakan yang ditampilkan


(74)

Gambar 4.26 Output jika koneksi ke server gagal atau putus

6. Rumah Makan di Jalan Tertentu

Menu rumah makan di jalan tertentu ini digunakan untuk menampilkan seluruh rumah makan yang ada di suatu lokasi jalan tertentu. Jika diperlukan dapat dilakukan setting pencarian, yaitu berdasarkan kelas harga, seperti pada gambar 4.28 berikut ini.

Gambar 4.27 Menu awal pencarian rumah makan di jalan tertentu


(75)

Menu help pencarian rumah makan di lokasi jalan tertentu berisi penjelasan tentang pencarian rumah makan disuatu lokasi jalan. Isi lengkap dari menu help ini adalah sebagai berikut, pencarian rumah makan pada menu ini adalah mencari berdasar lokasi jalan alamat rumah makan, untuk itu pastikan bahwa nama jalan yang anda inputkan telah benar agar dapat memberikan hasil yang sesuai. Gunakan menu kelas restoran untuk melakukan setting mode pencarian agar lebih spesifik berdasarkan kelas harga rumah makan yang ingin anda cari, setting standar pada menu kelas restoran adalah menampilkan seluruh restoran pada jalan yang anda kehendaki. Jika sistem memberikan hasil yang tidak anda harapkan atau tidak memberikan hasil (blank), kemungkinan input yang anda lakukan pada lokasi jalan kurang lengkap atau data tidak ditemukan oleh sistem, ulangi dengan kata kunci yang lain.

Gambar 4.29 Menu help pada pencarian rumah makan di suatu lokasi jalan


(76)

Gambar 4.31 Output hasil pencarian rumah makan di suatu lokasi jalan

Gambar 4.32 Output jika nama jalan tidak ditemukan


(77)

7. Jarak dan Rute

Jarak dan rute digunakan untuk menampilkan saran tentang rute terpendek dari jalan yang dapat kita lalui untuk dapat menuju ke suatu rumah makan. Pada menu jarak dan rute ini, yang akan ditampilkan adalah saran nama-nama jalan yang merupakan rute terpendek dari posisi user sampai dengan lokasi rumah makan yang dikehendaki.

Gambar 4.34 Menu tampilan awal pada pencarian jarak dan rute

Menu help berisi tentang penjelasan sistem pencarian jarak dan rute terdekat, secara keseluruhan isi dari menu help adalah sebagai berikut, Pencarian rumah makan pada menu ini adalah mencari berdasar nama rumah makan dari lokasi Anda, untuk itu pastikan bahwa nama rumah makan dan lokasi jalan Anda sekarang yang Anda inputkan telah benar agar dapat memberikan hasil yang sesuai. Jika sistem tidak memberikan hasil (blank) atau data yang ditampilkan tidak sesuai, kemungkinan data lokasi yang anda inputkan kurang lengkap atau data rumah makan tidak ditemukan.


(78)

Gambar 4.35 Menu help pada pencarian jarak dan rute


(79)

Gambar 4.37 Hasil output saran rute terdekat dan jarak yang ditempuh


(80)

Gambar 4.39 Output jika nama rumah makan tidak ditemukan

Gambar 4.40 Output jika koneksi pada server gagal atau terputus

4.2 Evaluasi

Setelah dilakukan implementasi sistem pendukung keputusan penentuan rumah makan, baik secara hardware dan software, kemudian dilakukan evaluasi. Evaluasi yang dilakukan dalam proses penyelesaian sistem pendukung keputusan ini dilakukan pada saat pembuatan program dan pada tahap akhir, yaitu setelah program selesai semuanya. Evaluasi yang dilakukan pada saat pembuatan program bertujuan untuk mengetahui error yang terjadi lebih awal pada suatu unit, sebelum pembuatan unit selanjutnya, sehingga segera dapat dilakukan pembenahan. Sedangkan evaluasi setelah program selesai bertujuan memastikan


(81)

lancar tidaknya jalannya sistem, dengan melihat hubungan dari tiap unit yang menyusun sistem.

Setelah data-data mengenai hasil evaluasi terkumpul, lalu dilakukan analisis hasil uji coba dengan melihat kecocokan antara hasil uji coba terhadap subjek coba dengan sistem pendukung keputusan ini. Dari hasil uji coba tersebut dijadikan masukan untuk melakukan pembenahan-pembenahan terhadap sistem agar lebih sempurna.

4.2.1 Evaluasi Sistem Pengolahan dan Penyimpanan Data

Sistem pengolahan dan penyimpanan data adalah server dari sistem pendukung keputusan berbasis J2ME ini, seluruh data berada pada bagian ini. Evaluasi yang dilakukan bertujuan untuk mengetahui semua fungsi pada subsistem ini, apakah sudah berfungsi dengan benar, karena jika tidak maka secara keseluruhan sistem pendukung keputusan tidak akan dapat berfungsi. Berikut adalah tes yang dilakukan pada subsistem ini.

A. Evaluasi Menu Utama

Tabel 4.1 Daftar evaluasi pada menu utama pengolahan dan penyimpanan data

No. Fungsi Berfungsi ?

Ya Tidak 1. Halaman utama dapat ditampilkan semua. √

2. Logo Kota Surabaya dapat ditampilkan. 3. Warna dapat ditampilkan semua.

4. Scroll halaman.


(82)

No. Fungsi Berfungsi ? Ya Tidak 6. Tombol home dapat berfungsi.

7. Tombol rumah makan dapat berfungsi. 8. Tombol daftar masakan dapat berfungsi. 9. Tombol jenis menu dapat berfungsi. 10. Tombol jenis masakan dapat berfungsi. 11. Tombol kelas harga dapat berfungsi. 12. Tombol jalan dapat berfungsi. 13. Tombol hubungan jalan dapat berfungsi.

B. Evaluasi Menu Sistem Data Rumah Makan

Tabel 4.2 Daftar evaluasi pada menu sistem data rumah makan

No. Fungsi Berfungsi ?

Ya Tidak 1. Halaman awal sistem data rumah makan dapat

ditampilkan semua. √

2. Tombol tambah data dapat berfungsi. √ 3. Tombol menu masakan dapat berfungsi. √ 4. Tombol edit data dapat berfungsi. √ 5. Tombol tampilkan data dapat berfungsi. √ 6. Proses penambahan data rumah makan. √ 7. Konfirmasi jika penambahan data berhasil √ 8. Proses edit data rumah makan. √ 9. Proses update data rumah makan √ 10. Konfirmasi update data rumah makan (sukses/gagal) √ 11. Proses hapus data rumah makan √ 12. Proses tampilkan data-data rumah makan √ 13. Proses tambah data menu masakan rumah makan √ 14. Konfirmasi jika penambahan sukses √ 15. Proses edit data menu masakan rumah makan √


(83)

No. Fungsi Berfungsi ? Ya Tidak 16. Proses update data menu masakan rumah makan √

17. Konfirmasi update data menu masakan (sukses/gagal) √ 18. Proses hapus data menu masakan rumah makan √

C. Evaluasi Menu Sistem Data Masakan

Tabel 4.3 Daftar evaluasi pada menu sistem data masakan

No. Fungsi Berfungsi ?

Ya Tidak 1. Halaman awal sistem daftar masakan dapat

ditampilkan semua. √

2. Tombol tambah data masakan dapat berfungsi. √ 3. Tombol edit data masakan dapat berfungsi. √ 4. Tombol tampil data masakan dapat berfungsi. √ 5. Proses tambah data masakan dapat berfungsi. √ 6. Konfirmasi proses tambah data masakan

(sukses/gagal). √

7. Proses edit data masakan dapat berfungsi. √ 8. Proses update data masakan dapat berfungsi. √ 9. Konfirmasi proses update data masakan

(sukses/gagal). √

10. Proses hapus data masakan dapat berfungsi. √ 11. Proses tampil data masakan dapat berfungsi. √

D. Evaluasi Menu Sistem Data Jenis Menu

Tabel 4.4 Daftar evaluasi pada menu sistem data jenis menu

No. Fungsi Berfungsi ?

Ya Tidak 1. Halaman awal sistem data jenis menu dapat


(84)

No. Fungsi Berfungsi ? Ya Tidak 2. Tombol tambah data jenis menu dapat berfungsi. √

3. Tombol edit data jenis menu dapat berfungsi. √ 4. Tombol tampil data jenis menu dapat berfungsi. √ 5. Proses tambah data jenis menu dapat berfungsi. √ 6. Konfirmasi proses tambah data jenis menu

(sukses/gagal). √

7. Proses edit data jenis menu dapat berfungsi. √ 8. Proses update data jenis menu dapat berfungsi. √ 9. Konfirmasi update data jenis menu (sukses/gagal). √ 10. Proses hapus data jenis menu dapat berfungsi. √ 11. Proses tampil data jenis menu dapat berfungsi. √

E. Evaluasi Menu Sistem Data Jenis Masakan

Tabel 4.5 Daftar evaluasi pada menu sistem data jenis masakan

No. Fungsi Berfungsi ?

Ya Tidak 1. Halaman awal sistem data jenis masakan dapat

ditampilkan semua. √

2. Tombol tambah data jenis masakan dapat berfungsi. √ 3. Tombol edit data jenis masakan dapat berfungsi. √ 4. Tombol tampil data jenis masakan dapat berfungsi. √ 5. Proses tambah data jenis masakan dapat berfungsi. √ 6. Konfirmasi proses tambah data jenis masakan

(sukses/gagal). √

7. Proses edit data jenis masakan dapat berfungsi. √ 8. Proses update data jenis masakan dapat berfungsi. √ 9. Konfirmasi update data jenis masakan (sukses/gagal). √ 10. Proses hapus data jenis masakan dapat berfungsi. √ 11. Proses tampil data jenis masakan dapat berfungsi. √


(1)

86

C. Evaluasi Pencarian Jenis Masakan

Tabel 4.12 Daftar evaluasi pada menu sistem pencarian jenis masakan

No. Fungsi Berfungsi ?

Ya Tidak

1. Tampilan awal cari jenis masakan. √

2. Fungsi penunjuk pilihan (naik dan turun). √

3. Fungsi pilihan menu. √

4. Fungsi setting kelas harga. √

5. Fungsi tampilkan help. √

6. Fungsi pencarian jenis masakan. √

7. Fungsi input nama jenis masakan yang dicari. √ 8. Tampilkan hasil pencarian jika data ditemukan. √ 9. Pesan dari sistem jika data tidak ditemukan. √ 10. Pesan dari sistem jika koneksi ke server gagal. √

D. Evaluasi Sistem Daftar Menu Rumah Makan

Tabel 4.13 Daftar evaluasi pada sistem daftar menu rumah makan

No. Fungsi Berfungsi ?

Ya Tidak 1. Tampilan awal daftar menu masakan rumah makan. √

2. Fungsi penunjuk pilihan (naik dan turun). √

3. Fungsi pilihan menu. √

4. Fungsi setting jenis menu. √

5. Fungsi tampilkan help. √

6. Fungsi tampil daftar masakan. √

7. Fungsi input nama rumah makan. √

8. Tampilkan hasil pencarian jika data ditemukan. √ 9. Pesan dari sistem jika data tidak ditemukan. √ 10. Pesan dari sistem jika koneksi ke server gagal. √


(2)

E. Evaluasi Pencarian Rumah Makan di Lokasi Jalan Tertentu

Tabel 4.14 Daftar evaluasi pada menu sistem pencarian rumah makan di lokasi jalan tertentu

No. Fungsi Berfungsi ?

Ya Tidak 1. Tampilan awal pencarian rumah makan. √

2. Fungsi penunjuk pilihan (naik dan turun). √

3. Fungsi pilihan menu. √

4. Fungsi setting kelas harga rumah makan. √

5. Fungsi tampilkan help. √

6. Fungsi tampilkan daftar rumah makan. √

7. Fungsi input nama jalan. √

8. Tampilkan hasil pencarian jika data ditemukan. √ 9. Pesan dari sistem jika data tidak ditemukan. √ 10. Pesan dari sistem jika koneksi ke server gagal. √

F. Evaluasi Penentuan Jarak dan Rute Terpendek

Tabel 4.15 Daftar evaluasi pada menu sistem pencarian jarak dan rute terpendek

No. Fungsi Berfungsi ?

Ya Tidak 1. Tampilan awal penentuan jarak dan rute terpendek. √

2. Fungsi penunjuk pilihan (naik dan turun). √

3. Fungsi tampilkan help. √

4. Fungsi pilihan menu. √

5. Fungsi input nama jalan posisi user. √

6. Fungsi input nama rumah makan. √

7. Tampilkan hasil pencarian jika data ditemukan. √ 8. Pesan dari sistem jika data nama jalan posisi user


(3)

88

No. Fungsi Berfungsi ?

Ya Tidak 9. Pesan dari sistem jika data nama rumah makan yang

dicari user tidak ditemukan. √

10. Pesan dari sistem jika data posisi user dan nama

rumah makan tidak ditemukan. √

11. Pesan dari sistem jika koneksi ke server gagal. √ 12. Tampilkan daftar rute-rute yang menjadi saran dari

sistem. √

13. Tampilkan total jarak yang dilalui. √

4.2.3 Evaluasi Sistem Pendukung Keputusan Secara Keseluruhan Tabel 4.16 Daftar evaluasi sistem secara keseluruhan

No. Evaluasi Nilai

Baik Cukup Kurang

1. Tampilan sistem pada server.

2. Tampilan pada sistem pengambil keputusan.

3. Tampilan pesan kesalahan.

4. Kemudahan dalam pengoperasian.

5. Kompabilitas aplikasi.

6. Manfaat sistem.

7. Sistem user interface.

8. Kelengkapan data.

9. Ketepatan sistem pendukung keputusan.


(4)

5.1 Kesimpulan

Dari hasil rancang bangun sistem pendukung keputusan ini, maka dapat diambil kesimpulan:

1. Teknologi Java merupakan teknologi yang kompatibel dengan berbagai macam perangkat, mulai dari komputer dengan berbagai macam sistem operasi, sampai dengan mobile device mulai dari yang berspesifikasi minimal, sampai yang canggih asalkan Java Support.

2. Aplikasi sistem pendukung keputusan penentuan rumah makan berbasis Java 2 Micro Edition (J2ME) ini akan meminimalkan pemakaian biaya, tenaga, dan waktu hanya dengan memanfaatkan teknologi yang ada dan sudah umum. 3. Pencarian informasi dengan teknologi J2ME dan General Packet Radio

Service (GPRS) akan lebih menghemat pulsa, dibandingkan penggunaan Short Message Service (SMS), karena dengan J2ME dan GPRS, informasi yang kita dapat melalui protokol internet proses perhitungan biayanya per Kilo Bytes. 5.2 Saran

Meskipun aplikasi sistem pendukung keputusan ini telah berhasil digunakan untuk memecahkan masalah, namun disadari bahwa masih ada beberapa hal yang dapat diperbaiki dan dikembangkan lebih lanjut dari Tugas Akhir ini, antara lain:

1. Penambahan fungsi display yang lebih menarik pada sistem pendukung keputusan ini, agar saran dari sistem ditampilkan lebih jelas dan sempurna.


(5)

90

2. Penambahan sistem navigasi atau GPS (Global Positioning System) dan GIS (Geographical Information System) dengan tampilan peta digital dan penunjuk arah pada perangkat mobile, yang dapat mendeteksi posisi user secara otomatis.

3. Melengkapi sistem pendukung keputusan ini dengan pencarian rute terpendek dan tersingkat dengan meminimalkan hambatan diantara posisi user dengan tujuan.

4. Penambahan fungsi pemesanan masakan, pembayaran, dan delivery service secara online, dengan disertai tampilan langsung dari menu masakan yang akan dipesan pada layar perangkat mobile user. Disertai sistem pembayaran yang aman.

5. Pengembangan sistem ini sebagai pendukung keputusan bagi masalah-masalah lain yang berkaitan dengan logika, rute, dan pemrograman dinamik.


(6)

Feng, Y. and Zhu J, Dr, 2001, Wireless Java™ Programming With J2ME™, Sams Publishing, Indianapolis.

Hartanto, Antonius A, 2003, Tip dan Trik Java 2 Micro Edition Tingkat Lanjut, PT. Elex Media Komputindo, Jakarta.

Lucas, JR. and Henry C, 1985, The Analysis, Design, and Implementation of Information Systems, McGraw-Hill, Inc, New York.

Morrison, M, 2001, Teach Yourself Wireless Java™ with J2ME™ in 21 Days, Sams Publishing, Indianapolis.

Sedgewick, Robert, 1983, Algorithms, Addison-Wesley Publishing Company, Inc, Massachusetts.

Silalahi, Nurain, 2003, Komunikasi Mobil Publik dan Sistem Komunikasi Personal PCS, PT. Elex Media Komputindo, Jakarta.

Stallings, William, 2002, Wireless Communications and Networks, Prentice Hall, New Jersey.

Taha, Hamdy A, 1996, Riset Operasi Suatu Pengantar Jilid 1, Binarupa Aksara, Jakarta.

Tanembaum, Andrew S, 1997, Jaringan Komputer Jilid 1, Prenhallindo, Jakarta. Tanembaum, Andrew S, 1997, Jaringan Komputer Jilid 2, Prenhallindo, Jakarta. Tremblett, P, 2001, Instant Wireless Java™ with J2ME™, McGraw-Hill, Inc,

New York.

Turban, E. and Aronson, J, 1998, Decision Support System and Intelligent System, Prentice-Hall International, Inc, London.

Wicaksono, Ady, 2002, Pemrograman Aplikasi Wireless dengan Java, PT. Elex Media Komputindo, Jakarta.