APLIKASI PENGENALAN JENIS-JENIS MAKANAN KHAS JAWA TENGAH BERBASIS ANDROID
NASKAH PUBLIKASI
diajukan oleh Gilang Ilyas Hakim 10.11.4428
kepada JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2014
NASKAH PUBLIKASI
APLIKASI PENGENALAN JENIS-JENIS MAKANAN KHAS JAWA TENGAH BERBASIS ANDROID
disusun oleh Gilang Ilyas Hakim 10.11.4428
Dosen Pembimbing
Heri Sismoro, M.Kom NIK. 190302057
Tanggal, 25 Juni 2014 Ketua Jurusan Teknik Informatika
Sudarmawan, MT NIK. 190302035
ii
APPLICATION INTRODUCTION OF THE TYPES OF FOODS CENTRAL JAVA BASED ANDROID APLIKASI PENGENALAN JENIS-JENIS MAKANAN KHAS JAWA TENGAH BERBASIS ANDROID Gilang Ilyas Hakim Heri Sismoro Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA ABSTRACT The development of technology nowadays has grown rapidly, one android smartphone. The advantages of android operating system than the other smartphone operating system is open source so that users can change the features possessed by the android in accordance with what they want, so that adds to the perfection of the android operating system. Many users today tend to use smartphone apps android because there are attractive and easy to use. Applications Introduction Types of Foods of Central Java is an application that provides information about the types of foods and recipes in the Central Java region. This application provides a menu containing a list of local food in Central Java. Applications Introduction Types of Foods of Central Java is different from other applications, features in this application allows the user to use the application to expedite the process in finding food and recipes typical of Central Java with ease, without looking at books and brochures again. Keywords: Traditional Javanese Foods, Android, IDE Eclipse, JAVA SDK, Android SDK.
iii
1.
Pendahuluan
1.1
Latar Belakang Perkembangan teknologi pada saat ini sudah berkembang pesat, salah satunya
smartphone android. Kelebihan sistem operasi android dibanding sistem operasi smartphone lainnya adalah bersifat open source sehingga pengguna dapat mengubah fitur-fitur yang dimiliki oleh android sesuai dengan yang mereka inginkan, sehingga menambah kesempurnaan dari sistem operasi android. Banyak pengguna yang sekarang ini cenderung menggunakan smartphone android karena terdapat aplikasi yang menarik dan mudah digunakan. Jawa Tengah merupakan provinsi yang sangat luas dengan begitu banyak macam kuliner. Sehingga makanan di Jawa Tengah pun memiliki banyak sekali keragaman, terutama apabila ditekankan kepada makanan tradisional. Makanan tradisional merupakan suatu bentuk identitas dan ciri khas suatu provinsi. Sebagian generasi muda dari mereka masih banyak yang belum mengenal makanan-makanan yang ada di daerah mereka sendiri. Generasi muda kini tidak memiliki pengetahuan dan pengenalan mengenai makanan tradisional Jawa Tengah, padahal pertimbangan kita memilih untuk membeli suatu makanan ialah bahwa kita mengenal makanan tersebut. Dahulu untuk mencari informasi tentang jenis makanan kita hanya bisa melihat di brosur, majalah maupun koran. Untuk menghemat kertas kita juga harus membutuhkan biaya untuk membeli barang seperti itu. Berdasarkan latar belakang tersebut, penulis mencoba memberikan sebuah alternatif mengambil judul skripsi “Aplikasi Pengenalan Jenis-jenis Makanan Khas Jawa Tengah Berbasis Android”. 1.2
Rumusan Masalah Berdasarkan latar belakang yang telah dijelaskan di atas dapat diambil suatu
rumusan masalah sebagai berikut: Bagaimana merancang aplikasi pengenalan jenis-jenis makanan Jawa Tengah berbasis android yang mudah digunakan secara praktis, dan mudah bagi pengguna dengan cepat mengetahui informasi tentang jenis-jenis makanan khas Jawa Tengah? 1.3
Batasan masalah Pengembangan aplikasi pengenalan jenis-jenis makanan ini sangat luas,
sehingga perlu dibatasi yaitu meliputi: 1. Aplikasi ini untuk pengenalan jenis-jenis makanan khusus daerah Jawa Tengah. 2. Perancangan aplikasi ini hanya menyediakan informasi tentang deskripsi, gambar dan video beserta daerah asal resep masakan. 3. Penggunaanya hanya digunakan pada smartphone berbasis android mobile.
1
1.4
Tujuan Perancangan aplikasi ini memiliki tujuan sebagai berikut: 1. Memenuhi persyaratan kelulusan bagi jenjang Strata 1 STMIK AMIKOM Yogyakarta. 2. Dapat mempermudah dalam mencari informasi tentang makanan daerah Jawa Tengah. 3. Dapat mempercepat referensi resep masakan.
1.5
Manfaat Aplikasi ini memiliki manfaat bagi beberapa pihak, diantaranya sebagai berikut: 1. Manfaat perancangan aplikasi ini bagi penulis sebagai mahasiswa STMIK AMIKOM Yogyakarta: a. Mengembangkan
pola
ilmu
pengetahuan
dan
membuka
wawasan
pengetahuan sesuai dengan bidang teknologi informasi. b. Menerapkan ilmu, teori-teori dan praktikum selama mengikuti pendidikan di STMIK AMIKOM Yogyakarta ke dalam aplikasi nyata. 2. Manfaat perancangan aplikasi ini bagi pengguna smartphone: a. Mempermudah pengguna dalam mencari informasi tentang makanan daerah Jawa Tengah. b. Pengguna mendapatkan layanan informasi jenis-jenis makanan dengan cepat. c.
Mengurangi penggunaan kertas dan tinta pulpen karena resep tidak perlu ditulis.
3. Manfaat secara umum yaitu dapat menjadi referensi untuk penulis terkait dengan masalah perancangan pengenalan jenis-jenis makanan khas Jawa Tengah berbasis android dan aplikasi sejenisnya. 1.6
Metode Penelitian Metodelogi pengumpulan data meliputi studi pustaka yang informasinya penulis
dapatkan dari buku dan sumber-sumber tertulis yang berkaitan dengan perancangan aplikasi. 1. Pengamatan (observasi) 2. Studi Kepustakaan 1.7
Sistematika Penulisan Penulisan skripsi ini dibagi menjadi 5 Bab. Pembagian ini akan memudahkan
pembahasan dan diharapkan dapat tersusun secara sistematis serta mudah untuk dimengerti. Adapun sistematika penulisan yang digunakan dalam penulisan skripsi ini adalah sebagai berikut:
2
BAB I PENDAHULUAN Bab ini menguraikan tentang latar belakang masalah, rumusan masalah, batasan masalah, maksud dan tujuan, serta sistematika penulisan. BAB II LANDASAN TEORI Bab ini diuraikan dengan teori-teori dari kegiatan studi pustaka yang dilakukan penulis sebagai dasar teori yang menjadi acuan dalam penyusunan skripsi ini. BAB III PERANCANGAN SISTEM Pada bab ini akan diuraikan tentang analisis dan perancangan aplikasi android secara umum serta segala kelebihan dan kekurangan. BAB IV IMPLEMENTASI DAN PEMBAHASAN Pada bab ini akan dibahas tentang hal-hal yang sudah dicapai dalam bagian-bagian sebelumnya,proses pengoreksian aplikasi android, dan hasil implementasi dari aplikasi android yang sudah dibuat. BAB V PENUTUP Merupakan bab penutup yang berisi kesimpulan-kesimpulan dari proses pembuatan
aplikasi
pengenalan
jenis-jenis
makanan
khas
Jawa
Tengahberbasis android dan berupa saran untuk perbaikan aplikasi yang dihasilkan untuk masa yang akan datang.
2.
Landasan Teori
2.1
Sistem
2.1.1
Definisi Sistem Sistem merupakan sekumpulan objek-objek yang saling berelasi dan berinteraksi
serta hubungan antar objek bisa dilihat sebagai suatu satu kesatuan yang diracang untuk mencapai satu tujuan . Dengan demikian secara sederhana sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur atau variable-variabel yang saling terorganisasi, saling berinteraksi, dan saling bergantung sama lain. Menurut Murdick dan Ross (1993), sistem sebagai seperangkat elemen yang digabungkan satu dengan yang lainnya untuk satu tujuan bersama. Sedangkan definisi sistem menurut Scoot (1996), sistem terdiri dari unsur-unsur seperti masukan (input), pengolahan (processing) serta keluaran (output). Lain halnya dengan yang dikemukakan oleh Mc. Leod (1995), mendefinisikan sistem sebagai kelompok elemen-elemen yang terintegrasi dengan maksud untuk mencapai tujuan yang sama.
3
2.1.2
Karakteristik Sistem Untuk memahami atau mengembangkan suatu sistem, maka perlu membedakan
unsur-unsur dari sistem yang membentuknya. Berikut adalah karakteristik sistem yang dapat membedakan suatu sistem yang dapat membedakan suatu sistem dengan sistem lainnya: 1. Batasan (boundary) Penggambaran dari suatu elemen atau unsur mana yang termasuk di dalam sistem dan mana yang di luar sistem. 2. Lingkungan (environment) Segala sesuatu di luar sistem, lingkungan yang menyediakan asumsi, kendala, dan input terhadap suatu sistem. 3. Masukan (input) Sumber daya (data, bahan baku, peralatan, energi) dari lingkungan yang dikonsumsi dan dimanipulasi oleh suatu sistem. 4. Keluaran (output) Sumber daya atau produk (informasi, laporan, dokumen, tampilan layer komputer, barang jadi) yang disediakan untuk lingkungan sistem oleh kegiatan dalam suatu sistem. 5. Komponen (component) Kegiatan-kegiatan atau proses dalam suatu sistem yang mentransformasikan input menjadi bentuk setengah jadi (output). Komponen ini bisa merupakan subsistem dari sebuah sistem. 6. Penghubung (interface) Tempat dimana komponen atau sistem dan lingkungannya bertemu atau berinteraksi. 7. Penyimpanan (storage) Area yang dikuasai dan digunakan untuk penyimpanan sementara dan tetap dari informasi, energi, bahan baku, dan sebagainya. Penyimpanan merupakan suatu media penyangga diantara komponen tersebut bekerja dengan berbagai tingkatan yang ada dan memungkinkan komponen yang berbeda dari berbagai data yang sama. 2.2
Android
2.2.1
Sejarah Android Sejarah sistem operasi android dimulai sejak diumumkannya open Handset 1
Alliance di akhir tahun 2007 . Sebenarnya ide untuk membuat sistem operasi open 1
Edy Winarno ST, M.Eng,Ali Zaki 2002, Hacking dan Programming Hal.3-5
4
source buat peranti embedded sudah ada sejak lama, karena backing dari google yang sangat agresif, maka Android bisa terkenal hanya dalam beberapa tahun saja. Karena itu, sejak awal Android sudah diatur agar bisa memiliki tampilan yang seragam, dan userexperience yang sama di semua platform. Caranya dengan melakukan abstraksi pada perbedaan hardware. Sistem operasi Android menutup aplikasi dari modifikasi yang hardware spesifik. Android adalah susunan dari beberapa perangkat lunak (software stack). Stack ini secara umum meliputi sistem operasi, middleware, dan aplikasi-aplikasi kunci. Android awalnya tidak dikembangkan oleh google, melainkan dikembangkan oleh sebuah perusahaan bernama Android Inc. Karena melihat banyak user yang online dengan perangkat mobile, maka google melihat peluang yang sangat besar bahwa perangkat mobile ini memiliki masa depan cerah, sehingga Android Inc diakusisi oleh Google pada tahun 2005. 2.2.2
Fitur-fitur Android Android adalah sebuah sistem operasi
mobile open sourcedan dapat
dimanufaktur untuk dikustomisasi sehingga tidak ada konfigurasi yang pasti mengenai software dan hardware-nya. Akan tetapi, secara garis besar Android sendiri mendukung fitur-fitur berikut ini. 1.
2
Storage Mendukung SQLite. SQLite adalah sebuah database relational lite (versi ringan) yang digunakan untuk penyimpanan data.
2.
Konektivitas Mendukung koneksi GSM/EDGE, IDEN, CDMA, EVDO, UMTS, Bluetooth, Wifi, LTE, dan Wimax.
3.
Messaging Mendukung SMS dan MMS.
4.
Web Browser Web browser yang digunakan adalah browser berbasis opensourceWebkit, dengan engine java script Chrome V8.
5.
Media Support Dukungan media meliputi file media bertipe; H.263, H.264 (dalam bentuk 3GP atau MP4container), MPEG-4 SP, AMR-WB (3GP container), AAC, HE-AAC (dalam bentuk MP4 atau 3GP container), MP3, MIDI, OggVorbis, WAV, JPEG, PNG, GIF, dan BMP.
2
Wahana Komputer, Step by Step Menjadi Programmer Android, hal 3-4
5
6.
Dukungan Hardware Sensor accelerometer, Camera, Kompas digital, Sensor proximity, dan GPS (Global Positioning System).
7.
Multi Touch Mendukung layar dengan dukungan multi touch.
8.
Multitasking Kemampuan untuk melaksanakan tugas secara bersamaan.
9.
Flash Mendukung animasi Flash.
10. Tethering Mendukung berbagi koneksi internet. 2.3
Unified Modelling Language (UML)
2.3.1
Pengertian UML Unified Modelling Language (UML) adalah sebuah "bahasa" yang telah menjadi
standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem 3
piranti lunak . UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. Seperti syntax/semantik.
bahasa-bahasa Notasi
UML
lainnya, merupakan
UML
mendefinisikan
sekumpulan
bentuk
notasi khusus
dan untuk
menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan
UML
syntax
mendefinisikan
bagaimana
bentuk-bentuk
tersebut
dapat
dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). 2.3.1.1 Use Case Diagram Use casediagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
3
http://www.setia.staff.gunadarma.ac.id/Downloads/files/Modul_UML.pdf diakses 23-11-2013 pukul 23.55
6
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaanpekerjaan tertentu. 2.3.1.2 Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuahobjek dan merupakan inti dari pengembangan dan desain beroientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode/fungsi). Class diagram mnggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lain-lain.(Sri Dharwiyanti, 2003) 2.3.1.3 Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna,
display, dan sebagainya) berupa message yang
digambarkan terhadap waktu. Sequencediagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). 2.3.1.4 Activity Diagram Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedangdirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activitydiagram juga dapat menggambarkan proses parallel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). 2.4
Java
2.4.1
Pengertian Java Java adalah suatu jenis teknologi pemrograman yang dikembangkan oleh Sun
Microsystem. Teknologi java dapat digunakan untuk pembuatan aplikasi database, web, 4
jaringan, ataupun grafis . Java merupakan bahasa pemrograman yang sangat andal. Keandalannya ini terbukti sesuai dengan slogannya yaitu “Write One Run Everywhere” yang mana penulisan kode program dalam bahasa java dapat dijalankan pada berbagai
4
Wahana Komputer, Membangun Aplikasi Bisnis dengan NetBean7, hal 2
7
sistem operasi yang digunakan asalkan ada mesin penerjemah bahasa java yang disebut 5
dengan Java Virtual Machine atau JVM sehingga lebih praktis untuk diterapkan . 2.5
Konsep OOP (Object Oriented Programming) Pemrograman berorientasi objek berarti sebuah teknik pemrograman yang dalam
proses pengembangannya menggunakan terminology objek, dimana setiap objek memiliki atribut beserta dengan fungsi yang dapat saling berinteraksi satu dengan yang 6
lain seperti halnya objek . Objek sendiri adalah bentuk nyata dari sebuah class dan class 7
merupakan kumpulan dari atribut dan method/fungsi . 2.6
Perangkat Lunak Yang digunakan
2.6.1
Eclipse Eclipse Adela IDE (IntergratedDevelopmentEnvironment) untuk mengembangkat
perangkat lunak dan dapat dijalankan disemua platform. Berikut adalah sifat-sifat eclipse: a. Multi-Platform: bisa digunakan di semua sistem operasi seperti Microsoft Windows, Linux, Mac OS X, Solaris, AIX, dan HP-UX. b. Multi Language: Eclipse dikembangkan menggunakan bahasa pemrograman java, akan tetapi Eclipse mendukung pengembangan aplikasi menggunakan bahasa pemrograman lainnya seperti C/C++, Cobol, Phyton, Perl, dan PHP. c.
Multi role: selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti pengembangan web, dokumentasi, test perangkat lunak dan lain sebagainya.
2.6.2
Arsitektur Eclipse Sejak versi 3.0 Eclipse pada dasarnya merupakan sebuah kernel yang
mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang dapat diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). 2.6.3
SDK (Software Development Kit) Android SDK adalah toolsAPI (Application Programming Interface) sebagai alat
bantu dalam mengembangkan aplikasi pada platform Android dengan menggunakan pemrograman bahasa Java. Android merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware yang dirilis oleh Google.
5
Wahana Komputer, Membangun Aplikasi Bisnis dengan NetBean7, hal 2 Stendy B. Sakur, PHP 5 Pemrograman Berorientasi Objek – Konsep & Implementasi, hal 178 7 Ibid. 6
8
2.6.4
ADT (Android Development Tools) ADT adalah plug-in yang didesain untuk IDE Eclipse yang memberi kita
kemudahan dalam mengembangkan aplikasi android atau penghubung antara IDE Eclipse dengan Android SDK. ADT yang dikenal dengan Plug-in Eclipse, Plug-in ini yang membuat dan dapat mempercepat dalam pembuatan project berbasis Android. 3.
Analisis dan Perancangan
3.1
Analisis Sistem
3.1.1
Analisis SWOT Analisis menggunakan SWOT agar lebih jelas dalam aspek Kekuatan (Strenght),
Kelemahan (Weakness), Peluang (Opportunity), dan Ancaman (Threat) pada sistem terdahulu. Tabel 3. 1 Perumusan Analisis SWOT
No 1.
Analisis SWOT Strenght
Sistem Yang Akan Dirancang Dapat mencari
2.
Weakness
mempermudah
dalam
informasi
tentang
Sistem Yang Sudah Ada Informasi yang di berikan kurang
makanan daerah Jawa Tengah.
lengkap.
Hanya mencakup informasi jenis
Menu yang di
makanan, video beserta resep
tampilkan kurang
masakan khusus daerah khas
menarik.
Jawa Tengah. 3.
Opportunity
Dapat referensi
4.
Threat
dikembangkan resep
untuk
masakan
di
Hanya digunakan untuk kalangan rumah
rumah makan.
tangga.
Ada aplikasi yang serupa namun
Ada aplikasi lain yang
gratis.
hampir serupa namun memakai memori yang besar.
3.1.2
Analisis Kebutuhan Sistem Analisis kebutuhan sistem adalah dimana beberapa kebutuhan bahan dalam
sistem yang akan dipergunakan untuk menambah dan membantu dalan proses
9
pembuatan suatu obyek. Dibagian ini akan dibagi menjadi dua bagian yaitu Analisis kebutuhan fungsional dan analisis kebutuhan non-fungsional. Untuk mempermudah analis sistem dalam menentukan keseluruhan kebutuhan secara lengkap, maka dibagian ini akan dibagi menjadi dua bagian yaitu analisis kebutuhan fungsional (Functional Requirement) dan analisis kebutuhan non-fungsional (Non-Functional Requirement). Analisis ini digunakan untuk menentukan kemungkinan apakah mengembangkan aplikasi ini dapat diteruskan atau tidak. Ini dilakukan agar sistem baru tersebut benarbenar dapat bermanfaat atau tidak. Berdasarkan pengamatan, aplikasi yang diusulkan layak karena: 1.
Aplikasi lunak yang digunakan untuk menjalankan aplikasi mudah diperoleh dipasaran.
2.
Content aplikasi yang akan dibuat tidak melanggar hukum atau undang-undang yang berlaku.
3.
Perangkat lunak yang digunakan adalah open source. Dalam analisis kelayakan sistem terdapat beberapa aspek kelayakan, seperti
analisis kelayakan teknologi, analisis kelayakanhukum, analisis kelayakan operasional, dan analisis kelayakan ekonomi. 3.2
Perancangan Sistem Perancangan sistem yang dimaksud yaitu untuk memberikan gambaran secara
umum mengenai sistem yang akan dibuat. Perancangan sistem akan mengidentifikasi komponen-komponen sistem yang dirancang secara terperinci. Perancangan sistem terdiri dari: 3.2.1
Perancangan UML(Unified Modelling Language) Perancangan sistem yang digunakan adalah “Pengenalan Jenis-jenis Makanan
Khas Jawa Tengah Berbasis Android”Perancangan UML meliputi rancangan sistem yang akan dibangun (Use Case Diagram), rancangan alur kerja (Aktivity Diagram), rancangan antar class (Class Diagram), dan rancangan integrasi antar objek (sequence Diagram). 3.2.1.1 Use CaseDiagram Berikut ini adalah rancangan use case diagram dari aplikasi “Aplikasi Pengenalan Jenis-jenis Makanan Khas Jawa Tengah Berbasis Android” yang akan dibuat, disini dijelaskan siapa dan apa saja yang berperan ketika aplikasi dijalankan dan apa saja yang dilakukan. 3.2.1.2 Activity Diagram Dalam Unified Modelling Language (UML), diagram alur kerja dapat digunakan untuk menggambarkan operasional bisnis dan langkah demi langkah alur kerja komponen dalam sistem.
10
3.2.1.3 Class Diagram Aplikasi Pengenalan Jenis-jenis Makanan Khas Jawa Tengah terdiri atas objek penyusun yang menjadi dasar dalam pembuatan aplikasi ini. Objek-objek tersebut saling berhubungan dengan objek yang lain, tergantung dari fungsi-fungsi dan method yang menghubungkan 3.2.1.4 Sequence Diagram Sequence Diagram akan mempermudah programming untuk lebih terarah dengan menunjukkan proses apa saja dan dimana proses tersebut terjadi.Sequence Diagram juga menunjukkan alur, method-method, dan interaksi antar objek di dalam dan sekitar sistem (termasuk pengguna, tampilan, dan sebagainya) berupa pesan yang digambarkan terhadap waktu. Sequence diagram terdiri antar dimensi vertical (waktu) dan dimensi horizontal (objek, objek yang terkait). Sequence diagram sering digunakan untuk menggambarkan skenario atau rangkaian langkah langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. 4.
Implementasi dan Pembahasan
4.1
Implementasi dan Pembahasan Tampilan Aplikasi
4.1.1
Implementasi dan Pembahasan Tampilan Awal Implementasi dan pembahasan tampilan awal merupakan hasil perancangan dari
bab sebelumnya yang pertama kalinya bekerja. Pada tampilan ini pengguna dapat menunggu waktu loading sampai selesai untuk ke halaman menu utama. Tidak ada tombol button pada tampilan, seperti gambar berikut:
Gambar 4. 1 Tampilan Awal
11
Berikut adalah script untuk menampilkan tampilan awal pada aplikasi: publicclass SplashScreenActivity extends Activity {
@Override protectedvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.splashscreen); Thread timer = new Thread(){ @Override publicvoid run() { try { for (int i = 0; i < 50; i++) { sleep(50); } } catch (Exception e) { e.printStackTrace(); }finally{ Intent intent= new Intent(SplashScreenActivity.this, MainActivity.class); startActivity(intent); finish(); }; } };
12
timer.start(); } } Kesimpulan: Dari skenario diatas dapat dilihat bahwa proses untuk menampilkan tampilan awal telah berhasil dilakukan pada program ini. 4.1.2
Implementasi dan Pembahasan Menu Utama Pada halaman ini akan muncul menu utama 5 (lima) button, yaitu buttonProvinsi
Jawa Tengah, button Pencarian, buttonAbout, buttonHelp,dan buttonExit, terdapat 5 (lima) button, apabila button-button tersebut ditekan maka akan masuk ke halaman sesuai yang diinginan, buttonProvinsi Jawa Tengah berisi tentang daftar semua kota yang ada di Jawa Tengah, buttonPencarianberisi halaman tentang mencari jenis makanan dengan mudah dan cepat tanpa harus ke menu kota, buttonaboutberisi halaman berupa informasi aplikasi dan pembuat aplikasi, button helpberisi halaman berupa informasi pada pembuat aplikasi tentang bagaimana cara mengakses penggunaan aplikasi, buttonexitberisi halaman untuk keluar atau tidak dari aplikasi. Seperti pada gambar berikut:
Gambar 4. 2 Menu Utama Berikut adalah script untuk memanggil menu utama pada aplikasi: publicclass MainActivity extends Activity{ Button btn_kota, btn_about, btn_cari, btn_help, btn_exit;
13
@Override protectedvoid onCreate(Bundle savedInstanceState) { setContentView(R.layout.main_layout);
btn_kota = (Button) this.findViewById(R.id.btn_kota_jateng); btn_kota.setOnClickListener(new OnClickListener() { @Override publicvoid onClick(View arg0) { Intent i = new Intent(MainActivity.this, KotaActivity.class); startActivity(i); } }); btn_cari = (Button) this.findViewById(R.id.btn_pencarian_makanan); btn_cari.setOnClickListener(new OnClickListener() { @Override publicvoid onClick(View arg0) { Intent i = new Intent(MainActivity.this, PencarianActivity.class); startActivity(i); } }); btn_about = (Button) this.findViewById(R.id.btn_about);
14
btn_about.setOnClickListener(new OnClickListener() { @Override publicvoid onClick(View arg0) { Intent i = new Intent(MainActivity.this, AboutActivity.class); startActivity(i); } }); btn_help = (Button) this.findViewById(R.id.btn_help); btn_exit = (Button) this.findViewById(R.id.btn_exit); btn_exit.setOnClickListener(new OnClickListener() { @Override publicvoid onClick(View arg0) { Exit(); } }); super.onCreate(savedInstanceState); } Kesimpulan: Pada skenario yang telah diuraikan sesuai dengan script diatas dapat dilihat bahwa bagian menu utama telah berhasil menampilkan button-button tiap aksi dan apabila button tersebut diklik makan akan lanjut ke halaman berikutnya. 4.1.3
Implementasi dan Pembahasan Provinsi Jawa Tengah Untuk memilih button Provinsi Jawa Tengah pengguna akan diarahkan menuju
halaman dari Provinsi Jawa Tengah tersebut, dan terdapat daftarkota yang ada di Jawa Tengah.seperti pada gambar berikut:
15
Gambar 4. 3 Daftar Kota Provinsi Jawa Tengah Berikut adalah script untuk menampilkan Provinsi Jawa Tengah: publicclass KotaActivity extends Activity implements OnItemClickListener{ ListView list; DBMakananKhas db; @Override protectedvoid onCreate(Bundle savedInstanceState) { setContentView(R.layout.list_kota); list = (ListView) this.findViewById(R.id.listView1); list.setOnItemClickListener(this);
db = new DBMakananKhas(this); db.open(); Cursor c = db.getKota(); ArrayList
k = new ArrayList(); if (c.moveToFirst()) {
16
do { Kota kota = new Kota(); kota.setId(c.getInt(c.getColumnIndex("id_kota")));
kota.setNama_kota(c.getString(c.getColumnIndex("nama_kota"))); k.add(kota); } while (c.moveToNext()); } list.setAdapter(new AdapterKota(KotaActivity.this, k)); c.close(); db.close(); super.onCreate(savedInstanceState); } @Override publicvoid onItemClick(AdapterView> arg0, View arg1, int posisi, long id) { Intent i = new Intent(this, JenisActivity.class); i.putExtra("kota", id); startActivity(i); } } Kesimpulan: Pada skenario dengan script diatas dapat dilihat bahwa bagian halaman Provinsi Jawa Tengah telah berhasil menampilkan program yang diinginkan berupa daftar kota yang ada di Jawa Tengah.
17
4.2
Pembahasan Pembuatan Database Database merupakan kumpulan data yang pada umumnya menggambarkan
aktivitas-aktivitas dan pelakunya dalam suatu organisasi. Sistem database adalah sistem komputer yang digunakan untuk menyimpan dan mengelola data tersebut. Berikut adalah script database untuk pemanggilan data: publicclass DBHelper extends SQLiteOpenHelper{ privatestatic String name ="DBMakananKhas.db"; privatestaticintversion=1; //create table private
String
create_kota
=
"create
table
KOTA
(id_kota
integer primary key autoincrement, nama_kota varchar(25))"; private
String
create_jenis="create
table
JENIS(id_jenis
integer primary key autoincrement, jenis varchar(100))"; private
String
create_nama_resep="create
table
NAMA_RESEP(id_nama_resep integer primary key autoincrement, id_kota integer,
id_jenis
integer,
nama_resep
varchar(100),
bahan
text,
deskripsi text, cara_pembuatan text, gambar blob)";
private
String
insert_kota
=
"INSERT
INTO
KOTA(id_kota,
nama_kota) VALUES " +
"(1,'BANJARNEGARA'),(2,'BLORA'),(3,'BOYOLALI'),(4,'BREBES'),(5 ,'DEMAK')," +
"(6,'JEPARA'),(7,'KLATEN'),(8,'KUDUS'),(9,'PATI'),(10,'PEKALON GAN')," +
"(11,'PEMALANG'),(12,'PURBALINGGA'),(13,'PURWODADI'),(14,'PURW OKERTO'),(15,'PURWOREJO')," +
18
"(16,'REMBANG'),(17,
'SALATIGA'),(18,
'SEMARANG'),(19, 'SOLO'),(20,'SRAGEN')," + "(21,'SUKOHARJO'),(22, 'TEGAL'),(23,'UNGARAN'),(24,'WONOGIRI'),(25,'WONOSOBO');"; private String insert_jenis = "INSERT INTO JENIS(id_jenis, jenis)
values
(1,'MAKANAN'),
(2,
'KUE'),(3,'CEMILAN'),(4,'MINUMAN');";
Kesimpulan: Database dibuat secara manual dengan menambahkan class () sendiri pada eclipse, sehingga dapat mempermudah dalam pemanggilan data tersebut. 5.
Penutup
5.1
Kesimpulan Berdasarkan uraian-uraian yang telah penulis jelaskan pada bab-bab terdahulu
dan hasil rancangan serta implementasi dari aplikasi android, maka dapat diambil kesimpulan berikut: 1. Sistem ini dirancang dengan tampilan yang mudah digunakan pengguna dalam pemakaian aplikasi. Mulai dari rancangan sistem, rancangan UML (Unified Modelling Language), dan rancangan interface. Sehingga akan mempernudah pengguna dalam mencari informasi tentang makanan khas beserta resep masakan khas daerah Jawa Tengah. 2. Aplikasi ini dapat dimanfaatkan sebagai alat untuk pengguna dalam belajar memasak makanan khas daerah Jawa Tengah. 5.2
Saran Beberapa saran yang dapat penulis berikan untuk proses pelaksanaan dan
pengembangan aplikasi ini adalah sebagai berikut:
1. Diharapkan sebelum menginputkan data harus akurat dan lengkap agar informasi yang disajikan valid.
2. Data yang diberikan kepada pengguna diharapkan mencakup seluruh informasi mengenai makanan khas Jawa Tengah. Adapun kelemahan pada aplikasi ini antara lain sebagai berikut: a) Sebatas aplikasi pengenalan jenis-jenis makanan khusus Jawa Tengah. b) Aplikasi ini hanya dapat dijalankan untuk ponsel berbasis android minimal versi gingerbread.
19
DAFTAR PUSTAKA
Al Fatta, Hanif. 2007. Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing Perusahaan dan Organisasi Modern. Yogyakarta: C.V. ANDI OFFSET Nugroho, Adi. 2005. Analisis dan Perancangan Sistem Informasi dengan Metode Berorientasi Objek. Bandung: C.V. Informatika Safaat H, Nazaudin. 2012. Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. Bandung: Informatika Bandung Suhendar, A, S.Si. dan Gunadi, Hariman S.Si., MT. 2002. Visual Modelling Menggunakan UML dan Rational Rose. Bandung: Informatika Bandung Wahana Komputer. 2012. PanduanAplikatif & Solusi Membangun Aplikasi Bisnis dengan NetBeans 7. Yogyakarta: Penerbit Andi Winarno, Edy. 2012. Hacking & Programming dengan android SDK untuk Advanced. Jakarta: PT. Elex Media Komputindo
20