7 BAB II
LANDASAN TEORI
2.1 Pengertian Kuliner
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.
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 :
(Sumber : Pressman, 2010, p39) Gambar 2.1 Metode Waterfall Model
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.
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
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.
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 Keterangan
Actor
Menspesifikasikan himpunan peran yang pengguna mainkan ketika berinteraksi dengan use case
Dependency
Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent) akan mempengaruhi
elemen yang tidak mandiri
(independent)
Generalization
Hubungan dimana objek anak (Descendent) berbagi perilaku dan struktur data dari objek yang ada di atasnya objek induk (ancestor)
Include Menspesifikasikan bahwa use case
sumber secara eksplisit
Extends Menspesifikasikan bahwa use case
sumber secara eksplisit
Association Apa yang menghubungkan antara objek satu dengan objek lainnya
Tabel Dibawah Ini Dari Lanjutan Tabel 2.1
System
Menspesifikasikan paket yang menampilkan sistem secara terbatas
Use Case
Deskripsi dari urutan aksi-aksi yang ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor
Note
Elemen fisik yang eksis saat aplikasi 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
Initial State
Untuk Melakukan Mulai Atau Start Point dalam activity
Tabel Dibawah Ini Dari Lanjutan Tabel 2.2
Final State
Untuk Melakukan akhir atau End Point dalam activity
Transition (Fork)
Untuk membagi transisi masuk ke dalam dua atau lebih transisi berakhir pada simpul sasaran orthogonal.
Transition (Join)
untuk menggabungkan beberapa transisi yang berasal dari sumber simpul di daerah orthogonal yang berbeda.
Decision
suatu titik atau point pada activity diagram yang mengindikasikan suatu kondisi dimana ada kemungkinan perbedaan transisi.
Swimlane
untuk menggambarkan objek mana yang 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
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
Actor
Orang proses, atau sistem lain yang berinteraksi dengan sistem informasi dan mendapat manfaat dari sistem.
Ditempatkan di bagian atas diagram.
Berpartisi secara beruturan dengan mengirimkan dan menerima pesan.
Object Lifeline Berpartisi secara berurutan dengan mengirimkan dan menerima pesan.
Ditempatkan di bagian atas diagram.
Garis Hidup Objek
Menandakan kehidupan obyek selama urutan.
Diakhiri tanda X pada titik dimana kelas tidak lagi berinteraksi.
Objek Sedang Aktif Berinteraksi
Persegi panjang yang sempit panjang 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. Object1
Tabel Dibawah Ini Lanjutan Dari Tabel 2.3 Return
Message
Hasil dari masukan yang dimasukan oleh 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 :
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.
Titlebar
Menubar Toolbar
Form
Gambar 2.2 Tampilan Jendela Program Basic 4 Android (Screenshoot)
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.
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)
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
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 orang-orang 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)
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/)