Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan...

25
Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi Kasus: Cafe Neo Salatiga) Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer Peneliti : Jeffry Christian (672011177) Radius Tanone, S.Kom., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Mei 2015

Transcript of Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan...

Page 1: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Penerapan Sistem Pendukung Keputusan Berbasis

Android Menggunakan Logika Fuzzy Tahani Pada

Aplikasi Pemesanan Makanan

(Studi Kasus: Cafe Neo Salatiga)

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Jeffry Christian (672011177)

Radius Tanone, S.Kom., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2015

Page 2: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Lembar Persetujuan

Page 3: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Lembar Pengesahan

Page 4: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Pernyataan Persetujuan Publikasi

Page 5: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Pernyataan Persetujuan Akses

Page 6: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Pernyataan Tidak Plagiat

Page 7: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

Penerapan Sistem Pendukung Keputusan Berbasis

Android Menggunakan Logika Fuzzy Tahani Pada

Aplikasi Pemesanan Makanan

(Studi Kasus: Cafe Neo Salatiga)

Artikel Ilmiah

Oleh:

Jeffry Christian

Nim: 672011177

Telah disetujui untuk diuji:

Tanggal 06-05-2015

Pembimbing

Radius Tanone, S.Kom., M.Cs

Page 8: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

1

Penerapan Sistem Pendukung Keputusan Berbasis

Android Menggunakan Logika Fuzzy Tahani Pada

Aplikasi Pemesanan Makanan

(Studi Kasus: Cafe Neo Salatiga)

1) Jeffry Christian,

2) Radius Tanone

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: 1)

[email protected], 2)

[email protected]

Abstract

Constraints that occur in the cafe is no online food ordering system and the

selection of food menu with a list of quite a lot and confusing. Research conducted

using a method Tahani Fuzzy Logic research as a decision support system that is

used as a way to overcome the problems that occurred in the cafe. Methods of

research carried out in our stages, namely the identification of issues, system

design, application development, implementation and system testing and analysis

of test results. System design method used is prototype. The system is made

applicable to a device Android Jelly Bean version 4.1.2 and above. Results

obtained in the study made the cafe visitors can order food online and the

selection of fast food menu. Based decision support system trial can be concluded

that a system built to help determine the food menu to be ordered at the cafe.

Keywords : Decision Support Systems, Logic Fuzzy Tahani, GCM (Google Cloud

Messaging), Cafe.

Abstrak

Kendala yang terjadi di dalam cafe yaitu tidak ada sistem pemesanan

makanan secara online serta pemilihan menu makanan dengan daftar yang cukup

banyak dan membingungkan. Sehingga dibutuhkan sistem pemesanan makanan

online dan dilengkapi dengan sistem rekomendasi untuk memilih menu makanan

yang akan dipesan. Metode penelitian dilakukan dalam 4 tahapan yaitu

identifikasi masalah, perancangan sistem, pembuatan aplikasi, implementasi dan

pengujian sistem serta analisis hasil pengujian. Metode perancangan sistem yang

dipakai adalah prototype. Sistem pendukung keputusan ini mengunakan

pendekatan algoritma fuzzy tahani. Aplikasi ini diterapkan pada sebuah device

Android Jelly Bean versi 4.1.2 keatas. Hasil yang diperoleh pada penelitian

membuat pengunjung cafe bisa memesan makanan secara online dan pemilihan

menu makanan dengan cepat. Berdasarkan ujicoba sistem pendukung keputusan

dapat ditarik kesimpulan bahwa sistem yang dibangun dapat membantu

menentukan menu makanan yang akan dipesan pada cafe.

Kata kunci : Sistem Pendukung Keputusan, Logika Fuzzi Tahani, GCM (Google

Cloud Messaging), Cafe.

1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen

Satya Wacana Salatiga 2) Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga.

Page 9: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

2

1. Pendahuluan

Cafe neo merupakan sebuah cafe yang berlokasi di kota salatiga. Cafe neo

terdiri dari gabungan dua konsep yang berbeda antara cafe dan warnet. Cafe neo

buka 24 jam dari pagi hingga pagi. Cafe neo memiliki 4 pegawai kasir yang

menggunakan model kerja shift dengan pembagian kerja 8 jam per hari.

Berdasarkan wawancara dengan pemilik cafe bapak Franky Elfendy maka

diketahui jumlah pengunjung berjumlah 100-200 orang per hari.

Berdasarkan identifikasi masalah dengan melakukan wawancara terhadap 50

orang pengunjung secara acak, maka ditemukan masalah yang ada yaitu ternyata

cafe neo masih mengunakan sistem order manual atau hanya bisa order ditempat,

sehingga pembeli yang sedang berada diluar area cafe akan kesulitan untuk

memesan makanan. Untuk pengunjung yang sudah berada di lokasi dan ingin

memesan makanan, pengunjung cafe terkadang juga bingung untuk memilih

makanan saat di suguhkan menu makanan karena daftar makanan terlalu banyak.

Hasil wawancara juga ditemukan bahwa pelanggan yang menggunakan android

sebanyak 43 orang. Dari fakta dan masalah yang ada pada cafe tersebut maka

dibutuhkan sistem yang bisa membantu pelanggan dalam pemesanan makanan,

selain itu juga dapat membuat rekomendasi dalam mempermudah pemilihan menu

makanan di cafe neo.

Saat ini banyak teknologi yang dapat membantu manusia, salah satunya yaitu

penggunaan smartphone dengan Platform Android untuk menyelesaikan berbagai

masalah yang ada dengan penggunaan sebuah sistem tertentu. Selain itu juga

sudah banyak penerapan sistem pendukung keputusan yang digunakan sebagai

pemecah masalah untuk berbagai sistem rekomendasi.

Setelah mengetahui permasalahan yang terjadi maka dirancang lah sebuah

sistem baru untuk pengunjung cafe agar dapat memenuhi kebutuhan pengunjung

cafe yaitu merancang sistem yang bisa melakukan order secara online dan

memberikan rekomendasi menu makanan pada setiap pengunjung cafe yang

menggunakan sistem tersebut.

Rumusan masalah pada penelitian yang dilakukan yaitu bagaimana

membantu pelanggan dalam proses pemesanan makanan secara efektif dan

efisisen. Selain itu rumusan masalah yang lain adalah bagaimana membuat sistem

rekomendasi bagi pemilihan menu makanan untuk pelanggan di cafe neo.

Sistem yang dibangun mengkombinasikan web server dan smartphone

Android sebagai client. Aplikasi cafe akan dilengkapi dengan teknologi cloud

computing seperti google cloud messaging. Tujuan dari penelitian yang dilakukan

adalah membuat aplikasi yang mampu melakukan pemesanan secara online serta

memberikan rekomendasi makanan. Sehingga pengguna aplikasi akan terbantu

dalam melakukan order makanan dan menentukan makanan cafe. Pada aplikasi

ini pengguna dengan memanfaatkan teknologi Cloud 2 Device Messaging

(C2DM) yang dirancang untuk menerapkan push messaging berbasis cloud

messaging dapat menerima informasi order yang telah dilakukan.

Page 10: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

3

2. Kajian Pustaka

Penelitian dengan judul “Aplikasi Mobile Resto Berbasis Android”,

merupakan penelitian yang membuat aplikasi mobile resto berbasis HTML5

dengan menggunakan framework phonegap. Tujuan penelitian yaitu untuk

memudahkan para pecinta kuliner mengetahui review mengenai suatu restoran

mulai dari harga menu makanan dan fasilitas yang tersedia di restoran tersebut,

melakukan pemesanan menu makanan serta mencari lokasi restoran untuk

memudahkan para pecinta kuliner untuk mengunjungi restoran yang sesuai

dengan selera para pecinta kuliner [1].

Penelitian selanjutnya berjudul “Wisata Kuliner di Pekanbaru Berbasis

Android dengan Metode Tahani”. Penelitian bertujuan membuat Aplikasi untuk

memberikan informasi rumah makan beserta menu di Pekanbaru dan juga

merekomendasikan rumah makan tetapi pengguna terlebih dahulu memasukkan

kategori rumah makan, harga, jarak, lama penyajian dan fasilitas yang diinginkan

pengguna [2].

Dua penelitian yang telah dibahas sebelumnya terdapat perbedaan pustaka

yang digunakan dalam penelitian kali ini, yaitu tidak menyajikan menu makanan

resto pada aplikasi serta tidak adanya penggunaan Web Server sebagai

penampungan data dan pengolahan data secara online dalam berkomunikasi

dengan aplikasi Client.

Sistem Pendukung Keputusan merupakan suatu sistem interaktif yang

mendukung keputusan dalam proses pengambilan keputusan melalui alternatif–

alternatif yang diperoleh dari hasil pengolahan data, informasi dan rancangan

model [3]. Dari pengertian sistem pendukung keputusan maka dapat ditentukan

karakteristik antara lain :

1. Mendukung proses pengambilan keputusan, menitikberatkan pada

management by perception.

2. Adanya interface manusia / mesin dimana manusia (user) tetap memegang

control proses pengambilan keputusan.

3. Mendukung pengambilan keputusan untuk membahas masalah terstruktur,

semi terstruktur dan tak terstruktur.

4. Memiliki kapasitas dialog untuk memperoleh informasi sesuai dengan

kebutuhan.

5. Memiliki subsistem–subsistem yang terintegrasi sedemikian rupa sehingga

dapat berfungsi sebagai kesatuan item.

6. Membutuhkan struktur data komprehensif yang dapat melayani kebutuhan

informasi seluruh tingkatan manajemen.

Sistem pendukung keputusan ini diterapkan pada fungsi pencarian rekomendasi

menu makanan.

Logika Fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang

input ke dalam suatu ruang output. Fuzzy di nyatakan dalam derajat dari suatu

keanggotaan dan derajat dari kebenaran. Oleh sebab itu sesuatu dapat dikatakan

sebagian benar dan sebagian salah pada waktu yang sama[12].

Himpunan fuzzy adalah pengelompokan sesuatu berdasarkan variabel bahasa

(linguistic variable), yang dinyatakan dengan fungsi keanggotaan, dalam semesta

Page 11: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

4

U. Keanggotaan suatu nilai pada himpunan dinyatakan dengan derajat

keanggotaan yang nilanya antara 0.0 sampai 1.0[11].

Fungsi keanggotaan adalah suatu kurva yang menunjukan pemetaan titik-titik

input data kedalam nilai keanggotaannya yang memiliki interval antara nol

sampai satu. Salah satu cara yang dapat digunakan untuk mendapatkan nilai

keanggotaan adalah dengan melalui pendekatan fungsi[2]. Ada beberapa fungsi

yang dapat digunakan yaitu:

1. Representasi linear

Pada representasi linear, pemetaan input ke derajat keanggotaannya

digambarkan sebagai suatu garis lurus.

2. Representasi kurva segitiga

Kurva Segitiga pada dasarnya merupakan gabungan antara 2 garis linear.

3. Representasi kurva bahu

Daerah yang terletak di tengah-tengah suatu variable yang direpresentasikan

dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun.

Ada 3 operator dasar yang diciptakan oleh Zadeh, yaitu AND, OR dan NOT.

Ketiga fungsi tersebut digunakan sebagai operasi himpunan fuzzy[2].

Basis data fuzzy Tahani masih menggunakan relasi standar, hanya saja model

ini menggunakan teori himpunan fuzzy untuk mendapatkan informasi pada query-

nya. Tahani mendeskripsikan suatu metode pemrosesan query dengan didasarkan

atas manipulasi bahasa yang dikenal dengan nama SQL[12].

JSON (dibaca: “Jason”), singkatan dari JavaScript Object Notation adalah

suatu format ringkas pertukaran data komputer. Formatnya berbasis teks dan

terbaca manusia serta digunakan untuk merepresentasikan struktur data sederhana

dan larik asosiatif (disebut objek). Format JSON sering digunakan untuk

mentransmisikan data terstruktur melalui suatu koneksi jaringan pada suatu proses

yang disebut serialisasi[13].

Menurut dokumen resmi PHP, PHP merupakan singkatan dari Pemrograman

Hypertext Preprocessor. PHP merupakan bahasa berbentuk skrip yang

ditempatkan dalam server dan diproses oleh server. Hasilnya kemudian

dikirimkan ke client, tempat pemakai menggunakan browser [4]. PHP ini

diterapkan pada saat pembuatan aplikasi server berbasis web.

MySQL merupakan database yang paling populer digunakan untuk

membangun aplikasi web yang menggunakan database sebagai sumber dan

pengelola datanya. Kepopuleran MySQL dimungkinkan karena kemudahannya

untuk digunakan, cepat secara kinerja query, dan mencukupi untuk kebutuhan

database perusahaan-perusahaan skala menengah kecil [5]. Penggunaan MySQL

pada saat pembuatan database yang akan berintegrasi dengan web server, fungsi

utama MySQL yaitu untuk menyimpan data cafe yang bersangkutan dengan

aplikasi client.

Google Cloud Messaging (GCM) adalah suatu layanan yang berguna

mengirimkan data pesan singkat dari server ke pengguna pada perangkat android.

GCM dapat mengirimkan pesan singkat untuk memberitahu aplikasi bahwa

terdapat data baru yang akan diambil dari server. Layanan GCM menangani

semua aspek antrian pesan dan pengiriman ke aplikasi pengguna android pada

perangkat pengguna tanpa memperhatikan besar pesan yang dibutuhkan oleh

Page 12: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

5

pengguna [6]. Teknologi ini digunakan saat server mengirimkan sebuah pesan

kepada client atau device dalam bentuk notifikasi. Notifikasi ini bertujuan untuk

memberikan informasi terbaru dari cafe jika ada menu makanan atau event baru

kepada pelanggan cafe.

3. Metode Penelitian

Pada perancangan sistem informasi rekomendasi menggunakan tahapan

penelitian yang terdiri dari 4 tahapan penelitian, yaitu:

Gambar 1 Tahapan Penelitian

Tahapan penelitian pada Gambar 1 dapat dijelaskan sebagai berikut:

1) Tahap pertama: Identifikasi Masalah, pada tahap ini yang dilakukan

adalah meneliti prilaku pelanggan yang selalu bingung saat pemilihan

menu makanan di cafe Neo, Salatiga.

2) Tahap kedua: Perancangan Sistem, perancangan sistem dilakukan

dengan menggunakan diagram Unified Modelling Language (UML).

Perancangan sistem berupa diagram meliputi sequence diagram,

activity diagram, use case diagram dan class diagram.

3) Tahap ketiga: Pembuatan Aplikasi, pada tahap ini dilakukan

pembuatan aplikasi sesuai dengan perancangan sistem yang telah

dibuat. Pembuatan aplikasi client-server terdiri dari dua aplikasi, yaitu

aplikasi client berbasis mobile dengan menggunakan bahasa

pemrograman Java pada IDE Eclipse Juno yang dibantu dengan

beberapa teknologi yaitu teknologi GCM, LBS dan Social Sharing.

Sedangkan untuk aplikasi server berbasis web menggunakan bahasa

pemrograman php dan mysql serta wampserver sebagai server lokal.

4) Tahap keempat: Implementasi dan Pengujian Sistem serta Analisis

Hasil Pengujian, pada tahap ini aplikasi akan diimplementasikan pada

device android, kemudian dilakukan pengujian untuk mengetahui

apakah aplikasi telah sesuai dengan perancangan yang dilakukan dan

sudah tidak ditemukan kesalahan atau bug pada aplikasi. Pengujian

aplikasi dilakukan pada objek penelitian yaitu di cafe Neo, Salatiga.

Identifikasi Masalah

Perancangan Sistem

Pembuatan Aplikasi

Implementasi dan Pengujian Sistem

serta

Analisis Hasil Pengujian

Page 13: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

6

Pada tahap pengidentifikasian masalah, pertama-tama dilakukan wawancara

kepada pemilik cafe. Dilihat dari proses bisnis yang berjalan sekarang, proses

pemilihan menu makanan masih menggunakan buku menu, sehingga pelanggan

masih membutuhkan banyak waktu untuk melakukan pemilihan makanan. Belum

lagi jika ada pelanggan baru, pelanggan akan kesulitan memilih makanan dari

banyaknya pilihan menu makanan. Oleh karena itu, diusulkan proses bisnis yang

baru dengan menggunakan bantuan device, yang berguna mempercepat pemilihan

menu makanan dengan memanfaatkan “Sistem Rekomendasi Makanan”. Berikut

merupakan proses bisnis yang baru:

Gambar 2 sistem rekomendasi dan proses order

Penjelasan sistem informasi rekomendasi makanan menggunakan aplikasi pada

cafe neo:

1. Pelanggan menggunakan menu pada aplikasi yang bernama “Sistem

Rekomendasi”.

2. Pelanggan menjalankan prosedur pemilihan makanan menggunakan “Sistem

Rekomendasi” dan mendapatkan hasil.

3. Pelanggan memesan menu yang dipilih dan melakukan order makanan.

4. Setelah makanan diproses maka akan dihidangkan kepada pelanggan cafe.

Pada tahap perancangan sistem menggunakan diagram UML yang berfungsi

untuk menggambarkan prosedur dan proses kerja dari aplikasi. Diagram UML

yang digunakan antara lain Sequence diagram, Activity diagram, Use case diagram

dan Class diagram. Use case diagram adalah gambaran graphical dari beberapa

atau semua aktor, use case dan interaksi di antara komponen-komponen tersebut

yang memperkenalkan suatu sistem yang akan dibangun [8]. Sequence diagram

digunakan untuk menggambarkan skenario penggunaan aplikasi client antara user

dan sistem. Gambar 3 merupakan sequence diagram user:

Input Data

SPK

Hasil

Rekomendasi

Yes

Yes

NoSubmit Data

OrderNo

Olah Data

Proses Order

SistemUser

Page 14: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

7

Gambar 3 Sequence Diagram User

Pada Gambar 3 menjelaskan alur penggunaan sistem rekomendasi pada

aplikasi client. Dimulai dari mengakses halaman utama kemudian user mengisi

form input data sistem pendukung keputusan, selanjutnya input user diproses oleh

server menggunakan logika fuzzy model tahani dan hasil ditampilkan kembali

pada user.

Activity diagram menggambarkan aliran aktifitas dalam sistem yang sedang

dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi

dan bagaimana mereka berakhir [9]. Activity diagram untuk menggunakan menu

sistem rekomendasi dapat dilihat pada Gambar 4.

Gambar 4 Activity Diagram sistem rekomendasi

Gambar 4 menjelaskan aktivitas pengguna ketika pelanggan cafe

menggunakan sistem rekomendasi pada aplikasi cafe. Pada tampilan utama yaitu

tampilan daftar menu aplikasi, kemudian ketika user mengakses menu sistem

rekomendasi user akan diminta memasukan beberapa input yang akan

menentukan hasil rekomendasi menu. Selanjutnya input dari user dikirim ke web

server dan diproses hingga didapatkan hasil rekomendasi menu, kemudian barulah

ditampilkan pada layar device kembali.

: User

Halaman

Utama

SPK Server Database

1.Akses halaman utama()

2.Input data SPK()

3.Kirim Input()

4.getData()

5.Proses fuzzy()

6.Tampil hasil input()

Memilih menu Sistem

Rekomendasi

Melengkapi inputan

yang diminta

Buka Aplikasi

Daftar Menu

Memproses dan mengirim

inputan ke server

Menampilkan hasil

rekomendasi menu

Kirim input

Yes

No

Menerima input dan

menjalankan Fungsi SPK

Mendapatkan hasil rekomendasi dan

mengirim balik ke client

Mengambil data

batas SPK

DatabaseServ erClientUser

Page 15: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

8

Use case diagram pada aplikasi ini terbagi menjadi dua yaitu Admin dan

User. Pembagian dilakukan berdasarkan pengguna aplikasi berbasis web dan yang

kedua untuk pengguna aplikasi berbasis mobile. Pembagian fitur Use case Admin

dan Use case User, dapat dilihat pada Gambar 5.

Gambar 5 Use Case Diagram Aplikasi Server dan Aplikasi Client

Pada Gambar 5 menunjukkan bahwa pada sistem aplikasi cafe di platform

web, admin dapat melakukan kelola data menu cafe, kelola data SPK (Sistem

Pendukung Keputusan), kelola informasi, kelola data lokasi dan kelola informasi

data pengguna. Pengelolaan data meliputi lihat data, tambah data, ubah data dan

hapus data. Sedangkan pada penggunaan sistem aplikasi cafe di platform mobile,

pengguna sebagai pelanggan dapat melihat data info menu, lihat hasil

rekomendasi, melakukan rating pada menu, melihat map untuk mengetahui lokasi

cafe, lihat pesan, melakukan panggilan ke cafe, berbagi informasi menu ke sosial

media seperti facebook dan twitter serta melakukan order secara online melalui

web official cafe neo Salatiga.

Class diagram merupakan diagram yang digunakan untuk menampilkan

beberapa kelas yang ada dalam sistem atau perangkat lunak yang sedang

dikembangkan. Class diagram memberikan gambaran mengenai sistem dan relasi

yang ada di dalamnya seperti struktur dan deskripsi class, package dan objek

beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lain-

lain [10]. Class diagram pada aplikasi ini dapat dilihat pada Gambar 6.

Admin

Kelola Data Batas SPK

Kelola Lokasi

Kelola Informasi

Kelola Data Menu

Informasi Device

Hapus Menu Tambah Menu Ubah MenuLihat Menu

Ubah BatasLihat Batas

Lihat Data Device

<<include>>

Tambah Informasi

Hapus Informasi

Lihat Informasi

<<extend>>

<<include>>

Lihat Lokasi Tambah LokasiUbah Lokasi Hapus Lokasi

<<extend>> <<extend>>

User

Memberi Rating

Lihat Menu

Rekomendasi MakananLihat Peta / Map

Lihat Pesan

Call

Sharing Menu

Order

API Pesan

<<include>>

<<include>>

Lihat Data RatingKelola Data Rating

<<include>>

API Rating

<<include>>

<<extend>>

API Makanan_Minuman

Daftar_Makanan

Daftar_Minuman

Daftar_Populer

<<include>>

<<include>>

<<include>>

<<extend>>

<<extend>><<extend>>

<<extend>>

<<include>> <<extend>>

<<extend>>

<<extend>>

<<include>>

<<include>>

<<include>>

<<include>>

<<include>>

Page 16: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

9

Gambar 6 Class Diagram Sistem Client

Gambar 6 merupakan class diagram untuk class sistem dari sistem aplikasi

cafe client. Pada class diagram ini menggambarkan class yang terdapat pada

sistem aplikasi beserta atribut dan fungsi di dalamnya.

Pada diagram ini terdapat web service yang menggunakan bahasa pertukaran

data JSON untuk akses data ke aplikasi mobile. Web service dibangun dengan

menggunakan bahasa pemrograman web yaitu PHP. Web service ini juga

terhubung dengan database pada server. Arsitektur sistem pada aplikasi ini dapat

dilihat pada Gambar 7.

Gambar 7 Arsitektur Sistem

Pada Gambar 7 dapat dilihat terdapat 2 aplikasi dalam arsitektur ini yaitu 1

aplikasi mobile dan 1 aplikasi web server. Aplikasi mobile diimplementasikan ke

web server dengan tujuan untuk digunakan oleh pengguna saat mengakses sistem

Page 17: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

10

rekomendasi makanan. Untuk dapat menjalankan kedua aplikasi, semua perangkat

harus terhubung dengan koneksi internet. Dengan adanya internet, aplikasi mobile

dapat mengirim request ke server dan mendapat respon data server melalui web

service JSON melalui sebuah API. Kemudian request data di olah pada server dan

menyediakan data yang telah di ambil dari database. Selanjutnya data dikirim

kembali ke aplikasi mobile, secara bersamaan dengan proses tersebut, service

Google Cloud Messaging akan berjalan secara otomatis dan mengirimkan

notifikasi pada aplikasi mobile cafe.

Pada sistem pendukung keputusan berbasis android dengan metode tahani ini,

terdapat 3 variabel fuzzy dimana setiap variable fuzzy tersebut menggunakan

fungsi keanggotaan bahu dan segitiga sebagai pendekatan untuk memperoleh

derajat keanggotaan suatu nilai dalam suatu himpunan fuzzy. Setiap variable fuzzy

dibagi menjadi 3 himpunan fuzzy. Pada fuzzy yang diterapkan pada penelitian ini

menggunakan diagram linear yang memanfaatkan kurva bahu dan kurva segitiga.

Dua model kurva ini dipilih karena harga, porsi, dan lama penyajian memiliki

sifat nilai yang dinamis.

1.Variabel harga

Variabel harga dikategorikan kedalam himpunan: MURAH (kurang dari 7000),

SEDANG (12000 s/d 25000) MAHAL (lebih dari 37000) seperti ditunjukan pada

Gambar 8.

7 1312 2524 37

M u r a h Se d a n g M a h a l

150

1

Gambar 8 Fungsi keanggotaan harga

Maka fungsi keanggotaan untuk nilai variabel harga dapat dirumuskan sebagai

berikut:

Page 18: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

11

2.Variabel porsi

Variabel porsi dikategorikan kedalam himpunan: SEDIKIT (kurang dari 20%),

SEDANG (30% s/d 65%), BANYAK (lebih dari 90%) ditunjukan pada Gambar 9.

20 3530 6560 90

Se d ik it Se d a n g B a n y a k

500

1

Gambar 9 Fungsi keanggotaan porsi

Fungsi keanggotaan porsi yaitu sebagai berikut:

3.Variabel lama penyajian

Variabel lama penyajian dikategorikan ke dalam himpunan: SEBENTAR (kurang

dari 10 menit), SEDANG (12 s/d 20 menit), LAMA (lebih dari 25 menit)

ditunjukan pada Gambar 10.

10 1512 20 25

Se b e n ta r Se d a n g L a m a

170

1

Gambar 10 Fungsi keanggotaan lama penyajian

Fungsi keanggotaan lama penyajian:

Page 19: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

12

4. Hasil dan Pembahasan

Pada bagian menu utama aplikasi terdapat 7 menu yang tersedia. Masing-

masing menu memiliki fungsi yang berbeda, berikut tampilan menu utama

aplikasi cafe Neo.

Gambar 11 Tampilan menu utama aplikasi

Bagian yang terpenting adalah menu “Sistem Rekomendasi”, menu ini sangat

bermanfaat bagi user untuk mendapatkan ide makanan yang akan di pilih serta di

pesan. Sebelumnya untuk mendapatkan rekomendasi makanan, user diminta

memasukan kategori makanan yang akan dicari berdasarkan beberapa kategori

seperti: harga, gizi, porsi, rasa, serta waktu. Berikut tampilan layar sistem

rekomendasi makanan.

Gambar 12 Tampilan menu rekomendasi makanan

Sistem pendukung keputusan merupakan fitur yang sangat penting pada

aplikasi cafe yang telah dibuat. Sistem pendukung keputusan ini diterapkan pada

menu rekomendasi makanan pada aplikasi cafe. Berikut ini adalah potongan dari

source code sistem rekomendasi makanan.

Page 20: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

13

Kode Program 1 Perintah untuk melakukan Request Data Rekomendasi

Kode program 1 pada baris nomor 1-6, merupakan bagian dari pelemparan

data variable ke kelas lain dengan membawa sebuah nilai. Kemudian pada baris

7-15 merupakan kode untuk menerima data yang dilempar serta menampung data

pada variable yang telah dibuat, serta untuk melakukan request pengambilan data

rekomendasi dari server melalui API yang telah dibuat sebelumnya.

Rekomendasi makanan yang di peroleh berbeda-beda sesuai dengan input

user sebelumnya. Gambar nomor 13 dibawah ini menunjukan tampilan hasil

rekomendasi makanan yang di dapat.

Gambar 13 Tampilan hasil rekomendasi makanan

Masing-masing menu makanan memiliki detail informasi yang bisa dibaca,

selain itu user juga bisa memberi rating pada makanan. Selanjutnya user juga

memiliki akses untuk melakukan panggilan dan share content pada sosial media.

Tampilan detail makanan dapat dilihat pada Gambar 14 dibawah ini.

1. Intent in = new Intent(getApplicationContext(),SPKMenuMakanan.class);

2. in.putExtra("harga", tmpHarga); in.putExtra("gizi", tmpGizi);

3. in.putExtra("porsi", tmpPorsi); in.putExtra("rasa", tmpRasa);

4. in.putExtra("waktu", tmpWaktu);

5. in.putExtra("operator", tmpOperator);

6. startActivity(in);}}

7. Bundle bun = this.getIntent().getExtras();

8. harga = bun.getString("harga");

9. gizi = bun.getString("gizi");

10. porsi = bun.getString("porsi");

11. rasa = bun.getString("rasa");

12. waktu = bun.getString("waktu");

13. operator = bun.getString("operator");

14. DownloadTask downloadTask = new DownloadTask();

15. downloadTask.execute();

Page 21: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

14

Gambar 14 Tampilan detail makanan

Pemesanan makanan secara online bisa dilakukan melalui menu order.

Pemesanan makanan tidak hanya satu makanan namun bisa juga dilakukan

pemesanan banyak makanan, tampilan sistem order bisa dilihat pada gambar 15

dibawah ini.

Gambar 15 Tampilan order makanan

Pemesanan makanan pada aplikasi bisa dilakukan secara online

menggunakan menu order. Berikut potongan source code dari sistem order.

Kode Program 2 Perintah untuk melakukan Order Online

Kode program 2 pada baris perintah 1-6 menjelaskan bagian penyimpanan

data pada variable order yang terdiri dari diDevice, kode, nama, pesanan dan

alamat. Kode program 7 yaitu bagian eksekusi data order, yang bertujuan untuk

mengirimkan data pesanan ke database server.

Dengan memanfaatkan teknologi Google Cloud Messaging pengguna dapat

mendapatkan pesan balasan secara otomatis setelah melakukan order online, yang

1. o.setIdDevice(idDevice);

2. o.setKode(kodepemesanan);

3. o.setNama(namaPembeli);

4. o.setPesanan(pesanan);

5. o.setAlamat(alamatPembeli);

6. server.sendOrder(o);

7. ao.execute();

Page 22: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

15

akan langsung masuk kedalam device pengguna. Tampilan pesan balasan dapat

dilihat pada Gambar 16 dan Gambar 17 dibawah ini.

Gambar 16 Tampilan list order Gambar 17 Tampilan detail order

Aplikasi yang dibuat juga dilengkapi dengan sebuah fitur yang tidak kalah

pentingnya dengan sistem rekomendasi, yaitu fitur Google Cloud Messaging.

Google Cloud Messaging merupakan suatu layanan yang berguna mengirimkan

data pesan singkat dari server ke pengguna pada device. GCM dapat mengirimkan

pesan singkat untuk memberitahu aplikasi bahwa terdapat sebuah pesan baru.

Kode Program 3 Perintah untuk Pendaftaran ID GCM

Kode program 3 pada baris perintah 1-6 menjelaskan tentang pendaftaran ID

GCM. ID yang baru terdaftar akan di simpan pada database admin untuk

digunakan kembali saat pengiriman pesan atau broadcast message kepada

pengguna aplikasi.

Kode Program 4 Perintah Fuzzy untuk Sistem Pendukung Keputusan

Kode program 4 pada baris 1-8 merupakan proses fuzzy yang terdapat pada

fungsi sistem pendukung keputusan di API yang disediakan pada web server.

Untuk seleksi data rekomendasi hanya menggunakan perintah if dan else dengan

memberi batasan-batasan atau kondisi berdasarkan rumus fuzzy.

1. gcm = GoogleCloudMessaging.getInstance(context);}

2. regid = gcm.register(SENDER_ID);

3. newGcmId = "" + regid;

4. storeRegistrationId(context, regid);

5. newGcmId = ex.getMessage();

6. return newGcmId;

1. if ($kriteria == 'Murah' || $kriteria == 'Sedikit' || $kriteria

2. == 'Sebentar') {

3. if ($nilai <= $bawah) { $DA = 1;

4. } else if ($nilai >= $bawah && $nilai <= $atas) {

5. $DA = ($atas - $nilai) / ($atas - $bawah);

6. } else if ($nilai >= $atas) { $DA = 0;

7. }

8. }

Page 23: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

16

Pengujian aplikasi dilakukan dengan menguji fungsi-fungsi dari aplikasi yang

telah dibuat untuk mencari kesalahan / bug pada sistem. Pengujian aplikasi

dilakukan agar sistem yang dibuat berjalan sesuai dengan yang diharapkan dan

dapat memenuhi kebutuhan pengguna. Pengujian aplikasi sistem informasi

rekomendasi makanan ini menggunakan dua teknik pengujian yaitu pengujian

alpha dan pengujian beta.

Pengujian alpha adalah pengujian aplikasi yang dilakukan oleh pembuat

aplikasi. Pengujian alpha menggunakan metode blackbox yaitu pengujian fungsi-

fungsi aplikasi secara langsung tanpa memperhatikan alur eksekusi program.

Pengujian ini dilakukan dan sesuai yang diharapkan. Berikut adalah hasil

pengujian dari aplikasi web server dan aplikasi mobile.

Tabel 1 Hasil Pengujian Aplikasi Web Server Fungsi yang diuji Kondisi Output yang

diharapkan Output yang

dihasilkan sistem Status Pengujian

Masuk aplikasi Nama pengguna dan

kata sandi benar Nama pengguna dan

kata sandi salah maupun

kosong

Sukses masuk

aplikasi Gagal masuk

aplikasi

Sukses masuk aplikasi

Gagal masuk aplikasi Valid

Tambah data makanan Form diisi dengan benar

Form diisi beberapa atau

kosong

Sukses tambah data

Gagal tambah data

Sukses tambah data

Gagal tambah data

Valid

Ubah data makanan Form diisi dengan benar Sukses ubah data Sukses ubah data Valid

Hapus data makanan Data yang akan dihapus

dipilih

Sukses hapus data Sukses hapus data Valid

Ubah data batas Form diisi dengan benar Sukses ubah data Sukses ubah data Valid

Tampil data makanan Sukses tampil data Sukses tampil data Valid

Tampil data batas Tambah data informasi

Form diisi beberapa atau

kosong

Sukses tampil data Sukses tambah data

Sukses tampil data Gagal tambah data

Valid

Valid

Berdasarkan pengujian yang dilakukan pada aplikasi web server dapat dilihat

status pengujian dari setiap fungsi valid, maka disimpulkan bahwa aplikasi ini

berjalan dengan baik dan sesuai yang diharapkan. Tabel 2 Hasil Pengujian Aplikasi Mobile

Fungsi yang diuji Kondisi Output yang

diharapkan Output yang

dihasilkan sistem Status Pengujian

Masuk aplikasi Sukses masuk

aplikasi

Sukses masuk

aplikasi

Valid

Tampil data

Rekomendasi

Form diisi dengan benar

Form diisi beberapa atau kosong

Sukses tampil data

Gagal tampil data

Sukses tampil data

Gagal tampil data Valid Valid

Tampil notifikasi oleh

service GCM

Sukses tampil data

Sukses tampil data Valid

Tampil data makanan Sukses tampil data Sukses tampil data Valid

Tampil data detail makanan

Sukses tampil data Sukses tampil data Valid

Berdasarkan pengujian yang dilakukan pada aplikasi mobile dapat dilihat

status pengujian dari setiap fungsi valid, maka disimpulkan bahwa aplikasi ini

berjalan dengan baik dan sesuai yang diharapkan.

Page 24: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

17

Pengujian beta adalah pengujian yang dilakukan oleh orang yang tidak ikut

dalam pembuatan aplikasi. Pengujian beta dilakukan dengan menggunakan

kuesioner, yaitu dengan membagikan kuesioner kepada sample user. Sample user

yaitu ke 40 pengunjung di Cafe Neo kota Salatiga.

Berdasarkan pengujian beta yang telah dilakukan, maka diperoleh hasil 38

responden mengatakan kemudahan pemesanan makanan online yang membuat

efektif dan efisien adalah sangat baik, 32 responden mengatakan aplikasi cafe ini

memiliki sistem order yang mudah digunakan adalah sangat baik, 29 responden

mengatakan navigasi menu aplikasi yang mudah dipahami adalah baik, 35

responden mengatakan aplikasi ini mempermudah dan mempercepat kinerja user

dalam mencari rekomendasi makanan dan melihat menu yang disediakan oleh

cafe adalah baik dan dari 27 responden mengatakan aplikasi ini bermanfaat untuk

digunakan oleh para pengunjung cafe Neo kota Salatiga adalah sangat baik.

5. Simpulan

Berdasarkan ujicoba yang sudah dilakukan, maka dapat ditarik kesimpulan

bahwa sistem order dan fuzzy yang dibuat bekerja dengan baik untuk melayani

kebutuhan pengguna aplikasi Android atau pengunjung cafe neo. Proses order

dapat dilakukan dengan lebih mudah karena secara online. Selain itu fitur sistem

pendukung keputusan pemilihan menu makanan membuat pelanggan dapat

dengan mudah memilih menu makanan. Saran untuk pengembangan aplikasi

yaitu: 1) Supaya ditambahkan fungsi responsive design agar bisa berjalan dengan

baik pada semua device dan platform. 2) Bisa ditambahkan untuk user login, agar

di versi berikutnya pengguna dapat memberi komentar pada tiap menu makanan.

3) Publish ke Android market seperti Google Play Store agar dapat di unduh

secara online.

Page 25: Penerapan Sistem Pendukung Keputusan Berbasis Android ......Penerapan Sistem Pendukung Keputusan Berbasis Android Menggunakan Logika Fuzzy Tahani Pada Aplikasi Pemesanan Makanan (Studi

18

6. Pustaka

[1] Effendi Diana, Mulyanto Agung. 2013. “Aplikasi Mobile Resto (M-Resto)

Berbasis Android”. Bandung: Universitas Komputer Indonesia.

[2] Andika, Purwantoro Sugeng, Diah Kartina. 2012. “Aplikasi Wisata

Kuliner di Pekanbaru Berbasis Android dengan Metode Tahani”.

Pekanbaru: Teknik Komputer Politeknik Caltex Riau.

[3] Anonim. 2015. Makalah Decision Support System / Sistem Pendukung

Keputusan. https://www.academia.edu/7385749/Makalah_Decision_Sup

port_System_Sistem_Pendukung_Keputusan, diakses tanggal 12 Febuari

2015.

[4] Sutanto Yusuf. 2012. Pemrograman Terstruktur II. http://www.online-

aub.com/E-LEARNING/Pemrograman%20Terstruktur%20II/Pertemuan1.htm,

diakses tanggal 5 Januari 2015.

[5] Anonim. 2006. MySQL. http://www.globalkomputer.com/Bahasan/

Database/Produk/MySQL.html, diakses tanggal 5 Januari 2015.

[6] Android Developers. 2012. Google Cloud Messaging for Android.

http://developer.android.com/google/gcm/index.html, diakses tanggal 15

November 2015.

[7] Abidin Bakti, Prasetyaningrum Ira, Karlita Tika, 2012. “SISTEM

INFORMASI RUMAH KOST ONLINE BERBASIS WEB DAN

MESSAGING”. Surabaya: Institude Teknologi Sepuluh November.

[8] Christine. 2014. Mengenal Use Case Diagram.

http://www.academia.edu/5295802/Mengenal_Use_Case_Diagram,

diakses tanggal 20 November 2014.

[9] Nugroho, Adi. 2005. “Rational Rose Untuk Pemodelan Berorientasi

Objek”. Bandung: Teknik Informatika.

[10] Joko. 2012. Fungsi Dan Pengertian UML.

http://www.academia.edu/4887559/Fungsi_Dan_Pengertian_UML,

diakses tanggal 20 November 2014.

[11] Saelan, Athia. (2009). Logika Fuzzy. Diambil 30 April 2015 dari

http://informatika.stei.itb.ac.id/~rinaldi.munir/Matdis/2009-

2010/Makalah0910/MakalahStrukdis0910-107.pdf

[12] Kusumadewi, Sri & Purnomo, Hari. 2004. Aplikasi Logika Fuzzy untuk

Pendukung Keputusan. Yogyakarta: Graha Ilmu.

[13] Kusumawaty, Anggia. 2012. “Aplikasi Pemesanan Makanan Pada

Restoran Berbasis Android dan Php Menggunakan Protokol JSON”.

Bandung: Teknik Informatika.