Oleh:
Nama : TETUKO NUSWANOTO NIM : 01.41010.0119
Program : S1 (Strata Satu) Jurusan : Sistem Informasi
SEKOLAH TINGGI
MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA
vi
Populasi rumah makan di kota Surabaya telah berkembang dengan pesat, hal ini di buktikan dengan banyak berdirinya rumah makan di berbagai penjuru kota. Hal tersebut menyebabkan persaingan yang semakin ketat antar rumah makan untuk menarik minat konsumen membeli produk-produk kulinernya. Dengan adanya persaingan yang ketat tersebut, maka diperlukan strategi lain untuk memasarkan produk-produk kuliner agar dapat menjangkau lebih banyak konsumen sekaligus memudahkan konsumen untuk mendapatkan produk-produk kuliner dari rumah makan tersebut.
Pihak rumah makan dapat memanfaatkan mobile internet melalui ponsel sebagai salah satu sarana untuk memasarkan produk-produk kulinernya, namun mungkin tidak setiap rumah makan memiliki dana yang cukup untuk membangun aplikasi mobile internet guna memasarkan produk-produk kulinernya, maka diperlukan suatu aplikasi yang dapat menampung kebutuhan berbagai rumah makan tersebut, yang dapat disebut dengan pujasera online.
x
ABSTRAKSI ... vi
KATA PENGANTAR ... viii
DAFTAR ISI ... x
DAFTAR TABEL ... xiv
DAFTAR GAMBAR ... xv
DAFTAR LAMPIRAN ... xviii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 Perumusan Masalah ... 3
1.3 Pembatasan Masalah ... 3
1.4 Tujuan ... 4
1.5 Sistematika Penulisan ... 4
BAB II LANDASAN TEORI ... 6
2.1 Konsep Dasar Sistem Informasi... 6
2.2 Java 2 Micro Edition (J2ME) ... 7
2.3 Hypertext Processor (PHP)... 9
2.4 MySQL ... 9
2.5 Unified Modelling Language (UML)... 11
BAB III PERANCANGAN SISTEM... 13
3.1 Arsitektur Aplikasi ... 13
3.2 Use Case Diagram Sistem Pemesanan Makanan... 14
xi
3.3.2 Activity Diagram ShowInfoResto... 17
3.3.3 Activity Diagram ShowFoodMenu ... 18
3.3.4 Activity Diagram ShowDetailFood... 19
3.3.5 Activity Diagram OrderFood... 20
3.3.6 Activity Diagram ShowOrderHistory ... 22
3.3.7 Activity Diagram SearchMenu ... 23
3.3.8 Activity Diagram MaintenanceOrder ... 23
3.3.9 Activity Diagram MaintenanceUserResto... 24
3.3.10 Activity Diagram MaintenanceCustomer ... 25
3.3.11 Activity Diagram MaintenanceProduk... 26
3.3.12 Activity Diagram RegistrasiUser ... 27
3.3.13 Activity Diagram RegistrasiResto... 28
3.4 ClassDiagram Sistem Pemesanan Makanan... 29
3.5 Sequence Diagram Sistem Pemesanan Makanan ... 30
3.5.1 Sequence Diagram LoginCustomer ... 31
3.5.2 Sequence Diagram OrderFoods ... 32
3.5.3 Sequence Diagram ShowFoodMenus ... 34
3.5.4 Sequence Diagram ShowDetailFood ... 35
3.5.5 Sequence Diagram ShowInfoResto... 36
3.6 Component Diagram Sistem Pemesanan Makanan ... 37
3.7 Deployment Diagram Sistem Pemesanan Makanan ... 38
xii
3.9.1 Tampilan Menu Utama... 43
3.9.2 Tampilan Menu User Login... 44
3.9.3 Tampilan Menu Jenis Produk ... 45
3.9.4 Tampilan Menu Detil Produk ... 46
3.9.5 Tampilan Menu Pemesanan... 46
3.9.6 Tampilan Menu Informasi Resto ... 47
3.9.7 Tampilan Informasi Order ... 48
BAB IV IMPLEMENTASI DAN EVALUASI ... 49
4.1 Kebutuhan Sistem ... 49
4.1.1 Kebutuhan perangkat keras ... 49
4.1.2 Kebutuhan perangkat lunak ... 49
4.2 Pembuatan Program ... 50
4.3 Implementasi Sistem ... 50
4.3.1 Tampilan Form Menu Utama ... 50
4.3.2 Tampilan Form Menu Login... 52
4.3.3 Tampilan Form Menu... 52
4.3.4 Tampilan Form Detail Produk ... 54
4.3.5 Tampilan Form Pemesanan ... 54
4.3.6 Tampilan Form Menu Cari ... 55
4.3.7 Tampilan Form Menu Informasi Restoran ... 56
4.3.8 Tampilan Form Menu Informasi Order ... 57
xiii
4.4 Evaluasi Sistem... 60
4.4.1 Uji Coba Fungsionalitas Aplikasi ... 60
4.4.2 Uji Coba Waktu Akses ... 61
4.5 Analisis Program... 63
4.5.1 Kemampuan Program... 63
4.5.2 Kelemahan Program... 64
BAB V PENUTUP ... 65
5.1 Kesimpulan ... 65
5.2 Saran ... 65
DAFTAR PUSTAKA ... 66
xiv
Tabel 3.1. Struktur tabel userresto ... 39
Tabel 3.2. Struktur tabel useradmin ... 39
Tabel 3.3. Struktur tabel user ... 40
Tabel 3.4. Struktur tabel produk ... 40
Tabel 3.5. Struktur tabel info_resto ... 41
Tabel 3.6. Struktur tabel detil_transaksi ... 42
Tabel 3.7. Struktur tabel transaksi ... 42
Tabel 4.1. Spesifikasi handphone ... 61
Tabel 4.2. Hasil uji coba fungsionalitas ... 61
Tabel 4.3. Uji coba waktu akses dengan menggunakan GPRS IM3 ... 62
Tabel 4.4. Uji coba waktu akses dengan menggunakan GPRS Telkomsel... 62
Tabel 4.5. Uji coba waktu akses dengan menggunakan GPRS XL... 63
xv
Gambar 2.1 Java 2 Platform ... 8
Gambar 3.1. Garis besar Sistem Pemesanan Makanan (SPM)... 13
Gambar 3.2 Usecase Diagram Sistem Pemesanan Makanan ... 15
Gambar 3.3 Activity Diagram LoginCustomer ... 17
Gambar 3.4 Activity Diagram ShowInfoResto ... 18
Gambar 3.5 Activity Diagram ShowFoodMenu... 19
Gambar 3.6 Activity Diagram ShowDetailFood ... 20
Gambar 3.7 Activity Diagram OrderFood ... 21
Gambar 3.9 Activity Diagram ShowOrderHistory ... 22
Gambar 3.8 Activity Diagram ShowOrderHistory ... 23
Gambar 3.9 Activity Diagram ShowOrderHistory ... 23
Gambar 3.10 Activity Diagram MaintenanceOrder... 24
Gambar 3.11 Activity Diagram MaintenanceUserResto ... 25
Gambar 3.12 Activity Diagram MaintenanceUser ... 26
Gambar 3.13 Activity Diagram MaintenanceProduk ... 27
Gambar 3.14 Activity Diagram RegistrasiUser... 28
Gambar 3.15 Activity Diagram RegistrasiResto ... 29
Gambar 3.16 Class Diagram Sistem Pemesanan Makanan... 30
Gambar 3.17 Sequence Diagram LoginCustomer ... 32
Gambar 3.18 Sequence Diagram OrderFoods... 33
Gambar 3.19 Sequence Diagram ShowFoodMenus ... 34
xvi
Gambar 3.22 Component Diagram Sistem Pemesanan Makanan... 37
Gambar 3.23 Deployment Diagram... 38
Gambar 3.24 Rancangan Tampilan Menu Utama. ... 44
Gambar 3.25 Rancangan Tampilan Login ... 44
Gambar 3.26 Rancangan Tampilan Menu Jenis Produk (Form Pilih Restoran) ... 45
Gambar 3.27 Rancangan Tampilan Menu Jenis Produk (Form Produk)... 45
Gambar 3.28 Rancangan Tampilan Detil Produk... 46
Gambar 3.29 Rancangan Tampilan Menu Pemesanan ... 47
Gambar 3.30 Rancangan Tampilan Menu Informasi Restoran (Form Pilih Restoran)... 48
Gambar 3.31 Rancangan Tampilan Menu Informasi Restoran (Form Informasi) 48 Gambar 3.32 Rancangan Tampilan Informasi Order... 49
Gambar 3.33 Rancangan Tampilan Informasi Detail Order ... 49
Gambar 4.1 Tampilan Tampilan Form Menu Utama ... 51
Gambar 4.2 Tampilan Form Menu Login ... 52
Gambar 4.3 Tampilan Form Menu Pilih Resto ... 53
Gambar 4.4 Tampilan Form Jenis Produk ... 53
Gambar 4.5 Tampilan Form Detail Produk... 54
Gambar 4.6 Tampilan Form Pemesanan... 55
Gambar 4.7 Tampilan Form Pencarian ... 56
Gambar 4.8 Tampilan Form Hasil Pencarian... 56
xvii
Gambar 4.11 Tampilan Informasi Order... 58
Gambar 4.12 Tampilan Informasi Detail Order ... 58
Gambar 4.13 Tampilan Form Login Maintenance Data... 59
xviii
Lampiran 1. DriveThru.java (Menu Utama) ... 67
Lampiran 2. FormLogin.java... 67
Lampiran 3. FormPilihResto.java (Menu Pilih Restoran) ... 68
Lampiran 4. FormMenuAwal.java (Jenis Produk) ... 68
Lampiran 5. FormMenuAwal.java (Detail Produk) ... 69
Lampiran 6. FormTransaksi.java... 70
Lampiran 7. FormInfoResto.java (Pilih Restoran) ... 72
Lampiran 8. FormInfoResto.java (Detail Restoran) ... 72
Lampiran 9. FormInformasiOrder.java (Menu Catatan Order)... 74
Lampiran 10. FormInformasiOrder.java (Menu Informasi Detail Order) ... 74
Lampiran 11. FormSearch.java (MenuPencarian)... 76
1 1.1 Latar Belakang Masalah
Bisnis makanan di Surabaya mengalami perkembangan yang sangat pesat khususnya dalam lima tahun terakhir ini, dimana dapat dijumpai menjamurnya bisnis makanan mulai dari yang berskala kecil yaitu bisnis makanan yang terdapat di tepi jalan, seperti warung-warung dan kafe tenda; bisnis makanan berskala menengah seperti depot, rumah makan, dan cafe; sampai dengan bisnis makanan yang berskala besar seperti restoran-restoran di hotel berbintang. Berdasarkan data dari Penelitian pendahuluan yang dilakukan oleh penulis menunjukkan bahwa setidaknya terdapat lebih dari 1.100 bisnis makanan dengan jenis makanan yang ditawarkan sangat bervariasi (Disparta Surabaya, Yellow Pages, www.surabaya.go.id)
Berdasarkan literartur yang penulis temukan, sistem pemesanan makanan hanya berupa aplikasi desktop yang berada di rumah makan yang menerapkan sistem tersebut, sehingga para pelanggan dapat melakukan pemesanan makanan secara langsung melalui komputer yang tersedia pada masing-masing meja (Kinantra, 2004). Dengan melalui masukan keypad dari meja makan yang berisikan kode menu dan jumlah menu akan ditampilkan pada LCD (Mahendra, 2008). Selain itu penerapan sistem pemesanan makanan hanya meliputi satu rumah makan tertentu saja, Seperti mengimplementasikan sebuah aplikasi software sistem informasi pada Mango Terrace Resto (Nirmala, 2004).
Telepon selular atau ponsel saat ini merupakan alat komunikasi yang tidak hanya digunakan untuk sekedar berbicara dan mengirimkan pesan teks (SMS), tetapi banyak hal yang bisa dilakukan melalui ponsel, salah satunya adalah sebagai media untuk mobile internet. Mobile internet dapat diartikan sebagai kebebasan untuk mengakses dunia internet, dimana dan kapan saja, dengan cara yang mudah dan nyaman yaitu melalui perangkat mobile seperti ponsel.
Pihak rumah makan dapat memanfaatkan mobile internet ini sebagai salah satu sarana untuk memasarkan produk-produk kulinernya, namun mungkin tidak setiap rumah makan memiliki dana yang cukup untuk membangun aplikasi mobile internet guna memasarkan produk-produk kulinernya, maka diperlukan suatu aplikasi yang dapat menampung kebutuhan berbagai rumah makan tersebut, yang dapat disebut dengan pujasera online.
makanan yang berupa cetak atau hardcopy. Aplikasi ini dapat melayani pemesanan makanan dan minuman pada rumah makan yang terhubung dengan sistem ini. Aplikasi ini mampu menampilkan informasi yang berkaitan dengan rumah makan yang menerapkan sistem ini. Aplikasi ini mampu menampilkan catatan pesanan yang pernah dilakukan oleh pelanggan.
1.2Perumusan Masalah
Dari latar belakang masalah di atas, dapat dirumuskan permasalahan yang ada yaitu:
1. Bagaimana merancang dan membangun sistem pemesanan makanan berbasis J2ME pada pujasera online.
2. Bagaimana membuat sarana alternatif untuk melakukan promosi dan memasarkan produk-produk kuliner rumah makan dan sebagai media informasi bagi konsumen melalui ponsel dengan teknologi J2ME.
1.3Pembatasan Masalah
Pembatasan masalah dalam Tugas Akhir ini dibatasi pada hal-hal sebagai berikut :
1. Aplikasi ini dibuat dengan menggunakan bahasa Java yang dikhususkan untuk aplikasi mobile yaitu J2ME, sedangkan untuk maintenance data pada web server digunakan bahasa pemrograman web PHP
2. Perangkat mobile yang digunakan adalah semua telepon selular yang minimal mendukung untuk akses GPRS sebagai media transfer data.
berwarna dengan resolusi minimal 128 x 128 pixels, dan mendukung terhadap MIDP 2.0 dan CLDC 1.1.
4. Tidak dibahas tentang struktur jaringan penghubung antara perangkat mobile dengan Personal Computer.
5. Aplikasi ini tidak melibatkan proses akuntansi dan stok barang. 6. Aplikasi ini tidak menangani masalah keamanan jaringan. 7. Aplikasi ini tidak menangani masalah antrian.
8. Aplikasi ini tidak melayani pembatalan atau retur.
1.4Tujuan
Tujuan dari pembuatan aplikasi sistem pemesanan makanan dengan teknologi J2ME pada pujasera online ini adalah :
1. Merancang dan membangun suatu aplikasi dengan memanfaatkan teknologi J2ME untuk memberikan informasi produk makanan dan minuman kepada konsumen.
2. Sarana alternatif untuk melakukan promosi dan pemasaran produk-produk kuliner rumah makan melalui ponsel dengan teknologi J2ME.
3. Memanfaatkan teknologi mobile device dalam hal ini ponsel yang mendukung J2ME untuk membuat aplikasi sistem pemesanan makanan pada rumah makan /pujasera secara online.
1.5Sistematika Penulisan
Sistimatika penulisan pada laporan ini adalah sebagai berikut:
Pada bab ini membahas tentang latar belakang masalah dan penjelasan permasalahan secara umum, perumusan masalah serta batasan masalah yang dibuat, tujuan dari pembuatan tugas akhir dan sistimatika penulisan buku ini.
BAB II : LANDASAN TEORI
Pada bab ini membahas teori mengenai Konsep dasar sistem informasi. Drive thru yang merupakan subjek utama. Teknologi Bluetooth yang dibangun melalui J2ME. MySQL sebagai Database Management system Teknologi UML yang digunakan untuk merancang sistem.
BAB III : PERANCANGAN SISTEM
Pada bab ini membahas tentang perancangan dari aplikasi yang akan dibuat, Use-case diagram, Class diagram, Sequence diagram, serta desain input dan output.
BAB IV : IMPLEMENTASI DAN EVALUASI
Pada bab ini membahas tentang implementasi dari aplikasi. Serta melakukan pengujian terhadap aplikasi yang dibuat untuk mengetahui apakah aplikasi telah dapat menyelesaikan permasalahan yang dihadapi sesuai dengan yang diharapkan. BAB V : PENUTUP
6 2.1Konsep Dasar Sistem Informasi
Sistem dapat diartikan sebagai serangkaian komponen-komponen yang saling berinteraksi dan bekerjasama untuk mencapai tujuan tertentu (Soeherman & Pinontoan, 2008: 3). Sistem terdiri dari dua bagian yaitu struktur dan proses. Struktur suatu sistem adalah elemen-elemen yang membentuk sistem sedangkan proses adalah kegiatan yang dilakukan oleh elemen yang ada untuk mencapai tujuan yang sudah ditentukan.
Informasi merupakan hasil pemrosesan data (fakta) menjadi sesuatu yang bermakna dan bernilai untuk pengambilan keputusan (Soeherman & Pinontoan, 2008: 4). Suatu informasi bisa dikatakan bernilai apabila informasi tersebut memberikan suatu manfaat yang lebih dibandingkan dengan kita hanya melihat data yang ada.
2.2Java 2 Micro Edition (J2ME)
Teknologi Java merupakan sebuah teknologi yang berkembang sangat pesat akhir-akhir ini. Bahkan belakangan ini dikabarkan berusaha mengalahkan Microsoft yang terkenal sebagai kampiun dari produsen operating system dimuka bumi ini. Teknologi Java yang pada awalnya dikenal untuk aplikasi pada desktop (J2SE) ataupun pada application server (J2EE), kini hadir dengan teknologi terbarunya, J2ME™ Platform, untuk pembangunan aplikasi pada mobile device seperti mobile phone dan PDA.
Java 2 Micro Edition (J2ME) merupakan salah satu dari tiga edisi Java 2 Platform. Masing-masing paket dan lisensi pada teknologi Java disetiap edisi mempunyai perbedaan, menyediakan suatu lingkungan runtime yang berbeda dan memenuhi kebutuhan dari pengembang aplikasi yang bekerja di environment yang berbeda.
Aplikasi yang dibangun menggunakan J2ME memiliki beberapa kelebihan antara lain interface dari aplikasi akan lebih interaktif jika dibandingkan dengan aplikasi yang menggunakan WAP. Kelebihan lainnya adalah biaya yang dikeluarkan untuk mengakses informasi akan lebih sedikit karena secara teknis aplikasi hanya mengambil data yang diperlukan dari server dan selanjutnya disimpan dalam suatu media penyimpanan pada ponsel yaitu RMS (Record Management System). Sehingga aplikasi tersebut memproses data secara offline pada ponsel dan koneksi ke server tidak berjalan terus menerus.
dibangun menggunakan J2ME dapat berjalan pada semua handphone mulai dari yang Low Level hingga Smartphone dan PDA. Sedangkan aplikasi yang dibangun menggunakan .NET Compact Framework hanya bisa berjalan pada handphone atau PDA yang bersistem operasi Windows Mobile. Handphone atau PDA tersebut jumlahnya relatif sedikit dan karena harganya yang mahal masih belum banyak yang menggunakan handphone atau PDA yang bersistem operasi Windows Mobile.
Gambar 2.1. Java 2 Platform
Untuk melakukan koneksi dengan server J2ME ada tiga cara, yaitu: 1. Koneksi dengan menggunakan Socket.
2. Koneksi dengan menggunakan Datagram.
3. Koneksi dengan menggunakan HTTP Connection.
1. Tidak semua piranti MIDP mendukung koneksi dengan socket dan datagram tetapi semua piranti MIDP mendukung komunikasi HTTP.
2. Komunikasi dengan HTTP Protocol pada piranti MIDP memberikan standarisasi yang jelas untuk aplikasi nirkabel sehingga J2ME mendukung komunikasi antar jaringan nirkabel.
3. Tipe data yang tidak sama dapat dienkapsulasi pada HTTP request dengan mudah
2.3Hypertext Preprocessor (PHP)
PHP adalah bahasa pemrograman server side yang dirancang khusus untuk web (Welling & Thomson, 2001: 4). Dengan PHP aplikasi–aplikasi yang ada di webserver benar–benar akan dijalankan di webserver tanpa mengharuskan adanya tambahan atau syarat tertentu untuk sisi client (webbrowser). PHP biasanya dijadikan sebagai module dalam suatu webserver agar bisa mengeksekusi file–file PHP yang tersedia di webserver. PHP dapat berjalan di hampir seluruh platform open source dan berlisensi Gnu Public License (GPL).
Pada aplikasi yang akan dibuat ini PHP digunakan sebagai server untuk menyediakan data yang didapat dari database secara real time kepada user yang mengakses aplikasi pada ponsel dan membutuhkan data dari server.
2.4MySQL
mengguanakan script PHP dan Perl. Software database ini kini telah tersedia juga pada platform sistem operasi Windows. Kepopuleran MySQL dimungkinkan karena kemudahannya untuk digunakan, cepat secara kinerja query, dan mencukupi untuk kebutuhan database perusahaan-perusahaan skala menengah – kecil.
Software database MySQL kini dilepas sebagai software manajemen database yang open source, sebelumnya merupakan software database yang shareware. Shareware adalah suatu software yang dapat didistribusikan secara bebas untuk keperluan penggunaan secara pribadi, tetapi jika digunakan secara komersial maka pemakai harus mempunyai lisensi dari pembuatnya. Software open source menjadikan software ini dapat didistribusikan secara bebas dan dapat dipergunakan untuk keperluan pribadi ataupun komersial, tersebut di dalamnya source code dari software tersebut.
Database MySQL tersedia secara bebas dan boleh digunakan oleh setiap orang, dengan lisensi open source GNU General Public License (GPL) ataupun lisensi komersial non GPL. Saat ini diperkirakan lebih dari 3 juta pemakai di seluruh dunia, dengan lebih dari setengah juta server yang memasangnya, termasuk di dalamnya Yahoo, MP3.com, Motorola, NASA.
database alternatif masa depan. Demikian juga pengguna dari database MySQL, menunjukkan makin banyaknya perusahaan besar menggunakannya.
2.5Unified Modeling Language (UML)
Unified Modeling Language (UML) adalah suatu notasi standar untuk pemodelan sistem berorientasi objek, dan merupakan platform utama untuk membangun aplikasi dengan cepat (Boggs & Boggs, 2002: 4 ). UML merupakan bahasa pemodelan yang paling sukses dari tiga metode OO (Object Oriented) yang telah ada sebelumnya, yaitu Booch, OMT (Object Modeling Technique), dan OOSE (Object-Oriented Software Engineering).
UML merupakan kesatuan dari ketiga pemodelan tersebut dan ditambah kemampuannya yang lebih baik karena mengandung metode tambahan untuk mengatasi masalah pemodelan yang tidak dapat ditangani ketiga metode tersebut. UML dikeluarkan oleh OMG (Object Management Group, Inc) yaitu organisasi internasional yang dibentuk pada 1989 yang terdiri dari perusahaan sistem informasi, software developer, dan para user sistem komputer.
Dengan adanya UML, diharapkan dapat mengurangi kekacauan dalam bahasa pemodelan yang selama ini terjadi dalam lingkungan industri. UML diharapkan juga dapat menjawab masalah penotasian dan mekanisme tukar menukar model yang terjadi selama ini. Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut:
1. Business Use Case diagram. 2. Use Case diagram.
4. Sequence diagram. 5. Collaboration diagram. 6. Class diagram.
7. Statechart diagram. 8. Component diagram. 9. Deployment diagram
13 3.1Arsitektur Aplikasi
Tugas Akhir ini merupakan rancang bangun sistem (proyek). Rancang bangun sistem ini digunakan untuk membangun suatu aplikasi yang dapat memberikan informasi menu makanan dan minuman, harga makanan dan minuman, pemesanan makanan dan minuman, dan informasi lainya yang berkaitan dengan rumah makan tersebut.
Secara garis besar sistem pemesanan makanan dapat digambarkan seperti Gambar 3.1:
Gambar 3.1 Garis besar Sistem Pemesanan Makanan (SPM).
mobile. Sistem ini juga menyediakan sarana bagi pihak administrator untuk maintenance customer, maintenance produk makanan dan minuman, maintenance rumah makan / pujasera melalui aplikasi desktop. Sistem ini juga menyediakan sarana bagi pihak rumah makan / pujasera untuk mengetahui pesanan yang masuk melalui aplikasi desktop.
Perangkat mobile dalam aplikasi ini berperan sebagai client. Untuk bertukar data antara handphone dengan server digunakan koneksi internet. Pada aplikasi handphone akan muncul menu-menu yang berkaitan dengan informasi rumah makan/pujasera. Ketika pengguna aplikasi memilih salah satu menu dan request ke server, maka aplikasi akan terkoneksi dengan server melalui koneksi internet. Webservice akan meneruskan request dari client untuk akses ke database server, kemudian diolah dan ditampilkan berdasarkan request client dan diteruskan oleh webservice untuk ditampilkan pada aplikasi yang ada pada handphone client.
3.2Usecase Diagram Sistem Pemesanan Makanan
ShowDetailFood
(from Use Cases)
OrderFood
(from Use Cases)
ShowInfoResto
(from Use Cases)
ShowOrderHis tory
(from Use Cases)
Registras iCus tom er
(from Use Cases)
ShowFoodMenus
(from Use Cases) <<extend>>
<<extend>> LoginCustom er
(from Use Cases) <<include>>
MaintenanceCustomer
(from Use Cases)
MaintenanceUserResto
(from Use Cases)
Adm inistrator (f rom Ac tors )
MaintenanceProduk
(from Use Cases)
MaintenanceInfoRes to
(from Use Cases)
Registras iRes to
(from Use Cases)
MaintenanceOrder
(from Use Cases)
AdminResto (f rom Ac tors ) Custom er
(f rom Ac tors )
SearchMenu
<<extend>>
makanan atau minuman (SearchMenu), selain itu aktor customer juga dapat melakukan registrasi (Registrasi) untuk mendapatkan akses kedalam sistem dan login sebelum melakukan pemesanan makanan dan minuman (LoginCustomer).
Aktor Administrator memiliki kemampuan untuk dapat melakukan maintenance data customer (MaintenanceUser) dan maintenance data restoran yang menjadi member (MaintenanceUserResto).
Aktor AdminRumahMakan memiliki kemampuan untuk dapat mendaftarkan data rumah makan/pujaseranya (RegistrasiResto), maintenance data produk-produk yang akan ditawarkan agar dapat dipesan oleh customer melalui aplikasi ini (MaintenanceProduk), melakukan maintenance informasi tentang rumah makan yang bersangkutan (MaintenanceInfoResto), selain itu aktor AdminRumahMakan juga dapat menerima order dari customer dan merespon order dari customer (MaintenanceOrder).
Berikut ini penjelasan mengenai usecase yang digunakan oleh aktor Customer. Usecase ShowInfoResto digunakan untuk mengakses informasi mengenai rumah makan/restoran yang ada pada aplikasi. Usecase ShowOrderHistory digunakan untuk mengetahui informasi mengenai order-order yang pernah dilakukannya. Usecase LoginCustomer digunakan untuk keamanan sebelum user melakukan pemesanan dan menampilkan informasi mengenai order-order yang pernah dilakukan pada sistem pemesanan makanan. ShowFoodMenus digunakan untuk menampilkan menu-menu makanan yang ditawarkan. ShowDetailFood digunakan untuk melihat rincian/detail dari suatu makanan/minuman yang ditawarkan. OrderFood digunakan untuk melakukan order makanan/minuman melalui sistem pemesanan makanan. Registrasi User digunakan untuk pendaftaran kustomer baru agar dapat melakukan pemesanan makanan/minuman melaui sistem pemesanan makanan.
3.3Activity Diagram Sistem Pemesanan Makanan
Activity diagram menunjukan informasi mengenai aliran suatu kejadian pada sistem. Activity diagram dapat digunakan dalam pemodelan sistem untuk menggambarkan aliran kerja (workflow) dalam usecase sistem. Berikut ini beberapa activity diagram dari usecase pada Sistem Pemesanan Makanan :
3.3.1 Activity Diagram LoginCustomer
Mulai
Pilih menu Login
Input Username
Input Password Tampil form
Login
Cek validasi data login
Selesai [ Tidak valid ]
[ Valid ]
Customer tidak dapat masuk kedalam sistem dan harus melakukan login ulang. Apabila username dan password yang di-input-kan valid maka Customer akan terhubung dengan sistem.
Gambar 3.3 Activity Diagram LoginCustomer
3.3.2 Activity Diagram ShowInfoResto
Mulai
Pilih menu Informasi
Input wilayah restoran
Input restoran
Pilih menu Lihat Info Tampil Form Informasi Restoran
Tampil form Info Restoran
[image:30.595.96.508.80.505.2]Selesai
Gambar 3.4 Activity Diagram ShowInfoResto
3.3.3 Activity Diagram ShowFoodMenu
Mulai
Pilih Menu
Input wilayah restoran
Input restoran Tampil form Pilih Restoran
Tampil form Jenis Produk
[image:31.595.104.500.75.488.2]Selesai
Gambar 3.5 Activity Diagram ShowFoodMenu
3.3.4 Activity Diagram ShowDetailFood
Mulai
Pilih Menu
Input wilayah restoran
Input restoran
Input kriteria produk
Input produk Tampil Form Pilih Restoran
Tampil form Jenis Produk
Tampil menu Detail Produk Pilih menu Lihat Detail
[image:32.595.90.502.78.535.2]Selesai
Gambar 3.6 Activity Diagram ShowDetailFood
3.3.5 Activity Diagram OrderFood
Mulai
Cek Login Cus tom er Pilih Menu
Input Wilayah Res toran Tampil form
piih menu
Input Res toran
[image:33.595.92.502.182.694.2]Tampil Form Jenis Produk Input Kriteria Produk Input Produk Pilih Menu Order Tampilkan Form Login
[belum ]
Input username dan pas s word
Cek validas i data
Tampil Form Pemes anan
Is i Data Pemes anan
Pilih Menu Kirim Order
Cek validas i data pemes anan [tidak valid] [valid] [tidak valid] [s udah] [valid]
akan menampilkan form Login dan user harus melakukan login dengan benar apabila akan melakukan order. Apabila user telah login maka sistem akan menampilkan form Pemesanan, user dapat melengkapi data pemesanan dan mengirimkan data tersebut keserver dengan memilih menu Kirim Order.
Pilih m enu Catatan Order
Input username dan password
Input tanggal dan jam order
Pilih m enu Lihat Order Tampilkan
Form login
Cek validasi data login
Cek login customer
Tampil form Informasi Order
Tampil form Detail Order
[image:34.595.92.503.307.738.2]Selesai Mulai
[ belum ]
[ tidak valid ] [valid]
[sudah]
3.3.6 Activity Diagram ShowOrderHistory
Pada Gambar 3.8 ditunjukan activity diagram ShoworderHistory oleh aktor Customer, dengan dimulai memilih menu Catatan Order pada sistem, sistem akan mengecek apakah user sudah login, kalau belum maka akan tampil form Login, dan user harus melakukan login dengan benar apabila ingin menampilkan form Informasi Order. Apabila user telah login maka sistem akan menampilkan form Informasi Order, kemudian user dapat meng-input-kan tanggal dan jam order, kemudian user dapat memilih menu Lihat Order untuk menampilkan form Detail Order.
Mulai Pilih Menu Cari
Tampil Form Cari Inputkan Menu
yang dicari Tampil hasil
yang dicari Selesai
3.3.7 Activity Diagram SearchMenu
[image:35.595.93.504.235.536.2]Pada Gambar 3.9 ditunjukan activity diagram SearchMenu oleh aktor Customer, dengan dimulai memilih menu Cari pada sistem, sistem akan menampilkan form menu Cari, kemudia user diminta untuk menginputkan menu makanan atau minuman yang dicari, kemudian system akan menampilkan hasil pencarian.
Gambar 3.9 Activity Diagram SearchMenu
3.3.8 Activity Diagram MaintenanceOrder
Mulai
Pilih m enu Login
Input us ername dan pas s word
Menerima order Hapus data
order
Meres pons order
Cek validas i data login
Maintenance data order
Seles ai Tampilkan
Form Login
Kirim order
Sim pan data order [ Tidak valid ]
[ Valid ]
dalam menu tersebut AdminRumahMakan dapat melakukan hapus data order, menerima order dan kemudian menyimpannya.
Gambar 3.10 Activity Diagram MaintenanceOrder
3.3.9 Activity Diagram MaintenanceUserResto
Mulai
Pilih menu Login
Input us ername dan pas s word
Edit data res to Tambah data
res to Cek validas i data
login Tampilkan Form Login
Maintenance data res to
[ Edit data ] [ Tambah data ]
Sim pan data res to
Seles ai [ Tidak valid ]
[ Valid ]
sistem yang akan menampilkan menu Maintenance data resto, dalam menu tersebut Administrator dapat melakukan Edit data resto, Hapus data resto, Tambah data resto dan kemudian menyimpannya.
Gambar 3.11 Activity Diagram MaintenanceUserResto
3.3.10 Activity Diagram MaintenanceCustomer
Input us ername dan pas s word
Mulai
Login
Edit data us er Tambah data
us er Tampilkan
Form Login
Cek validas i data login
Maintenance data us er
Sim pan data us er
Selesai [ Tidak valid ]
[ Valid ]
[ Edit data ]
[ Tambah data ]
password yang diinputkan valid maka Administrator akan terhubung dengan sistem yang akan menampilkan menu Maintenance data user, dalam menu tersebut Administrator dapat melakukan Edit data user, Hapus data user, Tambah data user dan kemudian menyimpannya.
Gambar 3.12 Activity Diagram MaintenanceCustomer
3.3.11 Activity Diagram MaintenanceProduk
Mulai
Pilih m enu Login
Input us ernam e dan pas s word
Menerim a order Hapus data
order
Meres pons order
Cek validas i data login
Maintenance data order
Seles ai Tam pilkan
Form Login
Kirim order
Sim pan data order [ Tidak valid ]
[ Valid ]
tidak dapat masuk kedalam sistem dan harus melakukan login ulang. Apabila username dan password yang diinputkan valid maka AdminRumahMakan akan terhubung dengan sistem yang akan menampilkan menu Maintenance data produk, dalam menu tersebut AdminRumahMakan dapat melakukan Edit data produk, Hapus data produk, Tambah data produk dan kemudian menyimpannya.
Gambar 3.13 Activity Diagram MaintenanceProduk
3.3.12 Activity Diagram RegistrasiUser
customer, formulir yang telah diisi dikembalikan pada administrator, kemudian administrator melakukan pengecekan data pada formulir yang telah diisi oleh customer, apabila terdapat kesalahan atau kekurangan dalam pengisian, formulir akan dikembalikan pada customer untuk dilengkapi. Apabila pengisian formulir telah benar atau lengkap, administrator akan menyimpan data user baru tersebut.
Gambar 3.14 Activity Diagram RegistrasiUser 3.3.13 Activity Diagram RegistrasiResto
formulir yang dapat diisi oleh AdminRumahMakan, formulir yang telah diisi dikembalikan pada Administrator, kemudian Administrator melakukan pengecekan data pada formulir yang telah diisi oleh AdminRumahMakan, apabila terdapat kesalahan atau kekurangan dalam pengisian, formulir akan dikembalikan pada AdminRumahMakan untuk dilengkapi. Apabila pengisisan formulir telah benar atau lengkap, Administrator akan menyetujui dan menyimpan data resto baru tersebut.
Gambar 3.15 Activity Diagram RegistrasiResto 3.4Class Diagram Sistem Pemesanan Makanan
-frmOrder DriveThru
strUs er : String = "" strPwd : String = "" strDepos it : int = 0 strAlamat : String = "" strNoTelp : String = ""
DriveThru() startApp() paus eApp() des troyApp() commandAction() buatIcon() pros esLogout() cekLogin() openLoginForm() openInfoOrderForm() alertTes ting() openInfoRestoForm() openFormPilihRes to() MyHttpConnection s es s ionID : java.lang.String s erverURL : java.lang.String
MyHttpConnection() s endGETReques t() s endPOSTReques t() getRes pons e()
MyStringTokenizer string : String = null tokens [] : String = null delimiter : char = ' ' allTokens : int = 0
MyStringTokenizer() countAllTokens () tokenizeString() getNumberOfTokens () getTokens() AmbilData jmlData : int jmlKolom : int
mes s ageServer : java.lang.String records [] : java.lang.String res ult[][] : java.lang.String
AmbilData() getDataFromServer()
-conn -ms t Form Informas iOrder
data[][] : String s tatus : String s trDis playAllDetail : String s trTanggal : String s trJam : String s trProduk[] : String s trGarisDetail : String s trDis playTanggal : String s trDis playJam : String s trDis playTotalHarga[] : String s trDis playTanggalKirim[] : String s trDis playJamKirim[] : String s trDis playResto[] : String
FormInformasiOrder() makeIcon() run() getInfo() getDetailOrder() commandAction() alertInfo() -ambl -frmInfoOrder Form Login loginSuks es [][] : String s tatus Login : String dataLogin : String dataPwd : String dataDepos it : String dataAlamat : String dataNoTelp : String
FormLogin() createImage() run() cekProses Login() viewMenu() noConnection() proses Login() alertLogin() commandAction() alertTesting() -ambl -frm Login FormMenuAwal data[][] : String s tatus : String menuPilih[][] : String idPilih[][] : String dataDetail[][] : String s trDetailAll : String s trDetailGaris : String s trDetailNama : String s trDetailKeterangan : String s trDetailHarga : String intJumlahJualAll : int intHargaTotalAll : int awalTahun : int row : int col : int s ttDetail : boolean s ttArray : String s ttLoginCekProduk : String
FormMenuAwal() run() itemStateChanged() getDetailKriteria() getDetailProduk() getKriteria() alertTes ting() openLoginForm() openOrderForm() commandAction() -ambl -frmLogin
FormTrans aks i s trAwalOrder : String colKriteria : int menuOrder[][] : String dataHarga[][] : String ins ertDetailOrder[][] : String idOrder[][] : String data[][] : String totalItemArray[][] : String ins ertOrder[][] : String updateDeposit[][] : String row : int
col : int s tatus : String noNota : String s trPes anan : String s trNamaProduk : String s trHargaProduk : String jam Order : int menitOrder : int jam Now : int menitNow : int waktuOrder : String waktuNow : String waktuPes an : String bln : String tgl : String tglPes an : String tglOrder : String kalender : java.util.Calendar tem pTglOrder : int bulanOrder : int tahunOrder : int tglNow : int bulanNow : int tahunNow : int tem p : int totalHarga : int depos itUser : int hargaItem : int jum lahItem : int
FormTrans aks i() s etAwal() buatIcon() run() ins ertOrder() cekDepos it() formKonfirm as i() getNota() alertTes ting() getWaktuAndTanggalNow() getWaktuAndTanggalOrder() commandAction() -am bl -frmLogin -frmOrder FormInfoRes to s tatus : String s trInfoAll : String s trNama : String s trAlamat : String s trTelp : String s trFax : String s trHalal : String s trLayanan : String s trSyarat1 : String s trSyarat2 : String s trSyarat3 : String s trSyarat4 : String dataWilayah[][] : String dataRes to[][] : String s trGaris : String s trWilayah : String
FormInfoResto() run() getInfoRes to() commandAction() itemStateChanged() getDetailResto() getWilayah() alertTes ting() -ambl -frmInfoResto Progress Bar idx : int mInterval : int mWidth : int mHeight : int urls tring : java.lang.String menu : java.lang.String ncol : int col : int maju : boolean deltaX : int tas k : java.util.TimerTask
stop() Progres s Bar() paint() commandAction() -pgr -pgr -pgr -pgr -pgr
Form PilihRes to dataWilayah[][] : String dataResto[][] : String s tatus : String s trKodeResto : String s trNamaRes to : String
FormPilihRes to() getWilayah() itemStateChanged() getDetailRes to() run() openFormMenuAwal() commandAction() -ambl -frmKriteria -frmMenuAwal -pgr
Gambar 3.16 Class Diagram pada Sistem Pemesanan Makanan.
3.5 Sequence Diagram Sistem Pemesanan Makanan
proses yang melibatkan objek atau instan dari class dalam aplikasi ini. Namun ada beberapa usecase yang tidak perlu digambarkan sequence diagram-nya dikarenakan usecase tersebut sudah jelas dan tidak melibatkan objek lain dalam prosesnya.
3.5.1 Sequence Diagram LoginCustomer
Proses dalam usecase diawali ketika customer membuka aplikasi (DriveThru) yang telah ter-install didalam telepon selular, kemudian membuka form Login yang digambarkan dengan objek FormLogin. Setelah customer memasukan username dan password, form akan mengecek apakah customer tidak mengosongkan inputan username dan passwordnya, apabila customer benar-benar telah menginputkan username dan passwordnya, maka data akan diambil oleh obyek AmbilData yang kemudian data dikirim keserver untuk diperiksa apakah username dan password tersebut terdaftar pada sistem. Sistem akan mengirimkan konfirmasi ke obyek AmbilData yang kemudian akan diteruskan ke obyek MyStringTokenizer agar selama membuka aplikasi customer tetap dikenali oleh sistem sehingga tidak perlu login berulang kali. Setelah username dan password dicek, maka sistem akan mengirimkan pesan ke FomLogin
: Cus tomer : DriveThru : FormLogin : AmbilData : MyStringTokenizer : MyHttpConnection
DriveThru( ) openLoginForm( )
Form Login(javax.microedition.lcdui.Display, javax.m icroedition.lcdui.Displayable)
AmbilData( ) cekProsesLogin( )
MyStringTokenizer(String, char)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens ( )
getDataFromServer(java.lang.String)
Gambar 3.17 Sequence Diagram LoginCustomer
3.5.2 Sequence Diagram OrderFoods
Proses pada usecase diawali ketika obyek form transaksi (FormTransaksi) dibuka, kemudian form akan menampilkan data awal, tanggal dan waktu sekarang sebagai waktu dan tanggal pemesanan, kemudian user menentukan waktu dan tanggal pengiriman pesanan, kemudian sistem akan mengecek apakah deposit customer masih mencukupi untuk melakukan pembayaran dari transaksi yang telah dilakukan. Apabila deposit mencukupi untuk melakukan transaksi, maka sistem akan membuat nota untuk pengiriman pesanan, apabila deposit tidak mencukupi untuk melakukan transaksi, maka transaksi dibatalkan.
getDataFromServer(java.lang.String) : Customer : DriveThru :
FormPilihResto
:
FormMenuAwal : AmbilData : MyStringTokenizer
: MyHttpConnection
DriveThru( )
openFormPilihResto( )
FormPilihResto(javax.microedition.lcdui.Display, javax.microedition.lcdui.Displayable)
getWilayah( )
AmbilData( )
MyStringTokenizer(String, char)
getDetailResto( )
AmbilData( )
openFormMenuAwal( )
FormMenuAwal(javax.microedition.lcdui.Display, javax.microedition.lcdui.Displayable)
getKriteria( )
AmbilData( )
MyStringTokenizer(String, char)
getDetailKriteria( )
sendPOSTRequest(java.lang.String, java.lang.String)
getTokens( )
MyStringTokenizer(String, char)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String) 3.5.3 Sequence Diagram ShowFoodMenus
Sequence Diagram ShowFoodMenus dapat dilihat pada Gambar 3.19 berikut ini:
: FormMenuAwal : Customer : DriveThru :
FormPilihResto : AmbilData : MyStringTokenizer : MyHttpConnection
DriveThru( )
openFormPilihResto( )
FormPilihResto(javax.microedition.lcdui.Display, javax.microedition.lcdui.Displayable) getWilayah( )
AmbilData( )
MyStringTokenizer(String, char)
getDetailResto( )
AmbilData( )
MyStringTokenizer(String, char)
openFormMenuAwal( )
FormMenuAwal(javax.microedition.lcdui.Display, javax.microedition.lcdui.Displayable)
getKriteria( )
AmbilData( ) MyStringTokenizer(String, char)
getDetailKriteria( )
AmbilData( ) MyStringTokenizer(String, char)
getDetailProduk( )
sendPOSTRequest(java.lang.String, java.lang.String)
getTokens( )
getDataFromServer(java.lang.String)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
3.5.4 Sequence Diagram ShowDetailFood
Sequence Diagram ShowDetailFood dapat dilihat pada Gambar 3.20 berikut ini:
: Customer : DriveThru : FormInfoResto : AmbilData : MyStringTokenizer : MyHttpConnection
DriveThru( ) openInfoRestoForm( )
FormInfoResto(javax.microedition.lcdui.Display, javax.microedition.lcdui.Displayable) getWilayah( )
AmbilData( )
MyStringTokenizer(String, char)
getDetailResto( ) AmbilData( )
MyStringTokenizer(String, char)
getInfoResto( )
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
sendPOSTRequest(java.lang.String, java.lang.String) getTokens( )
getDataFromServer(java.lang.String)
3.5.5 Sequence Diagram ShowInfoResto
Sequence Diagram Show InfoResto dapat dilihat pada Gambar 3.21 berikut ini:
AmbilData MyHttpConnection
MyStringTokenizer
DriveThru
FormInfoResto
FormInformasiOrder FormLogin
FormPilihResto
FormMenuAwal
FormTransaksi ProgressBar midlet
lcdui io
3.6 Component Diagram Sistem Pemesanan Makanan
Diagram komponen adalah suatu diagram yang menampilkan komponen-komponen dalam sistem dan hubungan antara mereka. Dependensi komponen-komponen menunjukkan urutan komponen-komponen untuk proses compiling. Diagram komponen pada aplikasi ini dapat dilihat pada gambar berikut ini:
<Mobile Device> Handphone Kustomer <PC Adm in> Komputer Adm in
Rum ah Makan
<SPM Web Server> HTTP WebServer
<<internet>>
<SPM Database Server> MySQL Databas e Server
<<gprs>>
3.7 Deployment Diagram Sistem Pemesanan Makanan
Deployment diagram menggambarkan detil bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal.
Gambar 3.23 Deployment Diagram
Nama Kolom Tipe Ukuran Keterangan
id_resto varchar 10
Primary Key. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
username varchar 10
password varchar 10
Nama Kolom Tipe Ukuran Keterangan
username varchar 10 Primary Key
password varchar 10
3.8 Struktur Tabel
Tabel-tabel yang digunakan untuk menyimpan data di desain seperti berikut ini:
1. Nama Tabel : userresto
Fungsi : Untuk menyimpan data user restoran / rumah makan yang dapat login kedalam sistem.
Tabel 3.1 Struktur tabel userresto
2. Nama Tabel : useradmin
Fungsi : Untuk menyimpan data user administrator.
Nama Kolom Tipe Ukuran Keterangan
username varchar 10 Primary Key
password varchar 10
nama varchar 30
alamat varchar 50
no_telp varchar 12
no_ktp varchar 25
deposit integer 12
Nama Kolom Tipe Ukuran Keterangan
id_resto varchar 10
Foreign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/
restoran.
id_produk varchar 10
Primary key. No. identitas produk. Format XXZZ. - XX adalah id produk. - ZZ adalah nomer produk.
nama_produk varchar 50
jenis varchar 10
harga integer 10
keterangan text Berisi deskripsi produk
3. Nama Tabel : user
Fungsi : Untuk menyimpan data customer.
Tabel 3.3 Struktur tabel user.
4. Nama Tabel : produk
Fungsi : Untuk menyimpan data produk.
Tabel 3.4 Struktur tabel produk.
Nama Kolom Tipe Ukuran Keterangan
id_resto varchar 10
Forign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
nama varchar 50
alamat varchar 50
no_telp varchar 15
no_fax varchar 15
info_halal text
info_layanan text
syarat1 text
syarat2 text
syarat3 text
syarat4 text
wilayah varchar 20
5. Nama Tabel : info_resto
Fungsi : Untuk menyimpan data informasi restoran.
Tabel 3.5 Struktur tabel info_resto.
6. Nama Tabel : detil_transaksi
Nama Kolom Tipe Ukuran Keterangan
no_nota varchar 10 Primary Key.
id_resto varchar 10
Foreign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
tanggal_pesan varchar 10
jam_pesan varchar 6
tanggal_kirim varchar 10
jam_kirim varchar 6
username varchar 10
alamat varchar 50
no_telp varchar 12
total_pembelian integer 10
status varchar 20
deposit_sblum integer 10
deposit_stlah integer 10
Nama Kolom Tipe Ukuran Keterangan
no_nota varchar 10 Foreign Key tabel transaksi
id_produk varchar 10
Foreign Key tabel produk. No. identitas produk. Format XXZZ. - XX adalah id produk. - ZZ adalah nomer urut produk.
jumlah varchar 5
harga varchar 10
Tabel 3.6 Struktur tabel detil_transaksi.
7. Nama Tabel : transaksi
[image:54.595.94.529.193.757.2]Fungsi : Untuk menyimpan data transaksi.
3.9 Rancangan User Interface
Pembuatan tampilan sangat diperlukan agar pengguna dapat berinteraksi dengan sistem, sehingga dibutuhkan perancangan secara detil mengenai tampilan aplikasi berdasarkan informasi yang ditampilkan pada layar handphone. Perancangan tampilan Sistem Pemesanan Makanan adalah sebagai berikut.
3.9.1 Tampilan Menu Utama
Menu Utama tampil ketika aplikasi pertama kali dijalankan. Terdiri dari Login, Menu, Informasi dan Informasi Order. Tombol “Keluar“ digunakan untuk keluar dari aplikasi. Perancangan tampilan untuk offline Menu ini dapat dilihat pada Gambar 3.24 Berikut keterangan singkat mengenai menu-menu tersebut:
- Login, merupakan salah satu fungsi keamanan yang digunakan oleh user apabila user akan melakukan pemesanan makanan dan melihat informasi order, dengan cara memasukan kombinasi username dan password yang tepat.
- Menu, berfungsi untuk menampilkan rumah makan/restoran dan jenis-jenis makanan/minuman yang ditawarkan, serta user dapat melihat detail makanan/minuman tersebut melalui menu ini.
- Cari, berfungsi untuk mencari menu makanan atau minuman yang diinginkan user.
- Informasi, berfungsi unutuk menampilkan informasi-informasi mengenai rumah makan/restoran yang terdapat pada aplikasi ini.
ditampilkan adalah tanggal order, jam order dan detail order yang menjelaskan lebih detail tenteng order yang pernah dilakukan.
Gambar 3.24 Rancangan Tampilan Menu Utama.
3.9.2 Tampilan Menu User Login
Menu User Login (Gambar 3.25) akan muncul bila user memilih Login pada Menu Utama. Pada Login menu user harus memasukan username dan password dengan benar pada textfield yang tersedia agar dapat terhubung dengan server. Tombol “Login” berguna untuk mengirimkankan username dan password yang telah diinputkan ke server. Tombol “Kembali” untuk kembali ke Menu Utama. Login berfungsi untuk menghubungkan user dengan server agar user dapat melakukan pemesanan makanan dan melihat catatan order.
Gambar 3.25 Rancangan Tampilan Login. Menu Utama
Login Menu Cari Informasi Catatan Order
Pilih Keluar
User Login Logo
Username Password
[image:56.595.244.391.554.706.2]3.9.3 Tampilan Menu Jenis Produk
Menu Jenis Produk terdiri dari 2 form, yaitu form Pilih Restoran (Gambar 3.26) digunakan untuk memilih wilayah restoran tersebut berada dan nama restoran yang akan dipilih. Form Pilih Jenis Produk (Gambar 3.27) digunakan untuk memilih produk makanan atau minuman yang dapat diorder. Produk makanan dan minuman dikelompokan kedalam beberapa kriteria, yang terdapat pada list Pilih Kriteria., setiap kriteria memiliki produk-produk.
[image:57.595.93.502.291.696.2]
Gambar 3.26 Rancangan Tampilan Menu Jenis Produk (Form Pilih Restoran)
.
Gambar 3.27 Rancangan Tampilan Menu Jenis Produk (Form Produk) Pilih Kriteria :
Pilih Menu : Beef Burger Chicken Burger Original Chicken Fish Fillet French Fries Jenis Produk
Menu Kembali
Fast Food
1.Lihat Detail 2.Order Pilih Wilayah:
Pilih Restoran:
Pilih Restoran
Pilih Menu Kembali
Surabaya Utara
3.9.4 Tampilan Detil Produk
Menu Detail Produk (Gambar 3.28) digunakan untuk melihat lebih detail dari produk makanan atau minuman yang ditawarkan dan dapat dipilih serta dapat diorder. Menu Detail Produk ini terdiri atas gambar produk, nama produk, harga produk dan keterangan mengenai produk.
Gambar 3.28 Rancangan Tampilan Detil Produk.
3.9.5 Tampilan Menu Pemesanan
Menu Pemesanan (Gambar 3.29) digunakan untuk melengkapi data pemesanan, seperti: jumlah makanan atau minuman yang akan dipesan, tanggal pengiriman pesanan, waktu pengiriman pesanan, alamat tujuan pesanan, dan no.telp tujuan pesanan. Sebelum user dapat masuk ke Menu Pemesanan, user diharuskan untuk login terlebih dahulu. Pemesanan akan diteruskan ke Menu Konfirmasi Order apabila deposit yang dimiliki oleh user yang bersangkutan masih mencukupi untuk transaksi pada saat itu.
Detail Produk
Nama produk Harga produk Keterangan produk
===================
Nama produk Harga produk Keterangan produk
[image:58.595.94.503.221.545.2]=================== Gambar produk
Kembali
Gambar 3.29 Rancangan Tampilan Menu Pemesanan
3.9.6 Tampilan Menu Informasi Resto
Pada Menu Informasi terdapat 2 form, yaitu Form Pilih Restoran
(Gambar 3.30) yang digunakan untuk memilih nama restoran yang ingin diketahui informasinya, dan Form Informasi (Gambar 3.31) digunakan untuk menampilkan informasi singkat mengenai restoran yang bersangkutan, seperti alamat lokasi, no.telp, no.fax, info halal dan info layanan antar.
Form Pemesanan
Silakan lengkapi data pemesanan anda:
Nama produk @ Harga produk:
Tanggal Kirim: <date>
Waktu Kirim: <time> Alamat:
No. Telpon: Icon
Kembali
Jumlah item yg dipesan
Alamat pengiriman
No.Telpon pemesan
Gambar 3.30 Rancangan Tampilan Menu Informasi Restoran (Form Pilih Restoran)
.
Gambar 3.31 Rancangan Tampilan Menu Informasi Restoran (Form Informasi)
3.9.7 Tampilan Informasi Order
Pada Menu Informasi Order berisi tentang informasi singkat mengenai informasi order-order yang pernah dilakukan oleh kustomer yang bersangkutan. Dimulai dengan tampilanya form Informasi Order (Gambar 3.32) yang berfungsi
Pilih Wilayah: Pilih Restoran:
Pilih Restoran
Pilih Menu Kembali
Surabaya Utara
Lezatos
Menu Informasi Profil:
……… Lokasi: ………… No.Telp: ………
[image:60.595.93.501.314.546.2]sebagai menu pilihan untuk melihat detail order yang nantinya akan ditampilkan pada form Detail Order (Gambar 3.33)
Gambar 3.32 Rancangan Tampilan Informasi Order
Gambar 3.33 Rancangan Tampilan Informasi Detail Order Tanggal Order : 05/05/2009
Jam Order : 12:16
Tanggal Order : 10/05/2009 Jam Order : 17:03
Tanggal Order : 12/05/2009 Jam Order : 18:53
Informasi Order
Lihat Order Kembali
Detail Order Restoran : Lezatos
Tanggal Order : 05/05/2009 Waktu Order : 12:16
Tanggal Kirim: 10/05/2009 Order Kirim: 17:03
Produk yang dipesan: =>Beef Burger jumlah 3 Harga total : Rp 60.000,- Status : Processing
====================== Informasi Detail Order
49 4.1 Kebutuhan Sistem
Sebelum mengimplementasikan dan menjalankan aplikasi Sistem Pemesanan Makanan ini membutuhkan perangkat keras dan perangkat lunak dengan kondisi tertentu agar dapat berjalan dengan baik.
4.1.1 Kebutuhan perangkat keras
Aplikasi Sistem Pemesanan Makanan ini membutuhkan persyaratan minimal perangkat keras berupa handphone sebagai berikut:
1. Ukuran layar : 128 pixel × 128 pixel. 2. Konektifitas : GPRS.
3. Konfigurasi : MIDP 2.0 dan CLDC 1.1
Aplikasi Sistem Pemesanan Makanan ini juga membutuhkan persyaratan minimal perangkat keras berupa komputer sebagai berikut:
1. Prosessor 1,6 GHz. 2. Memory RAM 512 MB.
3. Kapasitas kosong pada harddisk 2 GB.
4.1.2 Kebutuhan perangkat lunak
Kebutuhan perangkat lunak yang digunakan untuk pengembangan aplikasi ini adalah:
3. J2ME WTK 2. 4. NetBeans 5.5.
5. Database MySQL 4.2. 6. PHP
7. PHP Expert Editor. 8. Internet Browser
4.2 Pembuatan Program
Program aplikasi Sistem Pemesanan Makanan dibuat dengan J2ME WTK 2 menggunakan text editor NetBeans 5.5. Penulisan kode program pada text editor disimpan dengan file berekstensi *.java. WTK 2 akan meng-compile file berekstensi *.java dan membuat package dari aplikasi Sistem Pemesanan Makanan berekstensi *.jad.
Tahap akhir pembuatan program adalah pembuatan file berekstensi *.jad dan *.jar sehingga aplikasi midlet siap di-deploy pada handphone. Dari hasil deploy ini, aplikasi dapat diuji coba fungsionalitasnya.
4.3 Implementasi Sistem
Untuk menjelaskan proses aplikasi Sistem Pemesanan Makanan ini dibutuhkan tampilan program sebagai berikut.
4.3.1 Tampilan Form Menu Utama
Gambar 4.1 Tampilan Form Menu Utama
Beberapa pilihan tersebut antara lain :
1. Login : menampilkan form login yang berguna untuk keamanan sistem dalam proses transaksi/order makanan dan proses informasi order.
2. Menu : menampilkan informasi produk-produk yang ditawarkan oleh restoran/rumah makan dan pemesanannya.
3. Cari : digunakan untuk mencari menu makanan atau minuman.
5. Informasi Order : menampilkan informasi mengenai order –order yang pernah dilakukan oleh user yang bersangkutan.
4.3.2 Tampilan Form Menu Login
Pada Gambar 4.2. menunjukkan menu login Sistem Pemesanan Makanan dimana user memasukkan username dan password. Terdapat tombol “Login” untuk menampilkan menu selanjutnya. Bila username dan passwordnya tepat maka menu selanjutnya bisa tampil. Tombol “Kembali” untuk kembali ke Menu Utama.
[image:65.595.91.501.318.619.2]
Gambar 4.2 Tampilan Form Menu Login
4.3.3 Tampilan Form Menu
Pilih Restoran (Gambar 4.3) pada form ini user dapat memilih wilayah restoran dan nama restoran yang menawarkan produk-produknya agar dapat dipesan.
Gambar 4.3 Tampilan Form Menu Pilih Restoran
[image:66.595.96.495.127.743.2]Setelah memilih wilayah restoran berada dan nama restoran, user dapat menekan tombol “Pilih Menu”, yang akan menampilkan Form Jenis Produk (Gambar 4.4). Pada form ini user dapat memilih produk berdasarkan pada kriteria yang ada dan dapat memilih beberapa produk yang ditawarkan sekaligus.
4.3.4 Tampilan Form Detail Produk
[image:67.595.95.507.219.544.2]Form Detail Produk (Gambar 4.5) ini menampilkan detail informasi produk-produk yang ditawarkan oleh restoran/rumah makan. Informasi yang ditampilkan adalah gambar, nama, harga dan keterangan singkat tentang produk tersebut.
Gambar 4.5 Tampilan Form Detail Produk
4.3.5 Tampilan Form Pemesanan
transaksi pada saat itu, sisa deposit minimal agar user dapat melakukan transaksi adalah Rp.50.000,- (lima puluh ribu rupiah).
Gambar 4.6 Tampilan Form Pemesanan
4.3.6 Tampilan Form Menu Cari
Gambar 4.7 Tampilan Form Pencarian
Gambar 4.8 Tampilan Form Hasil Pencarian
4.3.7 Tampilan Form Menu Informasi Restoran
[image:69.595.91.506.315.526.2]nama, wilayah alamat lokasi, no.telp, no.fax, info halal dan info layanan antar restoran.
Gambar 4.9 Tampilan Form Informasi Restoran
Gambar 4.10 Tampilan Form Detail Restoran
4.3.8 Tampilan Form Menu Informasi Order
Gambar 4.12 menampilkan detail informasi order yang pernah dilakukan oleh user yang bersangkutan.
[image:71.595.93.505.227.535.2]Gambar 4.11 Tampilan Menu Informasi Order
Gambar 4.12 Tampilan Menu Informasi Detail Order
4.3.9 Tampilan Form Login Maintenance Data
Maintenance Data akan tampil. Tombol “Cancel” untuk membatalkan proses login.
Gambar 4.13 Tampilan Form Login Maintenance Data
4.3.10 Tampilan Form Maintenance Data Restoran
Gambar 4.14 merupakan Form Maintenance Data yang digunakan untuk melakukan proses maintenance data yanag ada pada server.
4.4 Evaluasi Sistem
Setelah dilakukan proses implementasi aplikasi Sistem Pemesanan Makanan, proses selanjutnya adalah evaluasi dengan tujuan mengetahui bahwa aplikasi yang dibuat telah sesuai dan dapat menyelesaikan permasalahan yang dihadapi. Evaluasi dilakukan pada 4 jenis handphone yang berbeda untuk mengetahui keseluruhan fungsionalitas aplikasi untuk masing-masing jenis handphone, dan evaluasi untuk mengetahui waktu akses masing-masing fungsionalitas melalui 4 operator GSM yang berbeda.
4.4.1 Uji Coba Fungsionalitas Aplikasi
Tujuan dari uji coba fungsionalitas aplikasi ini adalah untuk mengetahui apakah fungsi-fungsi pada aplikasi ini dapat berjalan dengan baik sesuai dengan yang diharapkan. Fungsionalitas yang diuji meliputi:
1. Proses Login. 2. Pilih Restoran.
3. Pilih dan Lihat Detail Produk. 4. Order.
5. Informasi Restoran. 6. Lihat Info Restoran. 7. Informasi Order.
Proses
SE K608
SE K800i
Nokia N70
Motorla L7
1
Ok
Ok
Ok
Ok
2
Ok
Ok
Ok
Ok
3
Ok
Ok
Ok
Ok
4
Ok
Ok
Ok
Ok
5
Ok
Ok
Ok
Ok
6
Ok
Ok
Ok
Ok
7
Ok
Ok
Ok
Ok
Spesifikasi
SE K608
SE K800i
Nokia N70
Motorola L7
Platform
MIDP 2.0
MIDP 2.0
MIDP 2.0
MIDP 2.0
Konfigurasi
CLCD 1.1
CLCD 1.1
CLCD 1.1
CLCD 1.1
Max Jar Size
Dynamic
Dynamic
Dynamic
[image:74.595.85.515.114.602.2]-Screen Size
176 x 220
240 x 320
176 x 208
176 x 220
Tabel 4.1 Spesifikasi handphone
Hasil uji coba fungsionalitas aplikasi untuk masing-masing handphone dapat dilihat pada tabel berikut ini.
Tabel 4.2 Hasil uji coba fungsionalitas
4.4.2 Uji Coba Waktu Akses
06.00 - 11.59 12.00 - 17.59 18.00 - 23.59 00.00 - 05.59
1 4 5 5 4
2 5 6 6 5
3 4 5 5 4
4 9 11 11 9
5 2 2 2 2
6 2 2 2 2
7 4 5 5 4
Waktu Jenis
Proses
06.00 - 11.59 12.00 - 17.59 18.00 - 23.59 00.00 - 05.59
1 4 5 5 4
2 6 6 6 6
3 5 5 5 5
4 10 10 10 10
5 4 5 4 4
6 2 3 2 2
7 4 5 5 4
Waktu Jenis
Proses 1.Proses Login. 2. Pilih Restoran.
3. Pilih dan Lihat Detail Produk. 4.Order.
5.Informasi Restoran. 6.Lihat Info Restoran. 7.Informasi Order.
Waktu yang diperlukan untuk melakukan proses akses server dapat dilihat pada Tabel 4.3, Tabel 4.4, Tabel 4.5 dan Tabel 4.6.
[image:75.595.90.508.303.534.2]Tabel 4.3. Tabel uji coba waktu akses dengan menggunakan GPRS IM3 (dalam satuan detik)
06.00 - 11.59 12.00 - 17.59 18.00 - 23.59 00.00 - 05.59
1 5 5 5 4
2 6 6 6 4
3 4 4 5 5
4 10 10 10 9
5 4 4 4 3
6 3 3 3 3
7 4 4 4 4
Waktu Jenis
Proses
06.00 - 11.59 12.00 - 17.59 18.00 - 23.59 00.00 - 05.59
1 4 5 5 4
2 5 6 6 5
3 4 5 5 4
4 9 10 10 9
5 4 4 5 4
6 2 3 3 2
7 4 4 4 4
Waktu Jenis
[image:76.595.88.504.306.534.2]Proses
Tabel 4.5. Tabel uji coba waktu akses dengan menggunakan GPRS XL (dalam satuan detik)
Tabel 4.6. Tabel uji coba waktu akses dengan menggunakan GPRS Axis (dalam satuan detik)
.
4.5 Analisa Program
4.5.1 Kemampuan Program
Kemampuan program aplikasi Sistem Pemesanan Makanan berbasis J2ME ini adalah :
2. Biaya pulsa untuk mengakses informasi dari server menggunakan GPRS lebih murah bila dibandingkan dengan menggunakan sms gateway atau wap.
3. Akses informasi yang cepat dan bisa diakses dari semua daerah yang berada dalam jangkauan jaringan provider.
4.5.2 Kelemahan Program
Program aplikasi Sistem Pemesanan Makanan berbasis J2ME juga memiliki kelemahan. Kelemahan program aplikasi ini antara lain :
1. Bergantung penuh dengan server yang ada serta membutuhkan jaringan atau infrastruktur yang mendukung.
65 5.1 Kesimpulan
Kesimpulan yang dapat diambil dari hasil pembuatan program aplikasi ini adalah:
1. Sistem Pemesanan Makanan Berbasis J2ME ini dapat terkoneksi dengan baik dengan client dalam menjalankan aplikasi.
Agar aplikasi Sistem Pemesanan Makanan Berbasis J2ME ini berjalan dengan lancar diperlukan adanya infrastruktur dari operator penyedia layanan seluler yang dapat mendukung transfer data dengan cepat dan stabil
2. Aplikasi ini dapat melayani pemesanan makanan. Aplikasi ini dapat dijadikan alternatif lain untuk menampilkan menu makanan selain menu makanan yang berupa cetak atau hard-copy. Aplikasi ini mampu menampilkan informasi yang berkaitan dengan rumah makan yang menerapkan sistem ini. Aplikasi ini mampu menampilkan catatan pesanan yang pernah dilakukan oleh pelanggan.
5.2 Saran
Saran-saran yang direkomendasikan untuk pengembangan dan implementasi aplikasi MIDlet pada umumnya dan aplikasi Sistem Pemesanan Makanan berbasis J2ME pada khususnya adalah :
66
DAFTAR PUSTAKA
Boggs, Wendy & Boggs, Michael. 2002. Mastering UML with Rational Rose 2002. Sybex Inc. California.
Dinas Pariwisata Kota Surabaya. (2008) “Daftar Rumah Makan Surabaya – 2008”, www.surabaya.go.id (diakses 12 Januari 2009).
Keogh, James. 2003. J2ME: The Complete Reference. McGraw-Hill/Osborne. California.
Kinantra, Maria. 2004. Perancangan dan pembuatan integrated food ordering software untuk meningkatkan kualitas layanan Rumah Makan "X". Skripsi tidak diterbitkan. Surabaya: Universitas Kristen Petra.
Mahendra, Filo Adi Cahya. 2008. Sistem Pemesanan Makanan Otomatis Pada Rumah Makan Berbasis Mikrokontroler AT89S51. Skripsi tidak diterbitkan. Surakarta: Universitas Muhammadiyah Surakarta.
Nirmala, Dewi. 2004. Perancangan dan pembuatan integrated transactional restaurant information system untuk Mango Terrace Resto. Skripsi tidak diterbitkan. . Surabaya: Universitas Kristen Petra.
Soeherman, B. & Pinontoan, M. 2008. Designing Information System. PT. Elex Media Komputindo. Jakarta.
Welling, Luke & Thomson, Laura. 2001. PHP and MySQL Web Development. Sams Publishing. Indianapolis.