You are on page 1of 18

APLIKASI PEMESANAN MAKANAN DAN MINUMAN PADA

RUMAH MAKAN
Adi Sasongko, 10102100
Jurusan Sistem Informasi, Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Gunadarma
Pembimbing : Dr-Ing. Adang Suhendra, SSi, SKom, MSc

ABSTRAK
Penggunaan media alat tulis dan kertas untuk pemesanan makanan dan minuman di
rumah makan masih digunakan sampai saat ini namun banyak menemui kendalakendala antara lain adanya pemesanan yang rangkap (redudansi), tidak urutnya
pembuatan pemesanan akibat bertumpuknya nota pemesanan terutama pada saat
ramai pengunjung, juga kesalahan pencatatan akibat sulitnya membaca tulisan tangan.
Perancangan aplikasi pemesanan ini terdiri dari perancangan untuk client, untuk kasir
dan untuk dapur. Proses perancangan untuk tiap perancangan bagian terdiri dari
struktur navigasi, flowchart, entity relationship diagram, normalisasi, database dan
perancangan tampilan. Aplikasi pemesanan pada client terdiri dari perancangan info
lokasi, daftar menu, tentang dan pemesanan. Pada pemesanan terdiri dari pesan, batal
dan history. Pesan terdiri dari pesan untuk meja, makanan dan minuman serta cek
pesanan. Aplikasi untuk kasir terdiri atas perancangan halaman makanan, minuman,
tambah menu, ubah menu, transaksi dan pembayaran. Sedangkan aplikasi untuk
dapur terdiri dari perancangan untuk pemesanan dan status. Dengan dibuatnya
aplikasi ini diharapkan dapat menggantikan pemesanan makanan dan minuman yang
menggunakan media kertas dan alat tulis.
Kata kunci : Pemesanan,J2ME, PHP,MySql.
I. PENDAHULUAN
Kemajuan teknologi komputer berkembang dengan sangat pesat. Jika pada tahun
1980-an dan 1990-an awal merupakan masa di mana komputer desktop mengalami
perkembangan yang pesat, sedangkan tahun 1990-an akhir sampai sekarang ini adalah
masa perkembangan komputer dalam skala kecil yang bisa digenggam dan dibawabawa. Hal ini dikarenakan mobilitas orang-orang sudah semakin tinggi dan akan
kesulitan jika harus memakai komputer desktop. Komputer dalam skala kecil itu
dinamakan PDA (Personal Digital Assistant).

PDA didesain pertama kali untuk menjadi organizer pribadi yang fasilitasnya
mencakup buku alamat, memo dan kalkulator sederhana. Salah satu keuntungan PDA
adalah kita bisa melakukan sinkronisasi data-data dengan komputer desktop.
Sekarang ini, seiring dengan kemajuan teknologi perangkat keras, fungsi PDA tak
ubahnya seperti komputer desktop, tetapi berukuran kecil. Saat ini, PDA sudah dapat
digunakan untuk mengirim dan menerima email, browsing internet dan sebagainya.
Oleh karena itulah penggunaan PDA dapat digunakan sebagai sarana implementasi
aplikasi pemesanan restoran, hal ini karena sifat PDA yang mudah dibawa ke manamana memudahkan pelayan mencatat pesanan dan mengirimkannya ke kasir
II. METODE PENULISAN
Pembuatan skripsi ini dilakukan dengan melakukan studi pustaka yaitu dengan
mencari buku-buku yang berkaitan dan dokumentasi lainnya, serta penggunaan
fasilitas internet yang berupa jurnal-jurnal maupun tutorial.
III. LANDASAN TEORI
3.1

Perangkat Bergerak (Mobile Device)


Perkembangan komputer yang mengarah pada ukuran yang lebih kecil bahkan
seukuran tangan atau dapat digenggam merupakan hal yang terus berkembang pada
saat ini. Misalnya laptop, handphone atau telepon seluler, dan PDA (Personal Digital
Asistant). Untuk saat ini pada PDA terdapat tiga buah sistem operasi yang dominan
digunakan, yaitu Symbian, Pocket PC dan PalmOS. Meskipun ada juga yang
menggunakan Linux sebagai sistem operasinya. Sedangkan sistem operasi yang akan
dipakai dalam aplikasi ini adalah PalmOS.

Palm pertama kali dijual pada tahun 1996, setelah itu menjadi OS open licenced
yang dibuat oleh berbagai produsen mobile device. PalmOS juga menyediakan basic
feature yaitu email, dan messaging. Salah satu keuntungan dari Palm adalah bahwa
hardware manufacture dapat menambahkan beberapa tool untuk digabungkan dengan
hardware yang berbasis PalmOS tadi, misalnya dengan menambahkan
CompactFlash, Springboard, dan Palm clip-on. Untuk produk masa depan, PalmOS
dikonsentrasikan pada wireless connectivity, bluetooth support, dan multi-language
1
support.
3.2

Emulator PalmOS
Untuk mengimplementasikan aplikasi ini sebaiknya pada perangkat PDA
Palm sebenarnya, namun apabila mengujinya terlebih dahulu dapat menggunakan
emulator PalmOS.

http:www.ilmukomputer.com/faisal-mobile.pdf

Gambar 1 : Emulator Palm OS


3.3

Pemrograman Berorientasi Obyek


Pemrograman berorientasi objek adalah paradigma pemrograman yang
memodelkan masalah menjadi objek terpisah dan berdiri sendiri. Pemrograman
berorientasi objek mempunyai beberapa ciri khusus dibandingkan dengan metode
pemrograman lain. Pemrograman berorientasi objek selalu menggunakan kelas untuk
mengenkapsulasi (membungkus) aksi yang ada dalam suatu komponen. Aksi ini juga
termasuk atribut data dan method. Objek dalam kategori pemrograman ini
mempunyai kemampuan untuk menyembunyikan bagian implementasi mereka dari
objek lainnya. Prinsip seperti ini disebut sebagai
penyembunyian informasi/
information hiding
.
Beberapa objek memang mungkin dapat berkomunikasi dengan menggunakan
metode tertentu yang ditentukan/ didefinisikan oleh pemrogram. Tetapi pada kondisi
normal, objek ini akan menyembunyikan aksi dan atribut apa saja yang ada dalam
strukturnya.
3.4

Java untuk Aplikasi Wireless


Alasan dipilih Java untuk aplikasi komunikasi bergerak :
Bahasa pemrograman yang aman, karena selalu dieksekusi dengan java virtual
machine untuk eksekusi kode.
Bahasa yang kokoh, penggunaan garbage collector akan mengurangi waktu yang
diperlukan untuk menemukan kebocoran dalam penggunaan memori. Portabilitasnya
sangat berguna dalam aplikasi-aplikasi wireless, dengan menulis sebuah program
saja, dapat dijalankan di berbagai peralatan dan dapat dikirimkan ke sebuah peralatan
melalui jaringan wireless (Over The Air Provisioning).

3.5

Java 2 Micro Edition (J2ME)

Walled garden application, yaitu aplikasi yang berdiri sendiri pada ponsel
tanpa mengakses sumber data eksternal melalui jaringan pembawa atau carrier
network. Contohnya adalah kalkulator atau single player games.
Network aware application,yaitu aplikasi yang berinteraksi dengan jaringan dengan
mengakses sumber data eksternal. Contohnya adalah aplikasi email atau mendapatkan
2
kembali data alamat-alamat yang tersimpan melalui jaringan.

Kategori J2ME Configuration:


1.CLDC (Connected Limited Device Configuration)
Kategori ini umumnya digunakan untuk aplikasi Java pada handphone semacam
Nokia, Samsung Java Phone, organizer/PDA semacam PALM,Pocket PC dan two
way pagers. Umumnya perangkat tersebut hanya memiliki memori berukuran 160512 KiloBytes.
2.CDC (Connected Device Configuration)
Kategori ini umumnya digunakan untuk aplikasi Java pada perangkat handheld
device dengan ukuran memori paling tidak 2 MB. Contohnya Nokia
3
Communicator.
3.6
Dasar-dasar MIDLET
3.6.1 Life Cycle

Ditangani oleh Application Management Software (AMS) yaitu lingkungan


tempat siklus midlet diciptakan, dijalankan, dihentikan, maupun dihilangkan. State
Midlet yaitu Pause, Active, dan Destroy. Ketika masing-masing state dipanggil,
beberapa method yang bersesuaian dipanggil yang merupakan bawaan dari J2ME.

Gambar 2 : Life Cycle dari MIDP

Antonius Aditya Hartanto,


Java 2 Micro Edition Mobile Interface Device Programming
, Elex
Media Komputindo, Jakarta, 2003, halaman 4
3
Ady Wicaksono,
Pemrograman Aplikasi Wireless dengan Java
, Elex Media Komputindo, Jakarta,
2002, halaman 7

Ketika MIDlet pertama kali di ciptakan dan di inisialisasi, MIDlet akan berada
dalam state
Pause
.
Apabila terjadi kesalahan selama konstruksi MIDlet, MIDlet akan berpindah
ke state
Destroy, dan MIDlet batal diciptakan dengan jalan memanggil fungsi
standar destroyApp().
Selanjutnya, ketika MIDlet dijalankan, MIDlet akan berada pada state

Active
, dalam hal ini fungsi standar yang dipanggil adalah startApp().
Akan tetapi jika ditengah jalan MIDlet dihentikan sementara MIDlet akan
berada dalam state
Pause
dengan jalan memanggil fungsi standar
pauseApp(). Pada state ini diperlukan proses cleanup terhadap garbage
4
collector yang dihasilkan.
3.6.2 User Interface
Terdiri atas High Level API berbasis pada Screen, contohnya Alert, Form,
List, TextBox. Dan Low Level API berbasis pada class Canvas.

Gambar 3 : Hirarki Class User Interface pada MIDP


3.8

Web Server
Untuk bisa menguji aplikasi diperlukan Web Server. Dalam hal ini, lebih baik
menggunakan Local Server. Web Server membuat PC seolah-olah sudah terkoneksi
ke suatu server di internet. Karena sifatnya pengujian, maka jika ingin
mempublikasikan site, maka harus ditempatkan scriptnya di server yang bukan local
namun di server yang dapat diakses oleh public. Misalnya PWS,IIS, Apache.
3.9
Hypertext Preprocessor (PHP)
PHP adalah bahasa scripting yang menyatu dengan tag HTML, yang
dieksekusi di server dan digunakan untuk membuat sebuah halaman web yang
interaktif dan dinamis (M.Farid Aziz,2002). PHP adalah salah satu bahasa Server4

Antonius Aditya Hartanto,


Java 2 Micro Edition Mobile Interface Device Programming
, Elex
Media Komputindo, Jakarta, 2003, halaman 14 - 15

side yang didesain khusus untuk aplikasi web. PHP dapat disisipkan di antara bahasa
HTML dan karena bahasa server side, maka bahasa PHP akan dieksekusi di server,
sehingga yang dikirimkan ke browser adalah
hasil jadi
dalam bentuk HTML, dan
kode PHP tidak akan terlihat. Tujuan dari bahasa Scripting ini adalah untuk membuat
aplikasi yang dijalankan pada teknologi web browser, tetapi prosesnya secara
keseluruhan dijalankan pada web server.
Versi pertama PHP dibuat oleh Rasmus Lerdoff pada tahun 1995 (M.Farid
Aziz,2002). Versi pertama ini berupa sekumpulan script PERL yang digunakan oleh
Rasmus Lerdorf untuk membuat halaman web yang dinamis pada homepage
pribadinya dan mencatat siapa saja yang berkunjung dan melihat biodatanya. Versi
pertama ini dikenal sebagai PHP 1 (Personal Home Page Tools). Kekuatan PHP yang
paling utama adalah konektifitas database dengan web. PHP mendukung banyak
paket database baik yang komersil maupun non-komersil seperti postgreSQL, mSQL,
MySQL, Oracle, Informix, Microsoft SQL Server dan banyak lagi.
3.10 MySql
MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB
sekitar tahun 1994-1995 dengan tujuan untuk mengembangkan aplikasi web
(Sutarman,2003). MySQL adalah salah satu program database gratis yang cukup
handal dan source code MySQL dapat dilihat dan gratis, serta server MySQL dapat
dipakai tanpa biaya tapi hanya untuk kebutuhan nonkomersil (Sutarman, 2003).
MySQL termasuk jenis RDBMS (Relational Database Management Sistem).
Sehingga istilah seperti table, baris dan kolom tetap digunakan dalam MySQL
(Sutarman, 2003). Pada MySQL sebuah database mengandung satu atau beberapa
table, table terdiri dari sejumlah baris dan kolom. Untuk memulai menjalankan
MySQL sebelumnya harus dipastikan bahwa database MySQL server dalam status
aktif/on (icon trafic di pojok kanan bawah desktop berwarna hijau). Apabila belum
aktif maka harus diaktifkan terlebih dahulu, caranya jalankan file winmysqladmin.exe
dari direktori/folder instalasi MySQL.
Untuk mengelola database MySQL ada beberapa cara yaitu melalui prompt DOS dan
dapat juga menggunakan program utility seperti PHPMyAdmin, MySQLGUI,
MySQL Manager Java Based, MySQL Administrator for Windows.
IV. ANALISIS DAN PERANCANGAN APLIKASI

4.1

Analisis
Pada aplikasi pemesanan makanan rumah makan ini, pelayan yang akan
memesan dengan membawa PDA atau ponsel. Di setiap meja, pelayan mencatat
pesanan makanan atau minuman pada PDA atau ponsel. Daftar menu makanan atau
minuman yang ada pada PDA atau ponsel persis sama dengan daftar menu yang ada
di masing-masing meja. Pelanggan menyebutkan pesanan dan pelayan mencari
pesanan yang bersesuaian pada PDA atau ponsel dan juga mencatat jumlah pesanan.

Setelah semua pesanan dalam satu meja selesai, pelayan akan mentransfer pesanan
makanan ke komputer server melalui jaringan TCP/IP dalam local area network.
Komputer server akan menerima pesanan untuk satu meja dan akan mengirimkan
data pesanan ke POS (Point of Sales) atau cash register, lalu mengirimkan menu dan
detailnya ke printer dapur. Dengan demikian pesanan yang telah diterima akan
dilayani oleh dapur terlebih dahulu. Di server dapat dilihat pesanan yang dibuat dan
harganya, sedangkan dapur dapat melihat pesanan dan detailnya.

Client
Dapur

Gambar 4 : Rancangan arsitektur aplikasi pemesanan


4.2

Rancangan Secara Umum


Aplikasi pemesanan ini terdiri atas tiga bagian yaitu:

Client
Merupakan aplikasi yang dibangun dengan J2ME dan emulator Palm. Aplikasi ini
memiliki kemampuan untuk melakukan layanan:
Pemesanan dan pembatalan pesanan.
Validasi pemesanan makanan dan minuman.
Informasi tentang daftar menu dan lokasi rumah makan.
History, yaitu menampilkan menu-menu yang sudah dipesan.
Server
Merupakan aplikasi yang berbentuk web server yang menggunakan Apache,
PHP dan MySql sebagai databasenya.
Server ini memiliki kemampuan untuk:
Melihat daftar menu makanan dan minuman. Di samping melihat juga dapat
menambah, mengubah dan menghapus menu tersebut.
Menampilkan seluruh transaksi pembayaran yang ada.
Menampilkan tagihan pembayaran atau billing per meja.
Dapur
Aplikasi ini serupa dengan aplikasi server yaitu berbentuk web. Aplikasi ini memiliki
layanan untuk:
Menampilkan pesanan apa saja yang harus dibuat.
Menampilkan pesanan yang sudah jadi dan siap untuk diantarkan.

4.3

Struktur Navigasi
Pada perancangan aplikasi ini, struktur navigasi terbagi tiga bagian yaitu
struktur navigasi untuk client, kasir dan dapur.
Struktur Navigasi Client
Splas Screen

Menu Utama

Info

Menu

Pemesanan

Pesan

Meja

Makanan

Batal

Minuma
n

Tentang

History

Cek Pesanan

Gambar 5 : Struktur Navigasi Client


Rancangan navigasi client di atas termasuk ke dalam jenis struktur navigasi hirarki
atau disebut juga navigasi bercabang. Di mana yang menjadi halaman utama (master
page) yaitu menu utama. Dan yang merupakan halaman cabang (slave page) yaitu
info, menu, pemesanan dan tentang.

Struktur Navigasi Kasir

Gambar 6 : Struktur Navigasi Kasir


Keterangan:
A : Tambah menu
H : Makanan
B : Transaksi
I : Pembayaran
C : Pembayaran
J : Makanan
D : Ubah menu
K : Minuman
E : Transaksi
L : Makanan
F : Pembayaran
M : Minuman
G : Ubah menu
N : Tambah menu
Struktur navigasi kasir atau server di atas termasuk ke dalam struktur navigasi bebas.
Karena walaupun mirip navigasi hirarki namun percabangannya lebih bebas dari
navigasi hirarki.
Struktur Navigasi Dapur
INDEX

LOGIN

PEMESANAN

Gambar 7 : Struktur Navigasi Dapur


Struktur navigasi dapur merupakan navigasi hirarki atau percabangan. Di mana yang
menjadi halaman utama yaitu home dan yang menjadi halaman pendukung yaitu
pemesanan dan transaksi.

4.4

Flowchart atau Diagram Alur


Diagram alur pada aplikasi ini terdiri dari tiga bagian yaitu client, kasir dan

dapur.
Flowchart Menu Utama
Mulai

Tampilan
Menu
Client

Pilih
Menu

Y
A

T
Selesai

Gambar 8 : Flowchart Menu Utama


Flowchart menu utama ini terdapat pada client, ketika program aplikasi dijalankan
maka akan tampil menu utama yang di dalamnya terdapat lima pilihan yaitu info,
pemesanan, tentang, menu dan exit. Jika memilih info akan menuju form informasi,
jika memilih pemesanan maka akan menuju form pesan menu, jika memilih tentang
maka menuju form tentang, jika memilih menu maka akan menuju form menu, jika
memilih exit maka akan keluar dari aplikasi.
Flowchart Utama Kasir

10

MULAI

USER &
PASSWORD

DATA
BENAR

Y
PILIH
MENU

T
SELESAI

Gambar 9 : Flowchart Utama Kasir


Flowchart kasir ini terletak pada server. Pertama kali akan diminta untuk login
dengan memasukkan password. Bila user dan password benar maka dapat memilih
menu. Apabila salah maka akan kembali ke halaman awal.
Flowchart Dapur
Pada flowchart dapur pertama diminta untuk memasukkan user dan password sama
seperti pada kasir. Bila user dan password sesuai maka dapat masuk ke dalam
aplikasi, bila salah maka harus mengulangi. Bila memilih menu pesanan maka akan
muncul tampilan pesanan. Bila memilih menu status akan muncul tampilan status.
Tampilan ini dapat diubah sesuai dengan keadaan yang tepat. Setelah itu akan muncul
tampilan status yang baru.

11

Mulai

User &
Password

T
Data
benar

Y
Menu
Tampilan

Pesanan

Tampilan
Pesanan

Status

Tampilan
Status

Ubah Status

T
Status
Baru

Selesai

Gambar 10 : Flowchart Dapur


4.5

Rancangan Secara Detail


Perancangan Detail Halaman Masuk Kasir
Untuk dapat masuk aplikasi kasir diharuskan untuk memasukkan user dan
password seperti contoh di bawah ini.

12

Gambar 11 : Detail Halaman Masuk Kasir


Pada halaman ini terdapat menu makanan yang tersedia, juga memungkinkan untuk
mengedit dan menghapus menu makanan.

Gambar 12 : Detail Halaman Makanan


Pada halaman ini menampilkan seluruh transaksi terjadi.

13

Gambar 13 : Detail Halaman Transaksi


Perancangan Detail Halaman Pemesanan
Halaman ini menampilkan seluruh pesanan yang harus dibuat oleh bagian dapur.

14

Gambar 14 : Detail Halaman Pemesanan


Perancangan Detail Halaman Status
Halaman ini menampilkan menu-menu yang dipesan tiap meja beserta statusnya. Ada
tiga macam status yaitu: sedang dimasak, sudah matang dan sudah diantar.

15

Gambar 15 : Detail Halaman Status


Perancangan Detail Halaman Pembuka Client
Pada saat pertama kali aplikasi client dijalankan maka akan tampak seperti di
bawah ini.

Gambar 16 Detail Halaman Pembuka Client


Perancangan Detail Halaman Pesan Meja

16

Untuk melakukan pemesanan, pertama harus memesan meja terlebih dahulu.


Pertama masukkan kode pesan dan no.meja yang dimaksud. Seperti di bawah ini:

Gambar 17 : Detail Halaman Pesan Meja


Perancangan Detail Halaman Pesan Makanan
Setelah melakukan pemesanan meja, selanjutnya melakukan pemesanan
makanan atau minuman. Langkahnya dengan memasukkan kode makanan kemudian
jumlahnya. Seperti di bawah ini:

Gambar 18 : Detail Halaman Pesan Makanan


Untuk mempermudah memasukkan kode makanan, maka ada daftar menu makanan
beserta kodenya. Karena data menu makanan tidak disimpan di client maka harus
mengambil di server.
V. KESIMPULAN
4.1
Kesimpulan
Dengan mengacu pada pembahasan bab sebelumnya maka permasalahan yang terjadi
seperti:
Adanya pencatatan pemesanan yang rangkap (redudansi) dapat diatasi dengan
melakukan verifikasi pemesanan.
Tidak urutnya pesanan yang dibuat akibat bertumpuknya pesanan di dapur
dapat diatasi dengan pemrosesan
first in first out
yaitu pesanan yang
pertama masuk dibuat terlebih dahulu. Serta penggunaan kode pelayan yang
berbeda untuk menghindari kesalahan akibat pemesanan yang sama.

17

Kesalahan pencatatan pemesanan akibat sulitnya membaca pesanan yang


ditulis dengan tangan dapat diatasi dengan penggunaan komputerisasi sebagai
inputan.
Pelayan dapat langsung pindah ke meja pelanggan tanpa terlebih dahulu ke bagian
kasir dan dapur untuk menyerahkan pesanan. Hal ini dapat menghemat waktu dalam
keadaan ramai pengunjung.
4.2
Saran
Aplikasi pemesanan makanan yang penulis buat masih sederhana dan jauh dari
kesempurnaan, kurangnya pengetahuan, dana, fasilitas menyebabkan banyak sekali
kekurangan pada apliaksi ini seperti harus memasukkan kode makanan yang dipesan
sehingga memakan waktu, sehingga penulis mengharapkan untuk dapat memakai cek
list sebagai penggantinya, dan untuk pengembangan lebih lanjut penulis
mengharapkan aplikasi ini dapat diimplementasikan pada PDA Palm yang
sesungguhnya. Semoga penulisan ini dapat berguna dan memberikan sedikit
pengetahuan tentang pembuatan sebuah aplikasi kepada pembaca.
DAFTAR PUSTAKA
Ady Wicaksono, Pemrograman Aplikasi Wireless dengan Java, Elex Media
Komputindo, Jakarta, 2002
Antonius Aditya Hartanto, Java 2 Micro Edition Mobile Interface Device
Programming, Elex Media Komputindo, Jakarta, 2003.
Antonius Aditya Hartanto, Java 2 Micro Edition Tingkat Lanjut. Elex Media
Komputindo, Jakarta, 2003.
Antonius Aditya Hartanto, Pemrograman Mobile Java dengan MIDP 2.0,
Andi Offset, Yogyakarta, 2004.
Harianto Kristanto, Konsep dan Perancangan Database, Andi Offset, Yogyakarta,
1996.
Husni, Kusnassriyanto, Pengantar Perancangan Sistem, Erlangga, Jakarta, 1997.
Jogiyanto, Analisis dan Disain Sistem Informasi Pendekatan Terstruktur Teori dan
Praktek Aplikasi Bisnis, Andi Offset, Yogyakarta, 1999.
Lemay, Laura, Teach Yourself Web Publishing with HTML : In a Week, Sams
Publishing, Indiana, 1995.
Tri Mardiono, Membangun Solusi Mobile Business dengan Java, Elex Media
Komputindo, Jakarta, 2006
http:www.ilmukomputer.com/faisal-mobile.pdf
http:// id.wikipedia.org/wiki/Rumah_makan

18

You might also like