BAB II LANDASAN TEORI
Pengertian Kuliner
2.1
Menelusuri kuliner sebagai sebuah tradisi dan warisan yang orisinal sukar dilakukan karena pengaruh dan sentuh budaya dari luar. Mengenai cara atau teknik pengolahan makanan, setiap daerah memiliki kekhasan yang pada akhirnya memunculkan “cita rasa”. Menurut Soekresno (2000, p16) kuliner tersebut perlu dikelola secara profesional dengan adanya usaha restoran/rumah makan. adapun jenis-jenis restoran yaitu : 1.
Restoran Formal adalah industri jasa pelayanan makanan dan minuman yang dikelola secara komersial dan profesional dengan pelayanan ekslusif. Contoh : Main Dinning Room.
2.
Restoran Informal adalah industri jasa pelayanan makanan dan minuman yang dikelola secara komersial dan profesional dengan lebih mengutamakan kecepatan pelayanan, kepraktisan dan percepatan frekuensi yang silih berganti. Contoh : cafe, coffee shop, canteen.
3.
Spesial Restoran adalah industri jasa pelayanan makanan dan minuman yang dikelola secara komersial dan profesial dengan menyediakan makanan khas dan diikuti dengan penyajian yang khas dari suatu negara tertentu. Contoh : japanese restaurant, chinese restaurant.
2.2
Tahap Pengembangan Sistem Pada perancangan aplikasi ini penulis menggunakan metode waterfall
"waterfall modeling”. Karena metode tersebut merupakan metode yang merujuk kearah pendekatan yang sistematis dan seksuensial melalui tahap-tahap yang ada pada SDLC untuk membangun sebuah aplikasi perangkat lunak.
7
8
2.3
Metode System Development Life Cycle (SDLC) Mengutip dari buku Software Engineering : Seventh Edition karangan
Roger S. Pressman yang diterbitkan oleh McGraw-hill, pengertian dari SDLC adalah : "System Development Life Cycle atau siklus hidup pengembangan sistem adalah proses perancangan sistem serta metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut." Dalam penelitian skripsi ini, penulis menggunakan proses Waterfall Model sebagai pola pengembangan sistem. Definisi yang diartikan oleh Roger S. Pressman dalam bukunya Software Engineering : Seventh Edition dijelaskan bahwa : "Waterfall Model sebuah proses perancangan yang secara berurutan dan sering digunakan dalam proses pengembangan perangkat lunak." 2.3.1
Waterfall Model Menurut Pressman (2010, p39) Waterfall Model adalah model klasik
yang bersifat sistematis, berurutan dalam membangun software. Berikut ini gambaran dari Waterfall Model. Fase-fase dalam Waterfall Model menurut Referensi Pressman :
Gambar 2.1 Metode Waterfall Model (Sumber : Pressman, 2010, p39)
9
Berikut adalah penjelasan teori dari metode Waterfall Model menurut Pressman (2010, p39):
a.
Komunikasi (Communication) Langkah ini merupakan analisis terhadap kebutuhan software, dan
tahap untuk mengadakan pengumpulan data dengan melakukan pertemuan dengan customer, maupun mengumpulkan data-data tambahan baik yang ada di jurnal, artikel, maupun dari internet.
b.
Perencanaan (Planning) Proses planning merupakan lanjutan dari proses communication
(analysis requirement). Tahapan ini akan menghasilkan dokumen user requirement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan software, termasuk rencana yang akan dilakukan.
c.
Pemodelan (Modeling) Proses modeling ini akan menerjemahkan syarat kebutuhan ke sebuah
perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirement.
d.
Konstruksi (Construction) Construction merupakan proses membuat kode. Coding atau
pengkodean merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap sistem tersebut untuk kemudian bisa diperbaiki.
10
e.
Penyebaran (Deployment) Tahapan ini bisa dikatakan final dalam pembuatan sebuah software
atau sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem yang sudah jadi akan digunakan olseh user. Kemudian software yang telah dibuat harus dilakukan pemeliharaan secara berkala.
2.3.1.1
Keuntungan Dan Kekurangan Metode Waterfall Keuntungan yang didapat dengan menggunakan teknik waterfall ini
adalah sebagai berikut : a. Proses menjadi teratur. b. Estimasi proses menjadi lebih baik. Selain itu, teknik waterfall juga memiliki kekurangan, kekurangannya adalah sebagai berikut : a. Sifatnya kaku, sehingga susah melakukan perubahan ditengah proses. b. Jadwal menjadi lebih tak menentu.
2.4
Blackbox Pengujian menggunakan sekumpulan aktifitas validasi, dengan
pendekatan Black Box Testing. Menurut Shalahuddin dan Rosa (2011), Black Box Testing adalah menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan. Pengujian kotak hitam dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian Black Box Testing harus dibuat dengan kasus benar dan kasus salah. Menurut Pressman (2010), Black Box Testing juga disebut pengujian tingkah laku, memusat pada kebutuhan fungsional perangkat lunak. Teknik pengujian Black Box memungkinkan memperoleh serangkaian kondisi masukan yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program. beberapa jenis kesalahan yang dapat diidentifikasi adalah fungsi tidak
11
benar atau hilang, kesalahan antar muka, kesalahan pada struktur data (pengaksesan basis data), kesalahan performasi, kesalahan inisialisasi dan akhir program.
2.5
Unified Modeling Language (UML) Menurut Pressman (2005, p841), Unified Modeling Language (UML)
merupakan bahasa standar untuk menuliskan Blueprints dari perangkat lunak. UML dapat digunakan dalam memodelkan, memvisualisasi, menyusun, dan mendokumentasi sebuah arsitektur dari suatu sistem perangkat lunak. Sedangkan Menurut Whitten dan Bentley (2007, p371), UML adalah satu kumpulan konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait dengan objek. Dari pengertian diatas dapat disimpulkan bahwa unified modeling language (UML) merupakan suatu standarisasi pemodelan atau bahasa standar dalam merencanakan, memvisualisasikan, mendokumentasi dan merancang dari sebuah sistem software. 2.5.1
Diagram Unified Modeling Language (UML) Diagram berbentuk grafik yang menunjukkan simbol elemen model
yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram UML antara lain:
2.5.1.1
Use Case Diagram Menurut Whitten dan Bentley (2007, p382), Use Case diagram
menggambarkan interaksi antara sistem dan sistem eksternal, serta user. Dengan kata lain, Use Case diagram menggambarkan siapa yang akan menggunakan sistem dan dengan jalan apa yang diinginkan user untuk berinteraksi dengan sistem. Selain itu, Use Case digunakan untuk secara tekstual menggambarkan urutan langkah setiap interaksi tersebut.
12
Jadi, dapat disimpulkan bahwa use case diagram adalah diagram yang merupakan representasi visual yang mewakili interaksi anara pengguna dan sistem informasi unruk menunjukan peran dari pengguna dan bagaimana peran – peran menggunakan sistem. Berikut simbol dan fungsi masing-masing kegunaan dari use case diagram: Tabel 2.1 Simbol Use Case Diagram Nama
Simbol
Actor
Keterangan
Menspesifikasikan
himpunan
peran
yang
mainkan
ketika
pengguna
berinteraksi dengan use case
Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri Dependency
(independent) elemen
akan
yang
mempengaruhi tidak
mandiri
(independent) Hubungan Generalization
(Descendent)
dimana berbagi
objek perilaku
anak dan
struktur data dari objek yang ada di atasnya objek induk (ancestor) Include
Menspesifikasikan bahwa use case sumber secara eksplisit
Extends
«extends»
Menspesifikasikan bahwa use case sumber secara eksplisit
Association
Apa yang menghubungkan antara objek satu dengan objek lainnya
13
Tabel Dibawah Ini Dari Lanjutan Tabel 2.1 Menspesifikasikan
paket
yang
menampilkan sistem secara terbatas System
Deskripsi dari urutan aksi-aksi yang Use Case
ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor Elemen fisik yang eksis saat aplikasi
Note
dijalankan dan mencerminkan suatu sumber daya komputasi
(Sumber: Bell, Donald. (2003). UML basics: An introduction to the Unified Modeling Language)
2.5.1.2
Activity Diagram Menurut Whitten dan Bentley (2007, p382), Activity diagram
menggambarkan struktur objek dari sistem. Juga menampilkan object class dari sistem yang dibuat sebagai relationship antar objek lainnya. Aktivitas tersebut bisa terdiri dari elemen model yang menggambarkan mengenai serangkaian proses eksekusi yang sedang berjalan. Eksekusi tersebut bisa digerakkan oleh penyelesaian dari aktivitas lain, kemudian dari objek yang tersedia, atau dari kegiatan dari luar. Berikut simbol dan fungsi masing-masing dari kegunaan activity diagram : Tabel 2.2 Simbol Activity Diagram Nama
Simbol
Keterangan Untuk Melakukan Mulai Atau Start
Initial State
Point dalam activity
14
Tabel Dibawah Ini Dari Lanjutan Tabel 2.2 Untuk Melakukan akhir atau End Point Final State
dalam activity
Untuk membagi transisi masuk ke dalam dua atau lebih transisi berakhir pada Transition
simpul sasaran orthogonal.
(Fork) untuk menggabungkan beberapa transisi Transition
yang berasal dari sumber simpul di
(Join)
daerah orthogonal yang berbeda.
suatu titik atau point pada activity diagram yang mengindikasikan suatu Decision
kondisi
dimana
ada
kemungkinan
perbedaan transisi. untuk menggambarkan objek mana yang Swimlane
bertanggung
jawab
untuk
aktivitas
tertentu.
(Sumber: Bell, Donald. (2003). UML basics: An introduction to the Unified Modeling Language)
2.5.1.3
Sequence Diagram Menurut Whitten dan Bentley (2007, p382), Sequence diagram adalah
diagram yang menggambarkan bagaimana objek berinteraksi dengan objek lainnya melalui pesan dalam suatu eksekusin dari sebuah Use Case atau sebuah
15
operasi. Sequence diagram juga mengilustrasikan bagaimana pesan dikirim dan diterima oleh objek dan terjadi di dalam suatu sequence. Berikut simbol dan fungsi masing-masing kegunaan dari Sequence diagram : Tabel 2.3 Simbol Sequence Diagram Nama
Simbol
Keterangan Orang proses,
atau
sistem lain
yang
berinteraksi dengan sistem informasi dan mendapat manfaat dari sistem.
Actor
Ditempatkan di bagian atas diagram. Berpartisi
secara
beruturan
dengan
mengirimkan dan menerima pesan. Object Lifeline
Object1
Berpartisi
secara
berurutan
dengan
mengirimkan dan menerima pesan. Ditempatkan di bagian atas diagram. Menandakan Garis Hidup Objek
kehidupan
obyek
selama
urutan. Diakhiri tanda X pada titik dimana kelas tidak lagi berinteraksi. Persegi panjang yang sempit panjang
Objek Sedang Aktif Berinteraksi
ditempatkan di atas sebuah garis hidup. Menandakan ketika suatu objek mengirim atau menerima pesan.
Message
Objek Mengirim satu pesan ke objek lainnya.
Self-Call
Objek yang memanggil method-nya sendiri.
16
Tabel Dibawah Ini Lanjutan Dari Tabel 2.3 Return
Hasil dari masukan yang dimasukan oleh
Message
objek.
(Sumber: Bell, Donald. (2003). UML basics: An introduction to the Unified Modeling Language.)
2.6
Basic 4 Android Basic 4 Android merupakan alat pengembangan aplikasi yang cepat
untuk aplikasi Android asli, dikembangkan dan dipasarkan oleh Anywhere Softwhere Ltd. Basic 4 Android adalah sebuah alternatif untuk pemrograman dengan
java
dan
SDK
android
dan
termasuk
desainer
visual
yang
menyederhanakan proses membangun antarmuka pengguna yang menargetkan ponsel dan tablet dengan ukuran layar yang berbeda. Program disusun dapat diuji di AVD Manager emulator atau B4A Bridge, yang memungkinkan pengujian dalam telepon nyata. Bahasa itu sendiri mirip dengan visual basic dan visual basic.net meskipun disesuaikan dengan lingkungan android asli. Basic 4 Android adalah berorientasi objek dan bahasa event driven. Basic 4
Android
menghasilkan
aplikasi
Android
standar
ditandatangani yang dapat di-upload ke aplikasi toko seperti Google Play, Samsung Apps dan Amazon Appstore. Tidak ada dependensi khusus atau kerangka runtime yang diperlukan. 2.6.1
Jendela Utama Cara mengakses Basic 4 Android pertama kali yaitu klik double pada
icon yang ada di tampilan desktop. Tampilan start pertama kali membuka Basic 4 Android yaitu :
17
Menubar
Toolbar
Titlebar
Form
Gambar 2.2 Tampilan Jendela Program Basic 4 Android (Screenshoot) Gambar diatas merupakan tampilan dari jendela utama Basic 4 Android. Berikut penjelasan dari gambar 2.2 :
a. Titlebar Titlebar adalah bagian atas jendela yang menampilkan informasi atau nama dari jendela tersebut.
b. Menubar Menubar adalah sebuah strip horizontal yang berisi daftar menu yang tersedia untuk program tertentu. Misalnya file, edit, designer, project, tools, help.
c. Toolbar Toolbar adalah seperangkat icon atau tombol yang merupakan bagian dari antar muka aplikasi atau sistem operasi, biasanya terletak dibagian bawah menubar.
18
d. Form Form adalah mekanisme yang dipakai untuk mengumpulkan informasi atau meminta perintah dari pengguna. 2.7
Jquery Mobile Menurut Camded dan Matthews (2012, p1) jQuery Mobile Merupakan
User Interface Framework yang menggunakan jQuery sebagai bagian utama untuk pemrogramannya. Tidak seperti framework lainnya, jQuery Mobile fokus pada HTML dan CSS dengan cara merubahnya menjadi halaman yang mobile friendly dan memungkinkan pengguna untuk berinteraksi. Menurut Camden dan Matthews (2012, p4) jQuery Mobile hanya fokus dalam User Interface sebuah aplikasi, bukan programming-nya, hal ini dibuat agar user merasakan tampilan yang sama walaupun menggunakan mobile operating system yang berbeda. Untuk memperoleh tampilan yang sama pada setiap mobile operating system jQuery Mobile membuat CSS sendiri. jQuery Mobile memiliki berbagai method yang disediakan untuk memudahkan para pengembang dalam mengembangkan halaman mobile. Method yang disediakan oleh jQuery Mobile bergantung kepada kehadiran library jQuery, sehingga untuk menggunakan jQuery Mobile dibutuhkan jQuery.
2.8
Microsoft Frontpage Microsoft Frontpage merupakan salah satu software dari microsoft
yang digunakan untuk mendesain atau merancang halaman website. Microsoft Frontpage memiliki fitur editor gambar yang bisa terintegrasi dengan Microsoft Image Computer. Selain itu, terdapat dukungan format HTML, CSS, dan Java/Javascript karena terintegrasi dengan produk Microsoft Office lain, seperti Microsoft Acces atau Microsoft Excel memudahkan kita mendesain web menggunakan Microsoft Frontpage.
19
2.9
HTML Menurut Nugroho (2004, p2) HTML adalah Hyper Text Markup
Language yang merupakan sebuah bahasa scripting berguna untuk menuliskan halaman web. Pada web, HTML dijadikan sebagai Bahasa Script dasar yang berjalan bersama berbagai bahasa scripting pemrograman lainnya. Semua tag-tag HTML bersifat dinamis artinya kode HTML tidak dapat dijadikan sebagai file executable program. hal tersebut disebabkan, HTML hanyalah sebuah bahasa scripting yang dapat berjalan apabila dijalankan didalam browser (pengakses web). browser-browser yang mendukung HTML antara lain Internet explorer, netscape, navigator, operasi, mozilla, dan lain-lain.
2.10
CSS CSS (Cascanding Style Sheet) yang berfungsi untuk mengatur
tampilan dengan kemampuan jauh lebih baik dari tag maupun atribut standar HTML (hypertext markup laguange). CSS sebenarnya adalah suatu kumpulan atribute untuk fungsi format tampilan dan dapat mengontrol tampilan banyak dokumen secara bersamaan. keuntungan menggunakan CSS yaitu jika ingin mengubah format dokumen, maka tidak perlu mengedit satu per satu. Menurut Abdullah (2003) Penggunaan CSS ada dua cara yaitu dengan menyisipkan kode CSS langsung dalam kode HTML atau simpan menjadi file tersendiri berekstensi.css. Dengan menyimpan sebagai file tersendiri akan lebih memudahkan untuk mengontrol tampilan dan banyak dokumen secara langsung. CSS mendapat dukungan penuh pada browser versi 4 dan pada versi sebelumnya, hanya dengan internet eksplorer yang masih mampu mengenali CSS. perlu diketahui bahwa tampilan CSS dapat bila ditampilkan pada menu browser yang berbeda pula.
2.11
Android Menurut Mulyadi (2010) android merupakan subset perangkat lunak
untuk perangkat mobile yang meliputi sistem operasi, middleware dan aplikasi inti yang di release oleh google. sedangkan android SDK (Software development kit)
20
menyediakan tools dan api yang diperlukan untuk mengembangkan aplikasi pada platform android dengan menggunakan bahasa pemrograman Java. Pada dasarnya Android adalah sebuah nama untuk sistem operasi pada suatu gadget pada komputer tablet, smartphone, dan telepon celluler. Sistem yang digunakan berbasis Linux. Penggunaan gadget pastilah tidak asing lagi dengan sistem operasi yang dikembangkan oleh Google Inc. Ini. Simbol atau logo Android berbentuk robot dengan dua antena dikepalanya, ini melambangkan bahwa Android merupakan simbolisasi dari sistem operasi kelas atas untuk gadget dan smartphone. Dari awal peluncurannya pada tahun 2007, Android sudah beberapa kali melakukan pembaharuan versinya. Versi pada Android memiliki nama yang unik (kebanyakan dari nama makanan). 2.11.1
Sejarah Android Android merupakan salah satu OS yang berbasiskan Linux.
Perusahaan Android, Inc. Yang pertama kali mengembangkan sistem operasi ini dengan suntikan dana dari Google. Pada tahun 2005, pihak Google akhirnya bersedia membelinya dan kemudian di tahun 2007 OS ini diluncurkan secara resmi. Telepon genggam pertama yang memakai sistem operasi telah dijual pada tahun 2008 bulan Oktober. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance (OHA), konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Sony, Samsung, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, tepatnya 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, google merilis kode-kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Android, Inc. Berdiri di kota Palo Alto, salah satu kota terkenal di California (USA), tepatnya pada bulan Oktober tahun 2003. Pendirinya terdiri dari tiga orang yang ahli dalam bidang pengembangan aplikasi, mereka adalah Andy Rubin, Rich Miner, dan Chris white. Pada mulanya, mereka mengembangkan Android untuk perangkat elektronik sejenis kamera digital. Tapi karena permintaan konsumen terhadap perangkat itu tidak terlalu banyak, akhirnya
21
mereka mengalihkannya ke ponsel smartphone yang sudah diketahui besarnya peluang jika dapat diterapkan pada perangkat ini. Tidak seperti sistem operasinya lainnya, OS ini dikembangkan secara diam-diam meskipun dibuat oleh orangorang yang ahli dalam pengembangan aplikasi. Tanggal 17 Agustus 2005 Google mulai mengakui keberadaan Android dengan membelinya secara penuh dan menjadikan salah satu produk unggulannya. Salah satu faktor keberhasilan Android sebagai sistem operasi adalah terbukanya Google terhadap perangkat lunak yang diperbolehkan masuk (Open Source). Selain itu, Android juga telah mempunyai komunitas developer aplikasi tersendiri yang dapat meningkatkan fungsi perangkat seperti game android misalnya dan mungkin saat ini sudah lebih dari sejuta aplikasi yang bisa dioperasikan melalui android, dan Google Play menjadi apps shop utamanya. Di sana banyak sekali aplikasi yang bisa diunduh secara bebas baik yang berbayar maupun gratisan. Pengoperasian Android bekerja dengan adanya kontak langsung oleh penggunanya, yaitu dengan memberikan sentuhan pada layar, sentuhan itu akan ditanggapi secara cepat layaknya kita menyentuh di permukaan air. Bahkan terkadang ada getaran tertentu dari hasil sentuhan itu sebagai respon yang diberikan oleh OS kepada penggunanya. Giroskop, sensor proksimitas, serta akselerometer adalah beberapa hardware sebagai pelengkap OS ini yang mampu merespon tindakan-tindakan user, seperti mengubah layar menjadi landscape maupun potrait, atau digunakan untuk menyetir kendaraan pada beberapa permainan tertentu. 2.11.2
Versi Android Ada beberapa versi dan tingkat android yang selalu jadi update OS ini.
Jadi untuk kesempurnaan OS dan performa sangat tergantung dari versi apa yang digunakan. Semakin tinggi tingkat versi android semakain baik kinerjanya. Dan ini contoh-contoh versinya : 1.
Android 1.0 (API Level 1)
2.
Android 1.1 (API Level 2)
3.
Android 1.5 Cupcake (API Level 3)
4.
Android 1.6 Donut (API Level 4)
22
5.
Android 2.0 Eclair (API Level 5)
6.
Android 2.0.1 Eclair (API Level 6)
7.
Android 2.1 Eclair (API Level 7)
8.
Android 2.2-2.3 Froyo (API Level 8)
9.
Android 2.3-2.3.2 Gingerbread (API Level 9)
10. Android 2.3.2-2.3.7 Gingerbread (API Level 10) 11. Android 3.0 Honeycoom (API Level 11) 12. Android 3.1 Honeycoom (API Level 12) 13. Android 3.2 Honeycoom (API Level 13) 14. Android 4.0-4.0.2 Ice Cream Sandwich (API Level 14) 15. Android 4.0.3-4.0.4 Ice Cream Sandwich (API Level 15) 16. Android 4.1 Jelly Bean (API Level 16) 17. Android 4.2 Jelly Bean (API Level 17) 18. Android 4.3 Jelly Bean (API Level 18) 19. Android 4.4 Kitkat (API Level 19) 20. Android 5.0 Lollipop (API Level 21) (sumber : http://www.infoteknologi.com/)