7
BAB 2
TINJAUAN PUSTAKA
2.1.
Teori Umum
Teori-teori umum yang digunakan dalam penelitian ini yaitu:
2.1.1.
Restoran
Restoran berasal dari kata restaurer
(Perancis) yang berarti restore
atau restorasi yang dalam Bahasa Indonesia berarti memperbaiki atau
memulihkan. Restoran adalah suatu tempat yang menyediakan makanan
dan atau minuman dan memungut bayaran (for-profit food service), yang
juga mencakup rumah makan, bar, kafetaria, catering dan yang termasuk
jasa boga lainnya (Ninemeir & Hayes, 2006: 2).
Dilihat dari pengelolaan dan system penyajian, Narim (2011:1)
menjelaskan restoran dapat dibedakan menjadi beberapa tipe:
1.
Ala Carte restaurant
Adalah restoran yang telah mendapat izin penuh untuk menjual
makanan lengkap dengan banyak variasi, tamu bebas memilih sendiri
makanan yang mereka inginkan. Tiap makanan dalam restoran ini
memiliki tarif sendiri-sendiri.
2.
Table Dhote restaurant
Adalah restoran yang khusus menjual satu susunan menu yang
lengkap (hidangan pembuka sampai hidangan penutup) dan tertentu,
dengan harga yang telah ditentukan pula.
3.
Coffee shop atau Brasseire
Adalah restoran yang pada umumnya berhubungan dengan hotel, tamu
bisa mendapatkan makan pagi, makan siang, dan makan malam secara
cepat dengan harga yang pantas. Pada umumnya sistem pelayanannya
adalah American service
dimana yang diutamakan adalah
kecepatannya, ready on plate service, artinya makanan sudah diatur
dan disiapkan diatas piring. Kadang-kadang penyajiannya juga
dilakukan dengan buffet prasmanan.
|
8
4.
Café
Adalah suatu restoran kecil yang mengutamakan penjualan kue,
sandwich
(roti isi), kopi dan teh. Pilihan makanan terbatas dan tidak
menjual minuman beralkohol.
5.
Canteen
Adalah restoran yang berhubungan dengan kantor, pabrik atau
sekolah, tempat para pekerja dan pelajar bisa mendapatkan makan
siang dan
coffee
break, yaitu minum kopi disertai makanan kecil
untuk selingan jam kerja, jam belajar ataupun dalam acara rapat dan
seminar.
6.
Continental Restaurant
Adalah suatu restoran yang menitik beratkan hidangan continental
pilihan dengan pelayanan megah, bersuasana santai, susunannya agak
rumit, dan disediakan bagi tamu yang ingin makan secara santai dan
rileks.
7.
Carvery
Adalah restoran yang sering berhubungan dengan hotel dimana para
tamu dapat mengiris sendiri hidangan panggang sebanyak yang
mereka inginkan dengan harga yang telah ditetapkan.
8.
Dining room
Dining room yang terdapat di hotel kecil seperti motel atau inn,
merupakan tempat yang lebih ekonomis daripada tempat makan biasa.
Dining room pada dasarnya disediakan untuk para tamu yang tinggal
di hotel yang bersangkutan, namun juga menerima tamu dari luar.
9.
Discotheque
Adalah restoran yang pada prinsipnya berarti juga tempat dansa
sambil mendengarkan alunan musik, juga menampilkan live band. Bar
adalah salah satu fasilitas utama dalam seduah diskotik, hidangan
yang tersedia umumnya berupa snack.
10.
Fish and Chip Shop
Adalah restoran yang banyak terdapat di Inggris. Pengunjung dapat
membeli bermacam-macam keripik dan ikan goring, biasanya berupa
ikan cod, dibungkus dalam kertas dan dibawa pergi. Makanannya
tidak dinikmati ditempat tersebut.
|
9
11.
Grill Room
Adalah restoran yang menyediakan bermacam-macam daging
panggang. Pada umumnya antara restoran dengan dapur dibatasi oleh
sekat dinding kaca sehingga para tamu dapat memilih sendiri
potongan daging yang dikehendaki dan melihat sendiri proses
memasaknya. Grill
room
kadang-kadang disebut juga dengan steak
house.
12.
Inn Tavern
Adalah restoran dengan harga cukup yang dikelola oleh perorangan di
tepi kota. Suasananya dibuat sangat dekat dan ramah dengan tamu-
tamu, sedangkan hidangannya pun lezat-lezat.
13.
Night Club atau Super Club
Adalah restoran yang pada umumnya mulai dibuka menjelang larut
malam, menyediakan makan malam bagi tamu-tamu yang ingin
santai. Dekorasinya megah dan
pelayanannya mewah. Band
merupakan kelengkapan yang diperlukan. Para tamu dituntut
berpakaian resmi dan rapi sehingga menaikkan gengsi tempat itu.
14.
Pizzeria
Adalah restoran yang khusus menjual pizza. Makanan lain berupa
spaghetti dan makanan khas Italia yang lain.
15.
Pan Cake House
Suatu restoran yang khusus
menjual pan
cake
dan crepe
yang diisi
berbagai macam manisan didalamnya.
16.
Pub
Pada umumnya merupakan tempat hiburan umum yang mendapat izin
untuk menjual minuman beralkohol dan bir. Para tamu mendapatkan
minumannya dari counter
dan dapat dinikmati dengan
berdiri atau
duduk. Hidangan yang disediakan berupa snack dan sandwich.
|
10
17.
Snack Bar atau Café /atau Milk bar
Adalah semacam restoran yang sifatnya tidak resmi dengan pelayanan
cepat, dimana para tamu mengumpulkan makanannya diatas baki
yang diambil dari meja counter makanan dan kemudian membawanya
ke meja makan. Para tamu bebas memilih makanan yang disukainya
seperti hamburger, sausages, dan sandwich.
18.
Specially restaurant
Adalah restoran yang suasana dan dekorasinya disesuaikan dengan
tipe makanan khas yang disediakan. Restoran ini menyediakan
masakan Cina, Jepang, India, Italia dan sebagainya. Pelayanannya
sedikit banyak berdasarkan tata cara negara tempat asal makanan
spesial itu.
19.
Terrace restaurant
Adalah restoran
yang terletak diluar bangunan, namun masih
berhubungan dengan ruangan induknya. Di negara-negara barat pada
umumnya restoran tersebut hanya buka pada musim panas saja.
20.
Gourmet restaurant
Adalah restoran yang menyelenggarakan pelayanan makan dan
minum bagi orang- orang yang berpengalaman luas dalam bidang rasa
makanan dan minuman. Keistimewaan restoran ini adalah
makanannya yang lezat, pelayanan yang mewah dan harganya cukup
mahal.
21.
Family tipe restaurant
Adalah restoran sederhana yang menghidangkan makanan dan
minuman bagi tamu-
tamu keluarga atau rombongan dengan harga
yang terjangkau.
22.
Main Dining room
Adalah ruang makan utama restoran yang pada umumnya terdapat di
hotel-hotel besar, dimana penyajian makanannya secara resmi, pelan
namun terikat oleh peraturan yang ketat. Servisnya bisa menggunakan
pelayanan ala Perancis atau Rusia. Tamu-
tamu yang hadir pada
umumnya berpakaian resmi dan formal.
|
11
2.1.2.
Layanan
Menurut Gronroos (dalam Ratminto
dan Septiwinarsi, 2005:2),
pelayanan adalah suatu aktivitas atau serangkaian aktivitas yang bersifat
tidak kasat mata atau tidak dapat diraba dan
terjadi sebagai akibat adanya
interaksi antar konsumen dengan karyawan atau hal-hal lain yang
disediakan oleh organisasi pemberi pelayanan
untuk memecahkan
permasalahan konsumen atau pelanggan.
Menurut Sinambela (2006:5), pelayanan adalah setiap kegiatan yang
menguntungkan dalam suatu kumpulan atau kesatuan, dan menawarkan
kepuasan meskipun hasilnya tidak terkait pada suatu produk secara fisik.
Menurut Napitupulu (2007:164), pelayanan adalah serangkaian
kegiatan suatu proses pemenuhan kebutuhan orang lain secara lebih
memuaskan berupa produk jasa dengan sejumlah ciri seperti tidak terwujud ,
cepat hilang, lebih dapat dirasakan daripada memilki, dan pelanggan lebih
dapat berpartisispasi aktif dalam proses mengkonsumsi jasa tersebut.
Prosedur pelayanan pada restoran merupakan kegiatan operasional
sebelum restoran dibuka sampai restoran ditutup. Kegiatan ini meliputi
semua usaha petugas restoran dalam memberikan pelayanan kepada tamu,
baik persiapan tamu datang sampai tamu meninggalkan restoran. Untuk
menunjang keberhasilan dalam melaksanakan tugas seorang pegawai
restoran harus mengetahui dan memahami prosedur kerja pada saat
pelayanan makanan dan minuman berlangsung (Almarogi, 2013).
Keberhasilan selama restoran beroperasi
tergantung bagaimana
petugas restoran dapat melaksanakan pekerjaan dengan baik. Pekerjaan ini
menyangkut bagaimana petugas melayani tamu sehingga tamu merasa puas
dan senang atas pelayanan yang didapatkan. Untuk mempertemukan kedua
keinginan yang berbeda antara pelanggan dengan pemilik restoran, maka
diperlukan kunci keberhasilan antara lain: ketepatan, kecekatan, kejelian,
kepekaan dari sumber tenaga yang profesional dengan sistem,
dan tahapan
pelayanan sehingga dapat memenuhi keinginan pelanggan.
|
12
2.1.3.
Interaksi Manusia dan Komputer (IMK)
Berikut beberapa teori mengenai pengertian interaksi manusia dan
computer, delapan aturan emas dan lima faktor manusia terukur:
2.1.3.1.
Pengertian IMK
Menurut Shneiderman dan Plaisant (2010:22), Interaksi Manusia dan
Komputer (IMK)
atau yang biasa disebut HCI (Human Computer
Interaction) merupakan
penerapan dari metode eksperimen psikologi ke
dalam peralatan yang dikembangkan dari computer science.
Menurut Karray et al. (2008), IMK adalah sebuah desain
yang harus
menghasilkan rancangan yang sesuai
antara pengguna, mesin, dan layanan
yang dibutuhkan dalam mendapatkan kinerja tertentu di bagian kualitas dan
optimalitas dari layanan tersebut.
2.1.3.2.
Delapan Aturan Emas
Menurut Shneiderman dan Plaisant (2010:
88-89), terdapat delapan
aturan emas yang digunakan sebagai panduan dalam merancang antarmuka
pengguna. Kedelapan aturan emas tersebut adalah:
1.
Berusaha untuk konsisten
Konsistensi yang dimaksud mencakup dari segi layout, tata letak menu
navigasi, pemilihan background, pemilihan ukuran dan
warna teks,
serta urutan aksi yang sejenis.
2.
Menyediakan fungsi yang bersifat universal atau umum
Suatu user
interface
harus memiliki kemampuan mentransformasi
konten untuk beradaptasi dengan berbagai jenis pengguna, baik
berdasarkan pengalaman kerja, daerah usia, serta kondisi fisik dan
mental (normal maupun cacat).
3.
Memberikan umpan balik yang informatif
Sistem memberi respons
terhadap tindakan
pengguna. Contoh saat
mengklik sebuah link pada suatu halaman web, maka sistem me-respon
dengan merubah halaman web tersebut.
4.
Merancang dialog sebagai penutupan
Urutan sebuah tindakan yang diatur dalam grup dengan bagian
permulaan, pertengahan, dan akhir sehingga memberikan kepuasan bagi
|
13
pengguna
dan sebagai identifikasi untuk melanjutkan ke tindakan
selanjutnya.
5.
Memberikan pencegahan kesalahan
Sebisa mungkin, desain system tidak menyebabkan pengguna
membuat
kesalahan yang serius. Apabila pengguna
membuat kesalahan, maka
sistem harus bisa mendeteksi kesalahan dan memberikan solusi yang
efektif untuk memperbaiki kesalahan.
6.
Dapat melakukan pembalikan aksi
Sebisa mungkin, aplikasi memungkinkan pembatalan sebuah tindakan.
Hal ini dapat mengurangi kecemasan karena pengguna
mengetahui
bahwa kesalahan dapat dibatalkan dan dapat mendorong pengguna
untuk mempelajari pilihan-pilihan yang asing bagi mereka.
7.
Mendukung internal locus control
Pengguna
yang berpengalaman sangat menginginkan bahwa mereka
bertanggung jawab atas sistem dan sistem merespon tindakan mereka.
Ketidakpuasan pengguna
biasanya muncul karena adanya tindakan
sistem
yang mengejutkan, entry
data
yang membosankan, kesulitan
dalam memperoleh informasi
dan tidak menghasilkan sesuatu yang
diharapkan.
8.
Mengurangi beban ingatan jangka pendek
Keterbatasan pengolahan informasi manusia dalam ingatan jangka
pendek
memerlukan
tampilan
yang simple. Hindari tampilan yang
mengharuskan pengguna untuk mengingat informasi dari satu tampilan
yang akan ditampilan lainnya. Contoh hal yang bisa dilakukan adalah
mengurangi banyaknya window-motion
dan menggabungkan multiple
page.
|
14
2.1.3.3.
Lima Faktor Manusia Terukur
Menurut Shneiderman & Plaisant (2010:32), ada lima faktor manusia
terukur yang harus diperhatikan dan dijadikan evaluasi dalam merancang
user interface:
1.
Waktu belajar
Perhatikan seberapa lama waktu yang dibutuhkan pengguna untuk
mempelajari cara relevan untuk melakukan task.
2.
Kecepatan kinerja
Perhatikan seberapa lama suatu task dilakukan.
3.
Tingkat kesalahan user
Perancang aplikasi memperhatikan seberapa
banyak kesalahan dan
kesalahan apa saja yang dibuat pengguna.
4.
Daya ingat
Perhatikan seberapa baik
kemampuan pengguna mempertahankan
pengetahuan mereka setelah jangka waktu tertentu.
5.
Tingkat kepuasan subyektif
Ukur tingkat kepuasan pengguna dalam berbagai aspek sistem dengan
melakukan interview ataupun survey tertulis yang meliputi skala
kepuasan dan area komentar bagi pengguna.
2.1.4.
Rekayasa Perangkat Lunak
Berikut merupakan teori mengenai rekayasa perangkat lunak, agile
development, dan extreme programming:
2.1.4.1.
Menurut Pressman (2010:13), rekayasa perangkat lunak adalah
pembentukan perangkat lunak dengan menerapkan prinsip-prinsip rekayasa
untuk menghasilkan suatu perangkat lunak yang ekonomis dan bekerja
secara efisien pada mesin yang nyata.
|
15
2.1.4.2.
Agile Development
Menurut Pressman (2010:66), agile development
disusun oleh Kent
Beck dan 16 orang lainnya, yang menyatakan bahwa agile development
berisi sekumpulan metodologi dalam merancang perangkat lunak yang
mementingkan kepuasan customer dan penyampaian perangkat lunak secara
berkala; tim proyek yang tidak terlalu besar dan memiliki motivasi tinggi;
dan mementingkan simplicity. Proses pengembangan agile menekankan
delivery (proses) dibanding dengan analisis dan desain serta komunikasi
yang aktif antara customer dengan developer.
Dalam manifesto tersebut juga menyatakan bahwa untuk merancang
perangkat lunak yang baik, dibutuhkan 4 hal utama yaitu:
1.
Mementingkan interaksi antar individu dibandingkan dengan proses dan
tools
2.
Mementingkan perangkat yang bekerja dengan baik dibandingkan
dengan kelengkapan dokumentasi
3.
Mementingkan kolaborasi dengan sesama users dibandingkan dengan
kontrak yang sudah dibuat sebelumnya
4.
Merespon perubahan yang
terjadi, tidak terikat pada rencana yang
dibuat sebelum nya
Selain membuat manifesto, Agile
Development
juga mendefisinikan
12 prinsip agiliy yaitu:
1.
Prioritas utama adalah untuk memuaskan customer dengan memberikan
pelayanan perangkat lunak yang baik dari awal dan berkelanjutan.
2.
Menerima perbuahan kebutuhan, meskipun terjadi di akhir
pengembangan.
3.
Memberikan hasil perangkat lunak secara berkala, dalam hitungan
minggu atau bulan.
4.
Pengembang perangkat lunak dan orang-orang yang memiliki
kepentingan bekerja sama selama proyek berlangsung.
5.
Membangun proyek diantara orang-orang yang memiliki motivasi.
Menyediakan lingkungan dan dukungan yang
mereka butuhkan, dan
percaya mereka dapat menyelesaikan pekerjaan yang ada.
|
16
6.
Metode paling efektif dalam menyampaikan informasi kepada para
pengembang adalah dengan komunikasi langsung.
7.
Perangkat lunak yang bekerja dengan baik adalah alat ukur utama dari
kemajuan proyek.
8.
Agile
process mendukung pengembangan berkelanjutan. Para sponsor,
pengembang dan users bisa bebas menjaga kestabilan proyek.
9.
Memberikan perhatian secara terus-menerus kepada keunggulan teknis
yang dimiliki dan desain yang baik dapat meningkatkan ketangkasan
10.
Kesederhanaan itu penting.
11.
Arsitektur, kebutuhan, dan desain yang baik didapat dari tim yang dapat
mengatur dirinya sendiri.
12.
Secara berkala, tim merefleksikan apakah yang dikerjakan sudah efektif
dan mencari cara agar lebih efektif serta melakukannya dengan segera.
Beberapa hal penting yang harus dimiliki seseorang agar dapat
menerapkan konsep Agile Development adalah harus memiliki kompetensi,
fokus pada tujuan, bisa berkolaborasi dengan anggota tim, bisa membuat
keputusan, dapat memecahkan fuzzy problem, percaya dan saling
menghormati anggota tim, serta memiliki kemampuan untuk mengatur diri
dan organisasi.
2.1.4.3.
Extreme Programming
Menurut Pressman (2010:72) Extreme Programming (XP) merupakan
salah satu metode pengembangan perangkat lunak yang termasuk dalam
agile development. Ada 5 hal penting yang menjadi dasar dari metode ini:
1.
Communication
Komunikasi yang efektif antara pengembang dengan pihak-pihak yang
memiliki kepentingan sangat penting untuk menentukan fitur dan fungsi
dari perangkat lunak yang akan dibuat, serta memberikan pandangan
kepada pengembang sesuai dengan pandangan pengguna perangkat
lunak.
|
17
2.
Simplicity
Metode XP membatasi pengembang untuk merancang hanya untuk
kebutuhan saat ini, daripada kebutuhan yang akan datang. Hal ini
bertujuan agar dapat menghasilkan rancangan yang sederhana, yang
mudah diimplementasikan pada code. Jika rancangan harus
dikemabangkan, dapat dilakukan dilain waktu (refactored).
3.
Feedback
Umpan balik didapat dari 3 sumber, yang pertama adalah implementasi
perangkat lunak itu sendiri, customer, dan team pengembang lainnya.
Hal ini bertujuan untuk mengetahui kemajuan dari proses dan kualitas
dari perangkat lunak yang dibangun agar hal-hal yang menjadi masalah
dalam proses pembangunan dapat diketahui dari awal. Setiap feedback
yang diterima, ditanggapi dengan melakukan tes dan dilakukan
secepatnya.
4.
Courage
Courage
adalah komitmen untuk selalu melakukan design dan coding
untuk hari ini dan bukan untuk esok, dan menyadari bahwa kebutuhan
esok akan bisa berubah
secara dramatis, sehingga menuntut
pengembang untuk melakukan refactor.
5.
Respect
Dengan mengikuti langkah-langkah diatas, tim harus menghormati
anggota tim lainnya, tidak boleh melalukan perubahan yang dapat
merusak kompikasi dan memperlambat kerja tim.
2.1.4.4.
XP Process
Menurut Pressman
(2010:73),
Extreme Programming
(XP)
menggunakan pendekatan object-oriented dan mencakup seperangkat aturan
yang terjadi dalam 4 kerangka kegiatan: planning, design, coding, and
testing.
1.
Planning
Planning
dimulai dengan mengumpulkan kebutuhan yang
memungkinkan para anggota dari tim XP dapat memahami konteks
bisnis dari perangkat lunak yang akan dibuat dan mendapat wawasan
yang luas untuk output
apa yang diperlukan serta fitur-fitur utama dari
|
![]() 18
perangkat lunak. Tahap ini akan mengarah pada pembuatan stories
yang menggambarkan output
yang dibutuhkan, fitur, dan fungsi dari
perangkat lunak yang akan dibuat.
(Sumber: www.jptutorials.co.in, 2013)
2.
Design
Metode XP mengikuti aturan KIS (Keep
It
Simple). Desain yang
sederhana selalu diutamakan dibandingkan dengan representasi yang
kompleks. Jika terdapat design yang sulit, XP akan menerapkan Spike
Solution, dimana pembuatan design dilakukan segera, dan dibuat
langsung ke tujuannya. XP juga mendukung adanya refactoring dimana
kita dapat melakukan perubahan pada kode program untuk
disederhanakan tanpa merubah cara kode tersebut bekerja.
3.
Coding
Setelah stories sudah dirancang dan desain awal sudah selesai, tim
tidak langsung memulai code, tetapi terlebih dahulu merancang
beberapa unit
test
yang digunakan untuk menjalankan stories dan
disertakan pada software
release
saat itu. Setelah itu, pengembang
focus untuk mengimplementasikannya. XP juga menerapkan Pair
Programming dimana proses pengembangan program, dilakukan secara
berpasangan. Dua orang bekerja sama dalam satu komputer untuk
|
19
menulis kode. Hal ini memberikan real-time problem solving dan real-
time quality assurance.
4.
Testing
Pada tahap ini dilakukan pengujian kode pada unit
test
yang telah
dibuat sebelumnya. Pada metode XP dilakukan acceptance test atau
biasa disebut customer test. Tes ini diberikan kepada customer
akan
menggunakan fitur dan fungsi sistem yang akan dibuat.
2.1.5.
Unified Modelling Language (UML)
Menurut Whitten dan Bently (2007:371) Unified Modelling Language
(UML) adalah blueprint
dari sistem informasi yang akan dibuat dalam
pengembangan perangkat lunak. Setiap UML memiliki fungsi dan tujuan
yang berbeda dalam pengembangan perangkat lunak sesuai dengan jenisnya.
Terdapat 13 diagram yang dapat digunakan untuk mengembangkan
perangkat lunak dalam UML 2.0 yaitu:
1.
Use Case
2.
Activity
3.
Class
4.
Object
5.
State Machine
6.
Composite Structure
7.
Sequence
8.
Communication
9.
Interaction Overview
10. Timing
11. Component
12. Deployment
13. Package
Dalam pengembagan perangkat lunak, dari ketiga belas diagram
tersebut tidak perlu digunakan semuanya. UML yang akan dibuat dipilih
sesuai dengan kebutuhan, dengan syarat UML yang dibuat dapat
menggambarkan proses pengembangan sistem secara jelas.
2.1.5.1.
Use Case Diagram
Menurut Whitten and Bentley (2007:246), use
case
diagram
merupakan salah satu bagian dari use
case
modeling. Use
case
diagram
digunakan untuk menggambarkan secara jelas proses yang akan dijalankan
oleh sistem. Dalam use case diagram, terdapat 3 komponen utama yaitu :
|
![]() 20
1.
Use Case
Use
case
adalah aktivitas yang akan dilakukan dalam sistem yang
berupa interaksi antara sistem dengan user untuk mencapai suatu tujuan
tertentu. Use case digambarkan dalam bentuk elips yang memiliki
keterangan pada bagian atas, bawah, atau didalam elips tersebut.
2.
Actor
Actor
adalah user
(pengguna sistem) yang akan berinteraksi dalam
sistem dengan cara melaksanakan use
case
untuk bertukar informasi.
Actor digambarkan dalam bentuk stick figure dengan label peran actor
tersebut dalam sistem. Peran actor dalam use case dibagi menjadi 4,
yaitu primary
bussines
actor, primary
system
actor, external
server
actor dan external receiver actor.
|
![]() 21
3.
Relationship
Relationship adalah hubungan dari dua simbol dalam use case diagram
yang digambarkan dalam bentuk garis. Ada 5 jenis relationship
yang
memiliki arti yang berbeda-beda yaitu:
a.
Associations
Komunikasi antara use
case
dan actor
digambarkan sebagai
hubungan associatons. Garis associations
dapat memiliki anak
panah yang berarti actor berperan sebagai pelaku dari
use
case
tersebut, sedangkan garis tanpa anak panah berarti actor
hanya
berperan sebagai external
server
atau penerima dari use
case
tersebut.
b.
Extends
Use case
dapat berisi fungsi kompleks yang terdiri dari langkah-
langkah yang dapat membuat use case sulit untuk dimengerti. Use
case
tersebut dapat dipisahkan menjadi extention
use
case
dengan
membuat hubungan extends
dengan use
case
lainnya. Hubungan
extends
dapat digambarkan dengan garis solid atau putus-putus
dengan anak panah dan label <<extends>> didekat garis tersebut.
|
![]() 22
c.
Uses atau Includes
Dalam use
case
sering dilihat 2 atau lebih use
case
yang fungsi
yang sama. Hal ini menyebabkan redudansi. Hal tersebut dapat
diatasi dengan menggunakan hubungan uses atau includes kepada
sebuah use case
dengan use
case
yang memiliki fungsi umum
(abstract
use
case). Hubungan uses atau
inlicudes dapat
digambarkan dengan garis solid atau putus-putus dengan anak
panah dan label <<uses>> didekat garis tersebut.
d.
Depends on
Depends on adalah hubungan ketergantungan dalam use case. Jika
suatu use case
belum dijalankan, maka use
case
yang bergantung
kepada use case tersebut tidak dapat dijalankan. Hubungan depends
on dapat digambarkan dengan garis solid atau putus-putus dengan
anak panah dan label <<depends on>> didekat garis tersebut.
e.
Inheritance
Inheritance
adalah hubungan antara 2 actor
atau lebih yang
memiliki perilaku umum yang sama. Hubungan tersebut dapat
digambarkan dengan garis solid dengan anak panah.
|
![]() 23
2.1.5.2.
Use Case Narrative
Menurut Whitten and Bentley (2007:256), use case narrative
merupakan salah satu bagian dari use case modelling yang berisikan rincian
dari setiap event
dan menerangkan bagaimana user
berinteraksi dengan
sistem selama event terjadi.
p:256)
|
![]() 24
2.1.5.3.
Class Diagram
Menurut Whitten dan Bentley (2007:400), class diagram
adalah
kumpulan dari objek-objek bernama class
beserta hubungannya yang
menyusun suatu sistem. Setiap class digambarkan dengan sebuah tabel atau
kotak yang terbagi menjadi 3 (tiga) bagian, yaitu nama kelas, atribut, dan
operasi kelas.
Gambar 2.8 Struktur Class Diagram
Berikut beberapa
jenis hubungan yang terdapat pada class
diagram
menurut Whitten dan Bentley (2007:400) :
1.
Multiplicity
Multiplicity
adalah suatu istilah yang digunakan untuk menunjukan
jumlah minimal dan maksimal suatu objek kelas yang berhubungan
dengan objek kelas lainnya.
Tabel 2.1 Tabel Multiplicity
Multiplicity
Deskripsi
1
Hanya satu.
0..1
0 atau 1
*
0 atau lebih
1..*
1 atau lebih
m..n
Terdiri dari antara m sampai dengan n
|
![]() 25
2.
Visibility
Visibility
adalah level akses suatu objek terhadap atribut dan operasi
kelas.
Terdapat tiga level akses dalam class diagram, yaitu pada tabel
berikut :
Tabel 2.2 Tabel Visibility
Visibility
Nama
Deskripsi
+
Public
Dapat digunakan oleh semua
kelas yang berhubungan
#
Protected
Hanya dapat
digunakan oleh
kelas turunannya
dan kelasnya
sendiri
-
Private
Hanya dapat digunakan oleh
kelas itu sendiri
3.
Association
Association
menunjukan adanya
hubungan antar dua class
atau lebih
dalam sebuah class
diagram. Dalam association
terdapat dua jenis
hubungan menurut Whitten dan Bentley (2007: 650) , yaitu:
a.
Uni-directional
Hubungan ini digambarkan menggunakan garis lurus dengan tanda
panah. Kedua class yang saling berhubungan, hanya salah satu saja
yang memiliki peran (mengirimkan pesan ke kelas lainnya
yang
ditunjuk) dalam hubungan tersebut.
Gambar 2.9 Contoh Asosiasi Uni-Directional
b.
Bi-directional
Hubungan ini digambarkan dengan garis lurus tanpa tanda panah.
Semua kelas berperan dan dapat saling mengirim pesan ke kelas
lainnya yang terhubung.
|
![]() 26
Gambar 2.10 Contoh Association Bi-Directional
4.
Generalization
Generalization adalah hubungan inheritance (pewarisan) yang berarti
bahwa
class
induk (Super
Class) adalah bentuk umum dari class
turunan (Sub Class). Semua class turunan memiliki semua elemen dari
class induk.
Gambar 2.11 Contoh Generalisasi/Spesialisasi
5.
Agregation dan Composition
Agregasi
menunjukan hubungan antar satu class
yang merupakan
bagian dari class lainnya.
Gambar 2.12 Contoh Agregation Class Diagram
|
![]() 27
Ada kemiripan antara
composition dan agregation, tetapi composition
memiliki keterkaitan yang lebih erat,
jika class
A adalah bagian dari
class B, maka class A tidak akan ada jika class B tidak terbentuk.
Gambar 2.13 Contoh composition pada class diagram
2.1.5.4.
Menurut Whitten dan Bentley (2007:382), sequence
diagram
menggambarkan bagaimana suatu objek berinteraksi dengan objek lainnya
melalui pesan dalam mengeksekusi use case atau operation. Sequence
diagram
mengilustrasikan bagaimana pesan dikirim dan diterima antar
objek dan urutannya.
Tabel 2.3 Tabel Notasi Sequence Diagam
Notasi
Keterangan
Actor/Receiver Actor
Notasi ini menggambarkan user
yang
berinteraksi dengan sistem.
User
ini
merupakan user
yang menjalankan use
case atau user
yang menerima message
dari sistem.
System
Notasi ini
menggambarkan kelas-kelas
pada class diagram
Lifelines
Notasi ini menggambarkan mulainya
sebuah rangkaian proses
:System
|
![]() 28
Activation Bars
Notasi ini yang menandakan periode
waktu sistem aktif berinteraksi
Input Messages
Notasi ini menggambarkan pesan yang
masuk dari aktor menuju ke sistem,
biasanya berupa method dari sistem.
Output Messages
Notasi ini menggambarkan pesan keluar
atau balasan atas input message
yang
dikirim, biasanya berupa attribute.
p:395)
|
29
2.1.6.
Smartphone
Istilah smartphone mendeskripsikan tentang sebuah mobile phone yang
dibangun dengan sistem informasi khusus pada mobile dengan kapabilitas
komputasi yang melebihi mobile phone pada umumnya.
Menurut Schmidt et. al. (2008:2) istilah smartphone sendiri digunakan
untuk mendeskripsikan mobile devices
yang menggabungkan fungsi-fungsi
dari mobile phone, audio player, Personal
Digital Assistant (PDA), digital
camera, ataupun Personal Computer (PC). Contoh fungsi Personal Digital
Assistant
(PDA)
adalah kalkulator, penunjuk jam dan waktu, game,
mengakses internet, penerima dan pengirim surat elektronik (e-mail),
membuat dokumen, penerima radio, perekam video, dan memo.
Setiap smartphone
memiliki sistem operasinya
sendiri. Contoh sistem
operasi pada smartphone
yaitu :
iOS, Android, Palm OS, Linux, Symbian
dan Windows Mobile.
2.1.7.
Menurut Stark (2012), ada perbedaan antara computing
devices,
smartphone
dan PC seperti layar perangkat, bandwidth,
sumber daya dan
lain-lain. Oleh karena itu, perancangan interface-nya juga akan berbeda.
Berikut 10 (Sepuluh) prinsip dalam merancang interface
aplikasi
mobile
menurut Stark (2012) :
1.
Mobile Mindset
Terdapat pola pikir atau mindset
dalam merancang aplikasi mobile
seperti:
a.
Fokus
Banyak belum tentu baik, ada hal yang perlu dipertimbangkan dengan
baik seperti fitur-fitur yang tidak berguna sebaiknya tidak perlu
dibuat.
b.
Unik
Aplikasi yang dibuat memiliki perbedaan dengan aplikasi yang sudah
pernah ada.
c.
Menawan
Aplikasi yang mudah digunakan, diakses, dapat diandalkan dan
menyenangkan menarik bagi user untuk menggunakannya.
|
30
d.
Perhatian
Aplikasi harus disesuaikan dengan kebutuhan user.
2.
Mobile Contexts
Dalam menggunakan sebuah aplikasi mobile, ada beberapa kondisi atau
alasan user dalam menggunakan aplikasi tersebut yang dapat digunakan
sebagai sasaran user seperti :
a.
Bored
Aplikasi digunakan untuk mengisi waktu luang seperti ketika santai
dirumah. Aplikasi ini tidak membosankan dan biasanya berupa
permainan atau social-networking.
b.
Busy
Aplikasi mendukung produktivitas user. Kecepatan aplikasi dalam
melaksanakan tugas, dapat diandalkan dan dapat diselesaikan
dilakukan dengan satu tangan sangat dibutuhkan oleh user
yang
sedang dalam keadaan sibuk.
c.
Lost
User berada pada kondisi kehilangan arah, berada pada lingkungan
yang tidak diketahuinya atau user
sedang di daerah yang familiar
tetapi tertarik dengan hal yang tidak ia ketahui sebelumnya. Aplikasi
ini sebaiknya hemat baterai yang mendukung offline support.
3.
Global Guidelines
Setiap aplikasi memiliki pendekatan, rancangan dan tekniknya masing-
masing. Berikut pedoman global yang digunakan untuk merancang
aplikasi mobile :
a.
Responsiveness
Aplikasi memberikan respon terhadap tindakan user. Pastikan user
mengetahui bahwa aplikasi sedang bekerja jika operasi memerlukan
waktu yang lama.
b.
Polish
Hal ini menekankan pada desain antarmuka. Detil rancangan atau fitur
akan diperhatikan dan dihargai user.
|
31
c.
Thumbs
Ibu jari (jempol) user berperan penting dalam interaksi user
dengan
layar mobile. Oleh karena itu, rancangan aplikasi harus
mengutamakan kenyamanan ibu jari dalam berinteraksi.
d.
Targets
Aplikasi yang dirancang harus meminimalkan kesalahan user dalam
miss-target
seperti : penempatan backspace
di samping enter harus
diberi jarak. Tombol-tombol juga sebaiknya didesain agar mudah
ditekan oleh ujung jari.
e.
Content
Penggunaan elemen interface
seperti tombol, tab, bars
dan
sebagainya sebaiknya dikurangi dan letakkan content
di tengah layar
sehingga aplikasi lebih terpusat pada konten aplikasi.
f.
Controls
Pengaturan atau kontrol pada aplikasi sebaiknya ditaruh dibawah agar
tidak menutupi perubahan yang terjadi setelah user
melakukan aksi
(menekan atau memilih menu).
g.
Scrolling
Aplikasi yang tidak menggunakan scrolling
terlihat solid
karena
terlihat jelas dan tidak membingungkan user. Oleh karena itu,
penggunaan scrolling sebaiknya dihindari.
4.
Navigation Models
Terdapat beberapa model navigasi untuk merancang interface
aplikasi
mobile, yaitu :
a.
None
Aplikasi single-screen yang memerlukan halaman lain seperti aplikasi
stopwatch sederhana.
b.
Tab Bar
Aplikasi yang memiliki lebih dari satu bidang area dan biasanya
memiliki rancangan tab bar
pada bagian atas aplikasi. Contoh :
Twitter yang memiliki lebih dari 3 sampai 6 konten area.
|
32
c.
Drill Down
Model ini berupa daftar (list) dan detil dalam hierarki konten.
Contoh: settings pada smartphone.
5.
User Input
Aplikasi yang memerlukan input teks harus memperhatikan kenyamanan
user dalam mengetik dalam keyboard melalui perangkat yang digunakan.
Hal ini dapat dilakukan dengan mempertimbangkan input field
yang
digunakan agar tepat guna dan proses input lebih cepat, mendukung
landscape
keyboard
untuk input
teks yang banyak dan
mempertimbangkan penggunaan auto-correct.
6.
Gestures
Keberadaan gestures
mobile
tidaklah terlihat. Oleh karena itu,
penggunaan gestures
harus diinformasikan kepada user. Penggunaan
gestures juga harus disesuaikan dengan kondisi user misalnya pada multi-
touch
gestures
membutuhkan dua tangan untuk beroperasi seperti zoom
pada peta akan sulit dilakukan jika user sedang memegang cangkir pada
satu tangan. Hal itu akan lebih mudah dilakukan jika aplikasi mendukung
zoom menggunakan 1 tangan.
7.
Orientation
Aplikasi berorientasi portrait
merupakan orientasi yang paling baik,
optimal dan populer untuk sebuah rancangan aplikasi saat ini, tetapi
apabila aplikasi membutuhkan banyak sekali pengetikkan, lebih baik
aplikasi tersebut dibuat dalam kombinasi orientasi landscape dan portrait.
Penguncian orientasi yang terbaik untuk aplikasi yang akan
dikembangkan perlu dipertimbangkan.
8.
Communication
Aplikasi memerlukan komunikasi antara user
dan aplikasi. Berikut
beberapa jenis komunikasi yang dapat dilakukan :
a.
Provide feedback
Umpan balik diperlukan dalam aksi user agar user
merasa aplikasi
berjalan dengan baik ataupun user sudah benar menekan tombol.
|
33
Umpan balik yang diberikan dapat berupa teks, getaran, visual
maupun suara. Jika aksi yang dilakukan oleh user
membutuhkan
waktu lama untuk loading, berikan sebuah petunjuk bahwa aplikasi
tersebut sedang memproses.
b.
Model Alerts
Modal
alerts
bersifat mendesak dan mengganggu sehingga alerts
sebaiknya hanya digunakan dalam situasi yang penting seperti adanya
crash
pada aplikasi. Frekuensi intensitasnya dipertimbangkan dan
pemakaian bahasa meyakinkan serta ramah. Alerts
sebaiknya tidak
digunakan hanya untuk memberikan informasi.
c.
Confirmation
Konfirmasi dalam aksi yang dilakukan oleh user perlu ada contohnya
jika user
ingin melakukan penghapusan file, maka aplikasi memuncul
sebuah confirmation
dialog
box
yang menanyakan keyakinan user
untuk menghapus file tersebut.
9.
Launching
Ketika user
membuka kembali aplikasi yang pernah digunakan
sebelumnya, sebaiknya aplikasi terbuka pada tampilan operasi terakhir.
Hal ini akan memberi ilusi bahwa aplikasi tersebut cepat dan responsif.
10. First Impression
Kesan pertama saat sebuah aplikasi dijalankan berperan penting dalam
penilaian user. Apabila user
kesulitan dalam menginstal aplikasi asing
maka user mungkin segera menghapus aplikasi tersebut.
Jika suatu aplikasi mempunyai fungsi yang kompleks maka aplikasi
memerlukan tambahan bantuan (help) pada menu info agar user
lebih
mudah menggunakan dan memahami aplikasi.
Icon
juga mempengaruhi kesan pertama pada aplikasi yang
dikembangkan. Oleh karena itu, icon
harus menarik dan kontras
dibandingkan dengan icon
lainnya yang terdapat pada smartphone
user
dan harus dapat menggambarkan fungsi dari aplikasi.
|
34
2.2.
Teori-teori yang bersifat khusus yang digunakan dalam merancang
aplikasi. Teori-teori yang digunakan yaitu teori Android, Eclipse, Android
Development Tools (ADT), Android Software Development Kit (SDK), dan
Wireless Fidelity (Wi-Fi).
2.2.1.
Berikut merupakan teori mengenai Android yang meliputi pengertian,
versi, keunggulan, jenis aplikasi serta arsitektur Android:
2.2.1.1.
Menurut Lee (2012:2), Android adalah sistem operasi mobile
yang
dibuat berdasarkan kernel Linux yang sudah dimodifikasi. Pada awalnya
Android dikembangkan oleh Android, Inc. Google kemudian membeli
Android dan mengambil alih semua pekerjaan pengembangan Android.
Android adalah sistem operasi open source, dan Google merilis kodenya di
bawah Lisensi Apache.
Menurut
Burnette (2010:
xiiv), Android merupakan sebuah platform
perangkat lunak yang open source untuk ponsel yang dibuat oleh Google
dan the Open Handset Alliance.
Menurut Meier (2011:4), Android merupakan gabungan dari 3 (tiga)
komponen, yaitu:
1.
Sistem operasi yang open-source untuk perangkat mobile.
2.
Platform pengembangan yang open-source untuk membuat aplikasi
mobile.
3.
Perangkat, terutama mobile phone, yang menjalankan sistem operasi
Android dan aplikasi yang dibuat pada sistem operasi itu.
|
![]() 35
2.2.1.2.
Versi Android
Android telah melakukan banyak updates sejak pertama kali realease.
Berikut versi Android beserta dengan nama kodenya:
(Sumber: www.developer.android.com, 2013)
Data tabel diatas didapatkan
dari perangkat Android yang telah
mengakses Google Play dalam periode 14 hari dan berakhir pada tanggal 3
Januari 2013.
Berdasarkan data diatas, terdapat beberapa versi Android dari 1.6
hingga 4.2. Semakin tinggi versinya, kesempurnaan OS dan performanya
semakin baik.
Penambahan
versi tersebut dilakukan setiap waktu ketika
API berubah dan ketika melakukan perbaikan kesalahan-kesalahan kecil
atau menambah fitur-fitur baru.
|
36
2.2.1.3.
Keunggulan Android
Menurut Meier (2011: 11), ada
beberapa keunggulan dan fitur-fitur
unik yang terdapat pada Android, yaitu:
1.
Aplikasi Google Maps
Aplikasi Google Maps
yang digunakan pada mobile sangat populer dan
Android menawarkan aplikasi Google Maps
yang bisa digunakan
kembali pada aplikasi lain.
2.
Background services and applications
Background services memungkinkan pembuatan
sebuah aplikasi yang
menggunakan model event-driven, berjalan tanpa terlihat bahwa
aplikasi tersebut sedang berjalan ketika aplikasi lain sedang dijalankan.
3.
Sharing data dan interprocess communication (IPC)
Android memungkinkan pertukaran pesan, melakukan pengolahan, dan
berbagi data dengan menggunakan Content Provider.
4.
Semua aplikasi yang dibuat sama
Android tidak membedakan antara aplikasi yang asli dengan yang
dikembangkan oleh pihak ketiga.
2.2.1.4.
Jenis Aplikasi Android
Menurut Meier (2011:29) , sebagian besar aplikasi Android yang
dibuat akan tergolong dalam salah satu kategori berikut :
1.
Foreground
Aplikasi foreground
berguna hanya ketika berada di foreground
dan
tidak efektif jika tidak terlihat. Contohnya : games dan map mashups.
2.
Background
Aplikasi ini berjalan secara tersembunyi pada latar belakang dengan
input pengguna yang sedikit. Contoh : aplikasi call screening dan Short
Message Service (SMS) auto-responder.
3.
Interminttend
Aplikasi ini berjalan di foreground
maupun background. Aplikasi ini
tetap akan aktif walaupun sedang tidak berjalan pada background
dan
biasanya memberikan notification atau perubahan User Interface untuk
memberikan update kepada user. Contoh : aplikasi chatting dan email.
|
![]() 37
4.
Widget
Aplikasi ini hanya ditampilkan sebagai widget pada home screen. Contoh
: battery levels dan weather forecasts.
2.2.1.5.
Arsitektur Android
Sistem operasi Android memiliki 4 lapisan (layer) komponen sistem.
Gambar berikut merupakan lapisan arsitektur sistem operasi Android:
Gambar 2.15 Arsitektur Android
(Sumber : Professional Android 2 Application Development,
Meier, 2011)
Berikut komponen sistem dari Android:
1.
Linux Kernel
Linux Kernel adalah komponen paling bawah dari arsiktektur Android
yang juga menjadi penghubung layer antara perangkat keras dengan sisa
tumpukan. Linux Kernel (Linux 2.6 Kernel) menangani layanan-
|
38
layanan inti termasuk perangkat keras, proses dan memory
management, sekuritas, jaringan, dan power management.
2.
Libraries
Libraries
berjalan di atas komponen Kernel. Android memasukkan
berbagai library inti dari C / C++ termasuk libc dan SSL, serta:
1.
Media
library
yang berfungsi untuk memutar kembali media audio
dan video.
2.
Surface manager untuk menyediakan pengaturan tampilan.
3.
Graphics libraries yang mencakup SGL dan OpenGL untuk 2D dan
3D graphics.
4.
SQLite untuk dukungan pada database aslinya.
5.
SSL dan WebKit untuk integrasi web browser
dan sekuritas
internet.
3.
Android Runtime
Android runtime
berada pada layar yang sama dengan libraries.
Android runtime
menyediakan seperangkat libraries
inti yang membuat
developers
dapat membuat aplikasi Android menggunakan bahasa
pemograman Java. Android runtime
juga memiliki Dalvik virtual
machine, yang berfungsi agar semua aplikasi Android dapat berjalan di
berbagai instance secara efisien.
a. Application Framework
Komponen ini menyediakan class-class dan abstraksi umum untuk
mengakses perangkat keras dan mengelola user interface dan sumber
aplikasi.
b.
Application
Applications berada pada layar atas. Layer ini merupakan layer yang
berhubungan dengan aplikasi-aplikasi inti yang berjalan pada
Android OS.
|
39
2.2.2.
Android Development Tools
Android Development Tools (ADT) adalah suatu plugin yang
digunakan IDE Eclipse untuk memudahkan user dalam pengembangan
aplikasi Android. User dapat membuat aplikasi project Android, membuat
Graphic User Interface (GUI) aplikasi, membuat penambahan package
Android (.apk) yang digunakan untuk mendistribusikan aplikasi Android
menggunakan ADT (Developers, 2013).
2.2.3.
Android Software Development Kit (SDK)
Android SDK merupakan tools Application Programming Interface
(API) yang diperlukan ketika memulai mengembangkan aplikasi Android
menggunakan bahasa pemrograman Java.
Terdapat beberapa jenis paket berbeda yang telah
tersedia pada
Android SDK (Developers, 2013), yaitu:
a.
SDK Tools
Merupakan tools untuk debugging dan testing, ditambah dengan proses
lain yang diperlukan untuk mengembangkan sebuah aplikasi.
b.
SDK Platform-tools
Tools ini mendukung fitur terbaru dari Android platform.
c.
Documentation
Dokumentasi offline yang terbaru untuk Android platform API.
d.
SDK Platform
Pada setiap versi Android terdapat satu SDK platform
yang tersedia
yaitu Android.jar yang sepenuhnya kompatibel dengan Android library.
Developer
harus menentukan SDK platform
yang digunakan untuk
membuat sebuah aplikasi.
e.
System Images
Emulator android memerlukan gambar sistem untuk beroperasi.
Developer harus selalu menguji aplikasi pada versi terbaru dari android
serta menggunakan emulator dengan gambar sistem terbaru untuk
mendapatkan hasil yang terbaik.
f.
Source for Android SDK
Sebuah salinan (copy) source code dari Android platform yang berguna
untuk membantu developer saat membuat aplikasi.
|
40
g.
Samples for SDK
Merupakan kumpulan contoh aplikasi yang menunjukkan
berbagai
macam API platform. Hal ini merupakan sumber daya yang luar biasa
untuk menelurusi application code.
h.
Google APIs
SDK add-on yang menyediakan sebuah platform yang dapat digunakan
untuk mengembangkan sebuah aplikasi khusus menggunakan Google
API dan gambar sistem untuk emulator sehingga dapat menguji aplikasi
yang dibuat.
i.
Android Support
Menyediakan static libraries yang termasuk dalam sumber-sumber
aplikasi developer untuk menggunakan API yang tidak tersedia dalam
standard platform.
j.
Google Play Billing
Menyediakan static libraries dan contoh yang mengizinkan user untuk
mengintegrasikan layanan penagihan (billing) pada aplikasi yang dibuat
ketika dilakukan distribusi melalui Google Play.
k.
Google Play Licensing
Menyediakan static libraries dan contoh yang mengizinkan user untuk
menampilkan license verification pada aplikasi yang dibuat ketika
dilakukan distribusi melalui Google Play.
2.2.4.
Java
Menurut Schildt (2011:2), Java merupakan bahasa pemrograman yang
dikembangkan oleh James Gosling, Patrick Naughton,
Chris Warth, Ed
Frank
dan Mike Sheridan di Sun Microsystems pada tahun 1991. Pada
awalnya,
bahasa pemrograman ini disebut Oak, namun
berubah nama
menjadi Java pada tahun 1995.
Berikut merupakan beberapa kelebihan bahasa pemrograman Java:
1.
Simple
Java dirancang dengan seperangkat fitur yang membuatnya lebih mudah
dipelajari dan digunakan.
|
41
2.
Secure
Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi
tidak
digunakan untuk merusak sistem computer yang menjalankan
aplikasi tersebut.
3.
Portable dan Cross Platform
Program Java dapat dijalankan di environment manapun yang memiliki
Java run-time system. Program Java juga dapat dengan mudah dibawa
ke platform yang berbeda-beda tanpa harus dikompilasi ulang. Java
menyediakan cross-platform code.
4.
Object-Oriented
Java menggunakan pemograman berorientasi objek yang membuat
program dapat dibuat secara modular dan dapat dipergunakan kembali.
Ada tiga konsep dalam OOP yakni: encapsulation, polymorphism, dan
inheritance.
5.
Multithreaded
Java berkemampuan untuk membuat suatu program yang dapat
melakukan beberapa pekerjaan secara sekaligus dan simultan.
2.2.5.
Eclipse
Eclipse adalah suatu software yang bersifat open
source
dan multi
language. Eclipse terdiri dari Integrated Development Environment (IDE)
dan sistem extensible
plug-in. Eclipse dapat
digunakan untuk
mengembangkan berbagai jenis aplikasi, menggunakan bahasa-bahasa
seperti Java, Ada, C, C++, COBOL, Python dan lain-lain (Lee, 2011: 7).
Eclipse mendukung
ekstensi tambahan dari pihak third-party
dan
merupakan sebuah IDE karena menyediakan tools
untuk mengatur
workspace; dapat membangun, menjalankan dan debug aplikasi; dan
melakukan penyesuaian terhadap pemrograman.
|
42
2.2.6.
Wireless Fidelity
Menurut Varma (2012:1), Wireless
Fidelity
(Wi-Fi) merupakan
semua tipe dari Institute Electrical and Electronics Engineers (IEEE) 802.11
Wireless Local Area Network (WLAN).
WLAN memperluas jangkauan jaringan Local Area Network
(LAN)
dengan menyediakan koneksi wireless. Pengguna perangkat dapat
mengakses informasi dan sumber daya jaringan
melalui WLAN ketika
menghadiri pertemuan, berkolaborasi dengan pengguna lainnya atau
berpindah-pindah tempat. Sekarang, sudah banyak tempat yang
menyediakan koneksi LAN dengan teknologi Wi-fi
yang biasa disebut
dengan hotspot.
Terdapat 2 (dua) standar dominan dari WLAN, yaitu IEEE 802.11
dan High
Performance
Radio LAN (HiperLAN). IEEE 802.11 merupakan
bagian dari standar IEEE 802 yang termasuk standar dari LAN dan standar
Metropolitan Area Network (MAN). Standar IEEE 802.11 menentukan
protokol yang dibutuhkan secara over the air untuk mendukung jaringan
dalam sebuah local area. Standar IEEE 802.11 mendukung 2 (dua)
konfigurasi, yaitu ad hoc dan mode infrastruktur.
2.2.7.
Menurut Doyle (Doyle, 2010: 3), PHP merupakan bahasa
pemrograman pembangun website yang dinamis dan interaktif. Secara
umum, program PHP banyak digunakan pada web server dan menampilkan
halaman web sesuai permintaan user.
Kode PHP dapat dimasukkan ke halaman HTML dan PHP akan
dieksekusi setiap kali halaman web tersebut diaskses. Kode PHP ini akan
diterjemahkan oleh web server dan akan dijalankan bersamaan dengan
HTML atau output lainnya, yang akan dilihat oleh pengunjung situs web.
PHP banyak digunakan pada Internet Service
Providers
(ISPs) serta
perusahaan web hosting
sehingga banyak developer
menggunakannya saat
ini. Beberapa kelebihan PHP (Welling & Thomson, 2008: 4):
1.
Performa PHP sangat tinggi. Jutaan hits dapat dilayani setiap hari hanya
menggunakan single server yang murah.
2.
Kemampuan yang terhubung dengan banyak sistem basis data seperti
|
43
MySQL, PostgretSQL, mSGL, Oracle, DBM, FilePro, Hyperware
Informix, dan Interbase.
3.
Built-in libraries.
4.
Biaya yang rendah karena PHP gratis.
5.
Mudah dipelajari dan digunakan, karena PHP dibuat berdasarkan
bahasa pemrograman dasar yaitu bahasa C dan Perl.
6.
Object-oriented support.
7.
PHP dapat dijalankan pada beberapa sistem operasi seperti Linux,
Solaris, IRIX dan beberapa versi Microsoft Windows.
8.
Source code PHP dapat diakses dan diubah tidak seperti produk
komersial atau close-source.
9.
PHP menyediakan support dan dokumentasi.
2.2.8.
MySQL
MySQL adalah open
source
sistem manajemen database
yang dapat
terelasi. Database
memperbolehkan user
untuk mengefisiensikan
penyimpanan, pencarian, pengurutan dan memperoleh data. Server
dari
MySQL mengontrol akses ke dalam data yang ada dan memastikan banyak
user bisa mengakses data tersebut (Welling & Thomson 2010:3).
MySQL bersifat open source database dan sering digunakan di dunia
karena memiliki kinerja dan kehandalan yang tinggi serta mudah
digunakan. Kelebihan-kelebihan dari MySQL (Welling & Thomson, 2010:
7) adalah:
1.
High performance
2.
Low cost
3.
Easy of configuration
4.
Portability
MySQL dapat berjalan stabil di berbagai sistem operasi seperti
Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga,
IBM,
dan AIX.
5.
Availability of source code
Source MySQL dapat diperoleh dengan mudah dan gratis.
|
44
6.
Availability of support
Tidak semua produk open
source
memiliki induk perusahaan
pendukung, training, consulting, dan sertifikasi. MySQL memberikan
semua itu melalui MySQL AB (www.mysql.com).
2.2.9.
Web Service
Menurut W3C (2004), web
service
adalah sistem software yang
dirancang untuk mendukung interaksi antara mesin dengan mesin melalui
jaringan. Salah satu web service yang digunakan adalah web service dalam
format JavaScript Object Notation
(JSON). Keunggulan JSON
dibandingkan dengan format lainnya seperti XML adalah dalam hal
efisiensi dalam pembacaan dan decode.
2.2.9.1.
JSON
JSON
(JavaScript Object Notation) adalah format pertukaran data
yang ringan, berbasis teks, mudah dibaca, dan ditulis oleh manusia, serta
mudah diterjemahkan dan dibuat (generate) oleh komputer. Format ini
dibuat berdasarkan bagian dari Bahasa Pemograman JavaScript, Standar
ECMA-262 Edisi ke-3 - Desember 1999.
JSON merupakan format teks yang tidak bergantung pada bahasa
pemoograman apapun karena menggunakan gaya bahasa yang umum
digunakan oleh programmer keluarga C termasuk C, C++, C#, Java,
JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan
JSON ideal sebagai bahasa pertukaran-data (Crockford, 2006).
|
![]() 45
2.3.
Hasil Penelitian atau Produk Sebelumnya
Berikut merupakan hasil penilitian atau produk sebelumnya dari
jurnal-jurnal yang telah dikumpulkan:
2.3.1.
QR Code
Law, C. & So, S. (2010) QR Code merupakan bentuk dua dimensi
dari barcode. QR Code dikembangkan oleh Denso Wave yang digunakan
untuk mendata sparepart
kendaraan pada tahun 1994. QR merupakan
singkatan dari Quick Response. QR Code dapat dibaca melalui smartphone
yang sudah dilengkapi kamera dan pemindai QR. Informasi seperti URL,
SMS, informasi kontak, dan teks dapat disimpan matriks 2 dimensi.
QR Code mampu menyimpan 7,089 angka, 4,296 alfanumerik, 2,965
bytes, 1,817 Kanji. Kapasitas data yang disimpan
lebih banyak dari pada
barcode karena dapat menyimpan informasi secara vertikal dan horizontal.
QR Code dapat dibaca dari berbagai arah (360
o
) melalui pola deteksi yang
terletak di tiga sudut seperti yang ditunjukan pada gambar 2.10.
|
46
2.3.2.
Teknologi Dalam Industri Restoran
Sampai saat ini, teknologi menjadi asset strategis yang penting bagi
industri restoran untuk meningkatkan layanan dan produk untuk
mempertahankan daya saing. Hal ini telah ditekankan pada industri restoran
harus mengatasi kekurangan teknologi proaktif dan komprehensif jika
berharap untuk mendapatkan keuntungan dari revolusi pasar yang
dipengaruhi oleh kemajuan teknologi. Hanya mereka yang bisa mengikuti
perkembangan teknologi yang mampu mempertahankan customer
yang
sudah ada, membuka bisnis baru, dan mendapatkan pangsa pasar.
2.3.2.1.
Inovasi Dalam Menampilkan Menu
Pengaruh teknologi terhadap industri restoran tidak hanya pada
bagaimana produk yang dihasilkan, tetapi juga bagaimana produk disajikan
pada menu, sehingga inovasi pada penyajian menu adalah masalah yang
menarik bagi para pengelola restoran. Menu dianggap sebagai alat
pemasaran dan iklan cetak karena menyampaikan pesan kepada customer
dan mempengaruhi penjualan langsung. Sebagai sumber utama informasi
tentang restoran, idealnya, menu desain
yang tepat akan memperkuat citra,
memberikan ekpektasi kepada customer
tentang makanan yang dipesan
serta kualitasnya. Studi yang dilakukan oleh Reynolds et al. (2005) meneliti
apakah font, warna, tata letak, dan desain menjadi factor penting yang
mempengaruhi perilaku customer, dan hasil menunjukan bahwa teknik
desain menu saat ini tidak dapat secara efektif menarik perhatian customer
dan pada akhirnya akan mempengaruhi kinerja restoran. Maka dari itu
ditarik kesimpulan bahwa perubahan yang lebih luas dalam desain menu
dan pemasaran produk mungkin diperlukan untuk meningkatkan cek rata-
rata. Hal ini dapat secara efektif dicapai melalui penerapan teknologi.
|
![]() 47
2.3.3.
Sistem Pemesanan Makanan Menggunakan PDA
Kemajuan Teknologi Informasi dan Komunikasi membuat
peningkatan jumlah industri untuk menggunakan teknologi untuk
menunjang aktifitas. Dalam bidang restoran, PDA (Personal Digital
Assistant) digunakan untuk mengganti sistem pemesanan makan tradisional
yang masih menggunakan kertas dan pena. Pada sistem order ini, customer
restoran yang datang akan diantarkan ketempat duduk, lalu memberikan
buku menu. Pelayan restoran akan pergi ke meja lain sambil menunggu
customer
untuk memilih menu. Ketika customer
sudah siap untuk
melakukan order, pelayan akan mencatat order
menggunakan PDA. Order
lalu akan dikirim ke dapur untuk segera diproses. Ketika customer
sudah
selesai makan dan ingin meminta bill, pelayan akan mengecek order
customer melalui PDA, lalu membuat bill tersebut.
|
48
Tetapi, banyak kelemahan yang dengan sistem ini. Contohnya
penyajian daftar menu masih menggunakan cara konvensional (menu cetak).
Jika ada perubahan terhadap menu seperti harga, ketersediaan, promosi dan
lainnya harus dilakukan secara manual. Lalu biasanya, daftar menu tersebut
hanya memiliki sedikit informasi tentang menu, sehingga pelayan harus bisa
menyediakan informasi tentang menu-menu tersebut.
|