1 BAB III PERANCANGAN SISTEM 3.1 Arsitektur Aplikasi Tugas Akhir ini merupakan rancang bangun sistem (proyek). Rancang bangun sistem ini digunakan unt...
3.1 Arsitektur 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).
Dari Gambar 3.1 dapat dijelaskan sistem yang dibangun menampilkan informasi makanan, minuman, informasi tentang rumah makan dan pemesanan makanan yang ditujukan kepada pihak kustomer yang menggunakan perangkat
13
14
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.2 Usecase Diagram Sistem Pemesanan Makanan Pada use case diagram aplikasi ini (Gambar 3.2) terdapat 3 aktor, yaitu aktor Customer, aktor Administrator dan aktor AdminRumahMakan. Setiap aktor memiliki kemampuan yang berbeda. Aktor Customer memiliki kemampuan untuk melihat menu informasi restoran (ShowInfoResto), menu history pemesanan makanan
yang
pernah
dilakukan
actor
customer
yang
bersangkutan
(ShowOrderHistory), menu makanan dan minuman (ShowFoodMenus), menu detil produk yang menampilkan mengenai detail makanan dan minuman yang ditawarkan, menu order makanan dan minuman (OrderFood), mencari menu
15
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).
ShowInfoResto
ShowOrderHis tory
(from Use Cases) (from Use Cases)
LoginCustomer (from Use Cases)
<>
<<extend>> OrderFood (from Use Cases)
Customer (f rom Ac tors )
ShowFoodMenus (from Use Cases)
<<extend>>
<<extend>>
Registras iCus tomer
ShowDetailFood SearchMenu
(from Use Cases)
(from Use Cases)
MaintenanceInfoRes to MaintenanceProduk
(from Use Cases)
(from Use Cases)
MaintenanceCustomer (from Use Cases)
AdminResto MaintenanceUserResto
(f rom Ac tors )
(from Use Cases)
Administrator
MaintenanceOrder
(f rom Ac tors )
(from Use Cases)
Gambar 3.2 Usecase Diagram Sistem Pemesanan Makanan
Registras iRes to (from Use Cases)
16
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 orderorder yang pernah dilakukan pada sistem pemesanan makanan. ShowFoodMenus digunakan
untuk
ShowDetailFood
menampilkan digunakan
menu-menu
untuk
makanan
melihat
yang
rincian/detail
ditawarkan. 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.3 Activity 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 Pada Gambar 3.3 ditunjukan activity diagram LoginCustomer oleh aktor Customer, dengan dimulai memilih menu Login pada sistem, sistem akan menampilkan form Login, kemudian user dapat meng-input-kan username dan password-nya, apabila username dan password yang diinputkan tidak valid maka
17
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. Mulai Pilih menu Login Tampil form Login
Input Username
Input Password
Cek validasi data login
[ Tidak valid ]
[ Valid ] Selesai
Gambar 3.3 Activity Diagram LoginCustomer
3.3.2 Activity Diagram ShowInfoResto Pada Gambar 3.4 ditunjukan activity diagram ShowInfoResto oleh aktor Customer, dengan dimulai memilih menu Informasi pada sistem, sistem akan menampilkan form Informasi Restoran, kemudian user dapat meng-input-kan wilayah restoran, meng-input-kan restoran, kemudian dapat user memilih menu Lihat Info untuk menampilkan info restoran yang telah dipilh.
18
Mulai
Pilih menu Informasi
Tampil Form Informasi Restoran
Input wilayah restoran
Input restoran
Pilih menu Lihat Info Tampil form Info Restoran
Selesai
Gambar 3.4 Activity Diagram ShowInfoResto
3.3.3 Activity Diagram ShowFoodMenu Pada Gambar 3.5 ditunjukan activity diagram ShowFoodMenu oleh aktor Customer, dengan dimulai memilih Menu pada sistem, sistem akan menampilkan form Pilih Restoran, kemudian user dapat meng-input-kan wilayah restoran, meng-input-kan restoran, kemudian sistem akan menampilkan form Jenis Produk yang berisi produk-produk.
19
Mulai
Pilih Menu
Tampil form Pilih Restoran
Input wilayah restoran Input restoran
Tampil form Jenis Produk
Selesai
Gambar 3.5 Activity Diagram ShowFoodMenu
3.3.4 Activity Diagram ShowDetailFood Pada Gambar 3.6 ditunjukan activity diagram ShowDetailFood oleh aktor Customer, dengan dimulai memilih Menu pada sistem, sistem akan menampilkan form Pilih Restoran, kemudian user dapat meng-input-kan wilayah restoran, meng-input-kan restoran, kemudian sistem akan menampilkan form Jenis Produk, user dapat meng-input-kan kriteria produk, user dapat meng-input-kan produk yang ingin dipilih, kemudian user memilih menu Lihat Detail, sistem akan menampilkan form Detail Produk yang berisi keterangan/detail produk yang telah dipilih.
20
Mulai
Pilih Menu
Tampil Form Pilih Restoran Input wilayah restoran Input restoran
Tampil form Jenis Produk Input kriteria produk Input produk
Pilih menu Lihat Detail Tampil menu Detail Produk
Selesai
Gambar 3.6 Activity Diagram ShowDetailFood
3.3.5 Activity Diagram OrderFood Pada Gambar 3.7 ditunjukan activity diagram OrderFood oleh aktor Customer, dengan dimulai memilih Menu pada sistem, sistem akan menampilkan form Pilih Restoran, kemudian user dapat meng-input-kan wilayah restoran, meng-input-kan restoran, kemudian sistem akan menampilkan form Jenis Produk, kemudian user dapat meng-input-kan kriteria produk, kemudian user dapat menginput-kan produk yang ingin dipilih, kemudian user memilih menu Order, sistem akan mengecek apakah user sudah login kesistem, apabila belum maka sistem
21
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. Mulai Pilih Menu
Tampil form piih menu Input Wilayah Res toran Input Res toran
Tampil Form Jenis Produk Input Kriteria Produk Input Produk
Pilih Menu Order Cek Login Cus tom er Tampilkan Form Login
[belum ]
[s udah]
Input username dan pas s word Cek validas i data
[tidak valid]
[valid]
Tampil Form Pemes anan Is i Data Pemes anan Pilih Menu Kirim Order
[tidak valid]
Cek validas i data pemes anan
[valid]
Gambar 3.7 Activity Diagram OrderFood
22
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 m enu Catatan Order
Cek login customer
Tampilkan Form login
[ belum ]
Input username dan password [sudah]
Cek validasi data login
[ tidak valid ]
[valid]
Tampil form Informasi Order
Input tanggal dan jam order Pilih m enu Lihat Order
Tampil form Detail Order
Selesai
Gambar 3.8 Activity Diagram ShowOrderHistory
23
3.3.7 Activity Diagram SearchMenu 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. Mulai Pilih Menu Cari
Tampil Form Cari Inputkan Menu yang dicari Tampil hasil yang dicari Selesai
Gambar 3.9 Activity Diagram SearchMenu
3.3.8 Activity Diagram MaintenanceOrder Pada Gambar 3.10 ditunjukan activity diagram MaitenanceOrder oleh aktor AdminRumahMakan, dengan dimulai melakukan Login kedalam sistem, dengan menginputkan username dan password, sistem akan mengecek username dan password yang diinputkan, apabila tidak valid maka AdminRumahMakan 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 order,
24
dalam menu tersebut AdminRumahMakan dapat melakukan hapus data order, menerima order dan kemudian menyimpannya. Mulai
Pilih m enu Login
Tampilkan Form Login Input us ername dan pas s word
Cek validas i data login [ Tidak valid ] [ Valid ] Maintenance data order
Menerima order
Hapus data order
Meres pons order
Kirim order
Sim pan data order
Seles ai
Gambar 3.10 Activity Diagram MaintenanceOrder
3.3.9 Activity Diagram MaintenanceUserResto Pada Gambar 3.11 ditunjukan activity diagram MaitenanceUserResto oleh aktor Administrator, dengan dimulai melakukan Login kedalam sistem, dengan menginputkan username dan password, sistem akan mengecek username dan password yang diinputkan, apabila tidak valid maka Administrator tidak dapat masuk kedalam sistem dan harus melakukan login ulang. Apabila username dan password yang diinputkan valid maka Administrator akan terhubung dengan
25
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. Mulai
Pilih menu Login
Tampilkan Form Login
Input us ername dan pas s word
Cek validas i data login
[ Tidak valid ] [ Valid ] Maintenance data res to [ Edit data ]
[ Tambah data ]
Edit data res to
Tambah data res to
Sim pan data res to
Seles ai
Gambar 3.11 Activity Diagram MaintenanceUserResto
3.3.10 Activity Diagram MaintenanceCustomer Pada Gambar 3.12 ditunjukan activity diagram MaitenanceCustomer oleh aktor Administrator, dengan dimulai melakukan Login kedalam sistem, dengan menginputkan username dan password, sistem akan mengecek username dan password yang diinputkan, apabila tidak valid maka Administrator tidak dapat masuk kedalam sistem dan harus melakukan login ulang. Apabila username dan
26
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. Mulai
Login
Tampilkan Form Login
Input us ername dan pas s word
Cek validas i data login
[ Tidak valid ] [ Valid ] Maintenance data us er
[ Tambah data ]
Edit data us er [ Edit data ]
Tambah data us er
Sim pan data us er
Selesai
Gambar 3.12 Activity Diagram MaintenanceCustomer
3.3.11 Activity Diagram MaintenanceProduk Pada Gambar 3.13 ditunjukan activity diagram MaitenanceProduk oleh aktor AdminRumahMakan, dengan dimulai melakukan Login kedalam sistem, dengan menginputkan username dan password, sistem akan mengecek username dan password yang diinputkan, apabila tidak valid maka AdminRumahMakan
27
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. Mulai
Pilih m enu Login
Tam pilkan Form Login Input us ernam e dan pas s word
Cek validas i data login [ Tidak valid ] [ Valid ] Maintenance data order
Menerim a order
Hapus data order
Meres pons order
Kirim order
Sim pan data order
Seles ai
Gambar 3.13 Activity Diagram MaintenanceProduk
3.3.12 Activity Diagram RegistrasiUser Pada Gambar 3.14 ditunjukan activity diagram RegistrasiUser oleh aktor Administrator dan Customer, diawali oleh customer meminta formulir pada administrator, administrator memberikan seberkas formulir yang dapat diisi oleh
28
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 Pada Gambar 3.15 ditunjukan activity diagram RegistrasiResto oleh aktor Administrator dan AdminRumahMakan, diawali oleh AdminRumahMakan meminta formulir pada Administrator,
Administrator memberikan seberkas
29
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.4 Class Diagram Sistem Pemesanan Makanan Berdasarkan perencanaan sistem pada usecase diagram, dibutuhkan class-class untuk membangun dan mendukung jalannya aplikasi. Hubungan antar class-class tersebut terdapat pada Gambar 3.16 berikut ini.
30
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
FormTrans aks i MyStringTokenizer MyHttpConnection
FormTrans aks i() s etAwal() buatIcon() run() ins ertOrder() cekDepos it() formKonfirm as i() getNota() alertTes ting() getWaktuAndTanggalNow() getWaktuAndTanggalOrder() commandAction()
Progress Bar
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()
-frmKriteria
-pgr -frmLogin
-frmInfoOrder DriveThru
-am bl
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
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()
-frm Login
-ambl
-frmInfoResto FormMenuAwal
-pgr 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
Form Login -pgr
-ambl
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()
-pgr -frmOrder
-frmLogin
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
Gambar 3.16 Class Diagram pada Sistem Pemesanan Makanan.
3.5 Sequence Diagram Sistem Pemesanan Makanan Untuk menjelaskan tiap usecase berdasarkan pada usecase diagram diatas, maka dibutuhkan sequence diagram yang menggambarkan jalannya suatu
31
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 Struktur dari sequence diagram Usecase LoginCustomer dapat dilihat pada Gambar 3.17 sebagai berikut :
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. Struktur dari sequence diagram Usecase OrderFoods dapat dilihat pada Gambar 3.18 sebagai berikut :
33
Gambar 3.18 Sequence Diagram OrderFoods
34
3.5.3 Sequence Diagram ShowFoodMenus Sequence Diagram ShowFoodMenus dapat dilihat pada Gambar 3.19 berikut ini:
3.6 Component Diagram Sistem Pemesanan Makanan Diagram komponen adalah suatu diagram yang menampilkan komponenkomponen dalam sistem dan hubungan antara mereka. Dependensi komponen menunjukkan urutan komponen-komponen untuk proses compiling. Diagram komponen pada aplikasi ini dapat dilihat pada gambar berikut ini: MyHttpConnection
io
AmbilData
FormLogin
lcdui
DriveThru MyStringTokenizer
FormMenuAwal
FormInfoResto
FormPilihResto
midlet FormInformasiOrder FormTransaksi
ProgressBar
Gambar 3.22 Component Diagram Sistem Pemesanan Makanan
38
3.7 Deployment Diagram Sistem Pemesanan Makanan Deployment diagram menggambarkan detil bagaimana komponen dideploy 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.
<SPM Web Server> HTTP WebServer
<SPM Database Server> MySQL Databas e Server
<> Komputer Adm in Rum ah Makan
<>
<Mobile Device> Handphone Kustomer
Gambar 3.23 Deployment Diagram
Seperti yang digambarkan Gambar 3.23 diatas, sistem ini menggunakan beberapa perangkat keras sebagai pendukung agar sistem dapat berjalan dengan baik, yaitu sebuah komputer desktop bagi administrator rumah makan (PC Admin) yang digunakan oleh aktor administrator untuk melakukan maintenance sistem, sebuah web server (SPM Web server) yang digunakan untuk menyimpan script web programing bagi pendukung kelangsungan berjalannya sistem, sebuah MySQL database server (SPM Database Server) yang digunakan untuk menyimpan database bagi pendukung kelangsungan berjalannya sistem, dan seperangkat mobile devices yang digunakan oleh kustomer untuk mengakses sistem. Semua perangkat keras tersebut saling terhubung melalui jaringan internet dan GPRS.
39
3.8 Struktur Tabel Tabel-tabel yang digunakan untuk menyimpan data di desain seperti berikut ini: 1. Nama Tabel Fungsi
:
userresto
:
Untuk menyimpan data user restoran / rumah makan yang dapat login kedalam sistem.
Tabel 3.1 Struktur tabel userresto Nama Kolom
Tipe
Ukuran
id_resto
varchar
10
username
varchar
10
password
varchar
10
2. Nama Tabel Fungsi
Keterangan Primary Key. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
:
useradmin
:
Untuk menyimpan data user administrator.
Tabel 3.2 Struktur tabel useradmin. Nama Kolom
Tipe
Ukuran
username
varchar
10
password
varchar
10
Keterangan Primary Key
40
3. Nama Tabel Fungsi
:
user
:
Untuk menyimpan data customer.
Tabel 3.3 Struktur tabel user. Nama Kolom
Tipe
Ukuran
username
varchar
10
password
varchar
10
nama
varchar
30
alamat
varchar
50
no_telp
varchar
12
no_ktp
varchar
25
deposit
integer
12
4. Nama Tabel
:
produk
:
Untuk menyimpan data produk.
Fungsi
Keterangan Primary Key
Tabel 3.4 Struktur tabel produk.
Nama Kolom
Tipe
Ukuran
id_resto
varchar
10
id_produk
varchar
10
nama_produk
varchar
50
jenis
varchar
10
harga
integer
10
keterangan
text
Keterangan Foreign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran. Primary key. No. identitas produk. Format XXZZ. - XX adalah id produk. - ZZ adalah nomer produk.
Berisi deskripsi produk
41
5. Nama Tabel Fungsi
:
info_resto
:
Untuk menyimpan data informasi restoran.
Tabel 3.5 Struktur tabel info_resto.
Nama Kolom
Tipe
Ukuran
id_resto
varchar
10
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
6. Nama Tabel Fungsi
Keterangan Forign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
20
:
detil_transaksi
:
Untuk menyimpan data detil transaksi.
42
Tabel 3.6 Struktur tabel detil_transaksi. Nama Kolom
Tipe
Ukuran
no_nota
varchar
10
id_produk
varchar
10
jumlah
varchar
5
harga
varchar
10
:
transaksi
:
Untuk menyimpan data transaksi.
7. Nama Tabel Fungsi
Keterangan Foreign Key tabel transaksi Foreign Key tabel produk. No. identitas produk. Format XXZZ. - XX adalah id produk. ZZ adalah nomer urut produk.
Tabel 3.7 Struktur tabel transaksi. Nama Kolom no_nota
Tipe
Ukuran
varchar
10
Primary Key. Foreign Key tabel userresto. No. identitas restoran. Format XXXZZ. - XXX adalah id rumah makan/ restoran. - ZZ adalah nomer urut rumah makan/ restoran.
id_resto
varchar
10
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
Keterangan
-
43
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 jenisjenis 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.
-
Informasi order, berfungsi untuk menampilkan informasi mengenai orderorder yang pernah dilakukan oleh user yang bersangkutan, informasi yang
44
ditampilkan adalah tanggal order, jam order dan detail order yang menjelaskan lebih detail tenteng order yang pernah dilakukan. Menu Utama Login Menu Cari Informasi Catatan Order Keluar
Pilih
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. User Login Logo Username Password
Kembali
Login
Gambar 3.25 Rancangan Tampilan Login.
45
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.
Pilih Restoran Pilih Wilayah:
Surabaya Utara
Pilih Restoran:
Lezatos
Kembali
Pilih Menu
Gambar 3.26 Rancangan Tampilan Menu Jenis Produk (Form Pilih Restoran)
Jenis Produk . Fast Food Pilih Kriteria : Pilih Menu : Beef Burger Chicken Burger Original Chicken Fish Fillet French Fries 1.Lihat Detail 2.Order Kembali
Menu
Gambar 3.27 Rancangan Tampilan Menu Jenis Produk (Form Produk)
46
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. Detail Produk Gambar produk Nama produk Harga produk Keterangan produk =================== Gambar produk Nama produk Harga produk Keterangan produk =================== Kembali 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.
47
Form Pemesanan Icon Silakan lengkapi data pemesanan anda: Nama produk @ Harga produk: Jumlah item yg dipesan