APLIKASI PETA PARIWISATA KOTA SURABAYA BERBASIS ANDROID SKRIPSI
DiajukanUntukMemenuhiSebagai PersyaratanDalamMemperolehGelar
SarjanaKomputer Program StudiTeknikInformatika
Diajukanoleh : REVA ELSYA PRADANA
NPM : 0834010232
Kepada
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR
KATA PENGANTAR
Puji syukur penulis panjatkan kehadirat Allah SWT yang telah memberikan segala
nikmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi tepat pada waktunya.
Atas limpahan serta karunia dan rahmat-Nya penulisan laporan skripsi yang berjudul
“APLIKASI PETA PARIWISATA KOTA SURABAYA BERBASIS ANDROID” dapat
terselesaikan.
Skripsi ini dibuat sebagai salah satu syarat memperoleh gelar sarjana komputer di
jurusan teknik informatika UPN ”Veteran” Jatim. Penulis menyadari skripsi ini masih jauh
dari sempurna, sehingga saran dankritik yang membangun sangat penulis harapkan. Semoga
laporan ini bermanfaat bagi pembacanya dan bagi civitas akademik FTI UPN "Veteran"
Jatim.
Akhirnya, penulis berharap agar penyusunan laporan ini mampu memberikan
pengetahuan bagi perkembangan dan kemajuan teknik informatika Universitas
Pembangunan Nasional “Veteran” JATIM.
Surabaya, 28-05-2012
UCAPAN TERIMA KASIH
Ucapan terima kasih ini saya persembahkan sebagai perwujudan rasa syukur atas
terselesaikannya LaporanTugas Akhir. Ucapan terimakasih ini saya tujukan kepada :
1. Tuhan Yang MahaEsa, karena berkat Rahmat dan berkah Nya penulis dapat menyusun
dan menyelesaikan LaporanTugas Akhir ini hingga selesai.
2. Keluarga tercinta, terutama Ayah dan Mamaku terscinta, terima kasih atas semua doa,
dukungan serta harapan-harapanya pada saat saya menyelesaikan tugas akhir dan laporan
ini. Yang penulis minta hanya doa restunya, sehingga saya bisa membuat sesuatu yang
lebih baik dari laporan ini.
3. Untuk adek tersayang Ardita Velamasari, terima kasih kerjasamanya.
4. Kepada Almarhumah nenek Alimah yang selalu di hati saya, i love u so much.
5. Bapak Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor Universitas Pembangunan
Nasional “Veteran” Jawa Timur.
6. Ir. Sutiyono, MT selaku Dekan Fakultas Teknik Industri UPN “Veteran” Jawa Timur.
7. Ibu Dr. Ir. Ni Ketut Sari, MT selaku Ketua Program Studi Teknik Informatika UPN
“Veteran” Jawa Timur.
8. Bapak Barry Nuqoba, Ssi ,M.Kom dan Bapak Christia Aji Putra, S.Kom yang telah
meluangkan waktunya sebagai dosen pembimbing dan atas sarannya sehingga penulis
bisa menyelesaikan laporan ini.
9. Teman-teman kantor PT Valbury Asia Future yang selalu memberi semangat dan
dukungan.
11.Kawan-kawan yang telah membantu dalam penyelesaian Tugas Akhir ini. Yang telah
memberikan dorongan dan doa, om freddi,mas ardi, mas wahyu, mas wahyu poascom,
bambang, aris dan lain-lain yang tak bisa penulis sebutkan satu persatu. Terima Kasih
DAFTAR ISI
KATA PENGANTAR………...i
UCAPAN TERIMA KASIH...ii
DAFTAR ISI………...iv
DAFTAR GAMBAR………...viii
DAFTAR TABEL………...x
BAB I PENDAHULUAN ... 1
1.1 LatarBelakang ... 1
1.2 RumusanMasalah...2
1.3 BatasanMasalah...2
1.4 Tujuan...2
1.5 Manfaat...3
1.6 MetodologiPenelitian...3
1.7 SistematikaPenulisan...5
BAB II LANDASAN TEORI ... 7
2.1 PengertianPariwisata ... 7
2.2 Surabaya Sebagai Kota Pariwisata...8
2.3 Tempat Objek Pariwisata Surabaya...8
2.4.1 SejarahdanPerkembangan Android...10
2.4.2 Arsitektur Android...11
2.4.3 Kelebihan Android...16
2.5 Java...17
2.5.1 SejarahPerkembangan Java...19
2.5.2 KelebihandanKekurangan Java...20
2.6 Eclipse...23
2.6.1 Arsitektur Eclipse...25
2.7 Database SQLite...26
2.7.1 Fitur – fitur SQLite...26
2.7.2 Penggunaan Database SQLite...29
2.8 UML...30
2.8.1 Diagram - diagram UML...30
2.8.2 Hubungan Relasi...32
2.8.3 KelebihandanKekurangan UML...34
2.9 Google API...35
BAB III ANALISA DAN PERANCANGAN SISTEM... ... 36
3.1 AnalisisMasalah ... 36
3.2 AnalisisKebutuhan Data...36
3.2.1 AnalisisKebutuhan Data Non Fungsional...36
3.2.2 AnalisisKebutuhanPerangkat Lunak...37
3.2.4 Sequency Diagram...46
3.2.5 Class Diagram...47
3.3 Perancangan Navigasi...48
3.4 Perancangan Sistem...49
3.4.1 Perancangan Data...49
3.4.2 Perancangan Antar Muka...51
BAB IV IMPLEMENTASI ... 57
4.1 Spesifikasi Perangkat Keras...57
4.2 Spesifikasi PerangkatLunak...57
4.3 Pembuatan Tampilan...58
4.3.1 Pembuatan Menu Utama... 58
4.3.2 Pembuatan Menu List Wisata... 64
4.3.3 Pembuatan Menu Detail Wisata... 65
4.3.4 Pembuatan Menu Gallery Wisata ...65
4.3.5 Pembuatan Menu Peta Wisata ...66
4.4 Pembuatan Database ...67
4.5 Penginputan Data Wisata ...68
BAB V UJI COBA DAN EVALUASI.... ... 72
5.1 Skenario Uji Coba...72
5.2 Pelaksanaa Uji Coba... 72
5.2.1 Uji Coba Menu Utama... 73
5.2.3 Uji Coba Menu Detail Wisata ...74
5.2.4 Uji Coba Menu Galery Tampak Luar ...75
5.2.5 Uji Coba Menu Galery Tampak Dalam ...76
5.2.6 Uji Coba Menu Peta ...77
5.2.7 Uji Coba Fungsi Info Window ...78
BAB VI PENUTUP ... 80
6.1 Kesimpulan ... 80
6.2 Saran...80
DAFTAR PUSTAKA...81
DAFTAR GAMBAR
Gambar 2.1 Arsitektur Android...12
Gambar 2.2 Java...18
Gambar 2.3Eclipse Indigo...24
Gambar 2.4Dependency...32
Gambar 2.5Association...33
Gambar 2.6Generalization...33
Gambar 2.7Realization...33
Gambar 3.1Use case diagram pada sistem aplikasi android...38
Gambar 3.2Activity diagram viewMenuUtama...40
Gambar 3.3Activity diagram viewListWisata...41
Gambar 3.4Activity diagram viewDetailWisata...43
Gambar 3.5Activity diagram viewGalery...44
Gambar 3.6Activity diagram viewMap...45
Gambar 3.7Sequence Diagram...46
Gambar 3.8Class Diagram...47
Gambar 3.9Struktur Navigasi...48
Gambar 3.10Diagram Relasi...49
Gambar 3.11Menu utama kategori wisata...52
Gambar 3.12 Menu utama list wisata...53
Gambar 3.13 Menu detail wisata...54
Gambar 3.14 Menu galery wisata...55
Gambar 3.15 Menu viewMap...56
Gambar 4.2 Langkah Awal 2 Membuat Project...59
Gambar 4.3 Langkah Awal 3 Membuat Project...60
Gambar 4.4 Langkah Awal 4 Membuat Project...61
Gambar 4.5Langkah Awal 5 Membuat Project...62
Gambar 4.6 Tampilan Graphical Layout Main.Xml...63
Gambar 4.7 Tampilan Graphical Layout Menulist.xml...64
Gambar 4.8 Tampilan Graphical Layout Menudetail.xml...65
Gambar 4.9 Tampilan Graphical Layout Menu Galery...66
Gambar 4.10 Tampilan Graphical Layout Menu Peta...67
Gambar 4.11Tampilan Source Code Identifikasi Atribute...67
Gambar 4.12 Tampilan Source Code Pembuatan Tabel...68
Gambar 4.13 Tampilan Source Code Input Data untuk Kategori Wisata Alam...68
Gambar 4.14 Tampilan Source Code Input Data untuk Kategori Wisata Kota...69
Gambar 4.15 Tampilan Source Code Input Data untuk Kategori Wisata Religi...69
Gambar 4.16 Tampilan Source Code Input Data untuk Kategori Wisata Sejarah...70
Gambar 4.17 Tampilan Source Code Input Data untuk Kategori Wisata Belanja...70
Gambar 4.18 Tampilan Source Code Input Data untuk Kategori Wisata Kota...71
Gambar 5.1 Uji Coba Menu Utama...73
Gambar 5.2 Uji Coba Menu List Wisata...74
Gambar 5.3 Uji Coba Menu Detail Wisata...75
Gambar 5.4Uji Coba Menu Galery Tampak Luar...76
Gambar 5.5Uji Coba Menu Galery Tampak Dalam...77
Gambar 5.6Uji Coba Menu Peta...78
DAFTAR TABEL
Tabel 3.1 Definisi aktor dalam aplikasi android...38
Tabel 3.2TempatWisata...50
ABSTRAK
Judul : Aplikasi Peta Pariwisata Kota Surabaya Berbasis Android
Nama : Reva Elsya Pradana
Pembimbing 1: Barry Nuqoba, S.Si, M.Kom. Pembimbing 2: Christia Aji Putra,S.Kom.
Kebutuhan manusia akan informasi mencakup banyak hal, salah satunya adalah
kebutuhan akan informasi mengenai lokasi atau posisi suatu lokasi. Sistem aplikasi layanan
ini diberikan kepada pengguna perangkatselular android, berdasarkan fungsi pengolahan
tertentu dari masukan data lokasi yang ditentukanolehpengguna. Selain itu layanan
sistemaplikasiini haruslah mendukung mobilitas penggunanya.
Adapun yang
mendasaripembuatansistemaplikasipadaperangkatselulariniadalahmemberikansisteminformas
ilokasiberupatampilanpetapadaperangkatselular android, halinidikarenakanpetakonvensional
yang tidakringkasuntukdibawabepergian.Terlepasdariinformasilokasidanlayananpaket data,
perangkatselular android
termasukkedalamgolongansmartphonepenggunaperangkatselularinibertambahsetiaptahunya
di seluruhduniadikarenakanmemilikifitur yang tidakkalahataubahkanlebih di banding
perangkatselular di kelasnya.
Padaproyekakhirinidirancangdandibuatsuatusistemaplikasi yang
dapatmenampilkanlokasi denah tempat wisata berdasarkan pilihan wisata dari kategori
masing-masing wisata.
1
BAB I PENDAHULUAN
1.1 Latar Belakang
Menurut Spillane (1987), peranan pariwisata dalam pembangunan negara
pada garis besarnya berintikan tiga segi, yaitu segi ekonomis (sumber devisa,
pajak-pajak), segi sosial (penciptaan lapangan kerja), dan segi kebudayaan
(memperkenalkan kebudayan kita kepada wisatawan-wisatawan asing).
Hampir semua negara di dunia ini baik negara maju ataupun berkembang
menjadikan sektor pariwisata sebagai salah satu sektor dalam pembangunan
ekonomi, sosial dan budaya.Pariwisata telah menjadi industri terbesar di dunia
dan merupakan salah satu sektor tercepat pertumbuhannya dibidang ekonomi jasa,
hal ini bersamaan dengan sektor telekomunikasi dan teknologi informasi.
Sebagai salah satu kota terbesar di Indonesia, Surabaya memiliki banyak
objek wisata.Ditinjau dari wisata alam, Surabaya memiliki diantaranya adalah
Pantai Ria Kenjeran, Kebun Binatang Surabaya. Kota ini juga mempunyai wisata
religi dari Masjid Agung Surabaya, Masjid Cheng Hodan Makam Sunan Ampel
Surabaya.Tidak sampai disini saja Surabaya juga dianugrahi wisata sejarah seperti
Monument Kapal Selam dan Monumen Tugu Pahlawan.Wisata kota seperti
Taman Hiburan Rakyat, serta kaya akan wisata belanja.
Terlepas dari informasi lokasi dan layanan paket data, perangkat selular
Android termasuk ke dalam golongan smartphone.Pengguna perangkat selular ini
bertambah setiap tahunya di seluruh dunia dikarenakan memiliki fitur yang tidak
2
Berdasarkan uraian diatas maka diperlukan suatu aplikasi pada perangkat
selular yang memberikan informasi lokasi wisata surabayaberupa tampilan peta
pada perangkat selular Android, hal ini dikarenakan peta konvensional yang tidak
ringkas untuk dibawa bepergian.
Pada proyek akhir ini dirancang dan dibuat suatu sistem aplikasi yang
dapat menampilkan denah lokasi pariwisata di Surabaya dalam bentuk peta
dimana pengguna diminta untuk memilih lokasi pariwisata yang tersedia.
1.2 Rumusan Masalah
Berdasarkan beberapa uraian latar belakang di atas maka dapat
dirumuskan masalah, yaitu bagaimana menciptakan sebuah aplikasi peta
pariwisata kota Surabaya berbasis Androidyang dapat memberikan informasi dan
lokasi tempat wisata yang diinginkan berdasarkan daftar wisata yang sudah
tersedia.
1.3 Batasan Masalah
Untuk batasan masalah tugas akhir ini yaitu meliputi :
a. Daftartempat wisata hanya untuk lingkup kota Surabaya
b. Objek wisata ditentukan oleh sistem berupa daftar nama-nama tempat
wisata
c. Pengguna hanya bisa memilih objek wisata yang sudah disediakan
sistem
3
e. Aplikasi tidak dapat mengindentifikasi lokasi pengguna dan hanya
menampilkan peta denahnya saja tanpa menghitung jarak terpendek
dari lokasi pengguna.
1.4 Tujuan
Tujuan dari pembuatan aplikasi ini adalah :
a. Merancang dan membuat suatu Aplikasi Peta Pariwisata Kota
Surabayaberbasis Android yang berguna sebagai media informasi
untuk para calon pengunjung wisata surabaya.
1.5 Manfaat
Adapun manfaat yang dapat diambil dari Aplikasi Peta Pariwisata Kota
Surabaya berbasis Androidini adalah sebagai berikut :
1. Bagi pengguna atau masyarakat,sebagai
softwarepembantuuntukmendapatkan informasi tempat-tempat pariwisata
di surabaya.
2. Bagi pihak lain, sebagai bahan referensi dan tambahan informasi untuk
pengkajian topik yang berkaitan dengan masalah yang sama dengan
penelitian ini dan dapat digunakan sebagaimana mestinya.
1.6 Metodologi Penelitian
Untuk dapat mencapai keinginan dalam pembuatan aplikasi peta
pariwisatakota Surabaya ini, maka perlu dilakukan dengan langkah-langkah
4
a. Studi Literatur
Penelitian ini dimulai dengan studi literatur yaitu pengumpulan data-data yang
berhubungan dengan permasalahan yang dibahas sehingga dapat membantu
penyelesaian masalah dalam perancangan aplikasi peta pariwisata kota
Surabaya berbasis Android ini.
b. Perancangan Aplikasi
Pada tahap ini dilakukan perancangan terhadap sistem yangakandibangun
seperti perancanganmenu kategori wisata, perancangan menu list wisata, detail
wisata,menu galeri, dan perancangan menu untuk menampilkan peta. Karena
tahap ini merupakan tahapan perancangan sistem secara keseluruhan, maka
tahapan ini merupakan tahapanterpenting dalam rangkaian pembuatan
aplikasidan mempengaruhi tahapan implementasi.
c. Pembuatan Aplikasi
Pada tahap ini sistem yang telah dirancang kemudian diimplementasikan ke
dalam bahasa pemrograman yakni bahasa pemrograman Java.
d. Uji coba dan Evaluasi Aplikasi
Uji coba ini bertujuan untuk memastikan bahwa masing-masing bagian dari
sistem ini dapat bekerja sesuai yang diharapkan.
e. Penyusunan Laporan dan Kesimpulan Akhir
Pada tahap ini dilakukan penyusun laporan tentang seluruh isi penelitian dan
analisanya ke dalam format penulisan tugas akhir dengan disertai kesimpulan
5
1.7 Sistematika Penulisan
Secara garis besar penulisan laporan tugas akhir ini terdiri dari enam bab.
Adapun sistematika penulisan laporan tugas akhir ini adalah sebagai berikut :
BAB 1 : PENDAHULUAN
Bab ini menjelaskan permasalahan yang ada beserta solusi yang
digunakan untuk menyelesaikan permasalahan tersebut.Penjelasan
tersebut akan dibagi – bagi menjadi beberapa sub bab yaitu latar
belakang masalah, perumusan masalah, batasan masalah, tujuan
dari tugas akhir, manfaat yang diperoleh, metodologi penelitian
dan sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini membahas beberapa teori penunjang yang berhubungan
denganpokok pembahasan yang dipakai untuk menyelesaikan
permasalahan dimana berkaitan dengan aplikasi peta pariwisata
kota Surabaya berbasis Android.
BAB III : ANALISA DAN PERANCANGAN SISTEM
Bab ini membahas tentang gambaran umum dan perancangan dari
aplikasi peta pariwisata kota Surabaya berbasis Android.
BAB IV : IMPLEMENTASI
Bab ini membahas tentang implementasi dari aplikasi yang dibuat
secara keseluruhan serta melakukan pengujian dan evaluasi
terhadap aplikasi yang dibuat untuk mengetahui apakah aplikasi
tersebut dapat menyelesaikan permasalahan yang dihadapi sesuai
6
BAB V : UJI COBA DAN EVALUASI
Bab ini menjelaskan tentang pengujian yang dilakukan untuk
mengetahui apakah aplikasi yang dibuat sesuai dengan konsep
yang diharapkan.
BAB VI : PENUTUP
Bab ini membahas tentang kesimpulan dan saran. Kesimpulan
akan menjelaskan hasil dari evaluasi aplikasi, sedangkan saran
7
BAB II
LANDASAN TEORI
2.1 Pengertian Pariwisata
Menurut Kodyat (1983), pariwisata adalah perjalanan dari suatu tempat
ketempat lain, bersifat sementara, dilakukan perorangan atau kelompok, sebagai
usaha mencari keseimbangan atau keserasian dan kebahagian dengan lingkungan
dalam dimensi sosial, budaya, alam dan ilmu.
Sedangkan menurut Prof. Salah Wahab (dalam Yoeti, 1982:107),
“ A proposeful human activity that serve as a link between people either within
one some country or beyond the geographical limits or state. It involves the
temporary displacement of people to other region, country, for the satisfaction of
varied needs other than exciting a renumareted function ”.
“ Pariwisata adalah suatu aktivitas manusia yang dilakukan secara sadar yang
mendapat pelayanan secara bergantian diantara orang-orang dalam suatu negara
itu sendiri atau di luar negeri (meliputi pendiaman orang-orang dari daerah lain)
untuk mencari kepuasan yang beraneka ragam dan berbeda dengan apa yang
dialaminya dimana ia memperoleh pekerjaan tetap ”.
Secara umum Pariwisata merupakan suatu perjalanan yang dilakukan
seseorang untuk sementara waktu yang diselenggarakan dari suatu tempat ke
tempat yang lain dengan meninggalkan tempat semula dan dengan suatu
perencanaan atau bukan maksud untuk mencari nafkah di tempat yang
dikunjunginya, tetap semata-mata untuk menikmati kegiatan pertamasyaan atau
8
2.2 Surabaya Sebagai Kota Pariwisata
Surabaya merupakan salah satu daerah tujuan wisata di Indonesia
karenamemiliki potensi wisata yang cukup besar, baik dari potensi alam, dataran,
pantai, maupun kesenian budaya yang senantiasa dapat terus dikembangkan guna
menarik para wisatawan baik dari dalam maupun luar negeri.
Surabaya memiliki berbagi objek wisata yang tersebar di setiap sudut
wilayahnya. Ditinjau dari wisata alam, Surabaya memiliki Pantai Ria Kenjeran,
Kebun Binatang Surabaya. Kota ini juga mempunyai wisata religi dari Masjid Al
Akbar Surabaya, Masjid Agung Sunan Ampel Surabaya. Tidak sampai disini saja
Surabaya juga dianugrahi wisata sejarah, wisata kota,serta kaya akan wisata
belanja.
2.3 Tempat Objek Wisata Surabaya
Berdasarkan data dari Website Dinas Kebudayaan dan Pariwisata
Surabaya, Surabaya memiliki tempat wisata yang dapat dikelompokkan menjadi
beberapa kategori :
1. Wisata Alam
a. Kebun Binatang Surabaya
b. Pantai Ria Kenjeran
c. Perkemahan Jurang Kuping
2. Wisata Kota
a. Taman Remaja Surabaya
b. Taman Bungkul Surabaya
9
d. Taman Apsari
e. Taman Flora
3. Wisata Sejarah
a. House Of Sampoerna
b. Monumen Tugu Pahlawan
c. Monumen Kapal Selam
d. Monumen Perjuangan POLRI
e. Monumen Bambu Runcing
f. Monumen Jendral Soederman
4. Wisata Religi
a. Masjid Akbar Surabaya
b. Masjid Sunan Ampel
c. Masjid Cheng Hoo
d. Makam W.R Supratman
e. Makam Mbah Ratu
f. Makam Ki Ageng Bungkul
5. Wisata Belanja
a. Tunjungan Plaza Surabaya
b. Grand City Surabaya
c. Galaxy Mall
d. Royal Plaza
e. Surabaya Plaza
f. Supermall Pakuwon Indah
10
h. Hitect Mall
i. City Of Tomorrow
j. Jembatan Merah Plaza
k. ITC Mega Grosir
l. Pusat Grosir Surabaya (PGS)
2.4 Android
Android adalah kumpulan perangkat lunak yang ditujukan bagi perangkat
bergerak mencakup sistem operasi, middleware, dan aplikasi kunci. Android
Standart Development Kid (SDK) menyediakan perlengkapan dan Application
Programming Interface (API) yang diperlukan untuk mengembangkan aplikasi
pada platform Android menggunakan bahasa pemrograman Java. Android
dikembangkan oleh Google bersama Open Handset Allience (OHA) yaitu aliansi
perangkat selular terbuka yang terdiri dari 47 perusahaan Hardware, Software
dan perusahaan telekomunikasi ditujukan untuk mengembangkan standar terbuka
bagi perangkat selular.
(Sumber : http://developer.Android.com/guide/basics/what-is-Android.html)
2.4.1 Sejarah dan Perkembangan Android
Padamulanya terdapat berbagai macam sistem operasi pada
perangkatselular, diantaranya sistem operasi Symbian, Microsoft Windows
Mobile, Mobile Linux, iPhone, dan sistem operasilainnya. Namun
diantarasistemoperasi yang ada belum mendukungstandar dan
11
murah. Kemudian Google ikut berkecimpung didalamnya dengan platform
Android, yang menjanjikan keterbukaan, keterjangkauan, open source, dan
framework berkualitas.
Pada tahun 2005, Googlemengakuisisi perusahaanAndroid Inc. untuk
memulai pengembangan platform Android. Dimana terlibat dalam pengembangan
ini Andy Rubin, Rich Miner, Nick Sears, dan Chris White.Pada pertengahan
2007Android pertama kali diluncurkan pada 5 November 2007, dan smartphone
pertama yang menggunakan sistem operasi Android dikeluarkanoleh T-Mobile
dengan sebutan G1 pada bulan September 2008.Hinggasaat ini Androidtelah
merilis beberapa versi Android untuk menyempurnakan versi sebelumnya. Selain
berdasarkan penomoran, pada setiap versi Android terdapatkode namaberdasarkan
nama-nama kue. Hingga saat ini sudah terdapat beberapa versi yang telah
diluncurkan, diantaranya:
1. Versi 1.5 dirilis pada 30 April 2009 diberi nama Cupcake,
2. Versi 1.6 dirilis pada 15 September 2009 diberi nama Donut
3. Versi terakhir 2.0 dirilis pada 26 Oktober 2009 diberi nama Éclair
4. Versi Froyo,
5. Versi Gingerbread
6. Versi Honeycomb.
(Sumber : http://aplikasiandroid.com/berita-android-2/sejarah-android-os/)
2.4.2 Arsitektur Android
Secara garis besar, arsitektur Android dapat dijelaskanpada gambar
12
Gambar 2.1 Arsitektur Android
(Sumber : http://developer.Android.com/guide/basics/what-is-Android.html)
1. Aplikasi and Widgets
Aplikasi dan Widgets ini adalah layer di manakita berhubungan dengan
aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan
instalasi dan jalankan aplikasi tersebut.Pada layer tersebut terdapat aplikasi
inti seperti email, SMS, kalender, peta, browser, kontak, dan lain
sebagainya.Widgetsterdiridarilayer-layersepertiEditText,Spinner,Button,TextView, dan lain-lain.
13
Android merupakan platform yang terbuka, artinya Android menawarkan serta
memberikan kemampuan kepada para pengembangnya untuk membangun
aplikasi yang bagus dan inovatif. Tiap pengembang bebas untuk mengakses
perangkat keras, akses informasi resources, menjalankan servis background,
mengatur alarm, dan lain-lain. Pengembang memiliki akses penuh ke API
Framework seperti yang dilakukan oleh aplikasi inti.Arsitektur aplikasi
dirancang agar kita dengan mudah dapat menggunakankembali komponen
yang sudah digunakan (reusable).
Komponen pada Aplikasi Frameworks Android adalah sebagai berikut:
1) Views
Digunakanuntukmengambilsekumpulanbutton, list, grid,dan
text box yang digunakan di dalam antarmuka pengguna.
2) Content Provider
Digunakanuntukmemungkinkanaplikasimengaksesdatadariaplikasilain(
seperti contacts)atau untukmembagikan datamerekasendiri.
3) Resource Manager
Digunakanuntukmenagksessumberdayayangbersifatbukancodesepertist
ringlokal,bitmap,deskripsidarilayout file danbagian eksternal lain dari a
plikasi.
4) Notification Manager
Digunakan untuk mengatur tampilanperingatan dan fungsi-fungsi lain.
5) Activity Manager
Mengatursiklusdariaplikasidanmenyediakannavigasibackstack
14
3. Libraries
Merupakan layer di mana fitur-fitur Androidberada, biasanya para
pengembang aplikasi mengakseslibrariesuntuk menjalankan aplikasinya.
Berjalan di atas kernel,layerinimeliputiberbagailibraryC/C++intisepertiLib-C
dan SSL, serta:
a. Sistem C Library
Merupakanimplementasiturunandaristandarsistemlibrary C(libc)yangdiatur
untukperalatanberbasisembeddedLinux.
b. Media Libraries
DisediakanolehPacketVideo(salahsatuanggotadariOHA)yangmemberikanli
braryuntukmemutarulangdanmenyimpanformatsuaradanvideo,sertastatici
magefilesepertiMPEG4,MP3,AAC,AMR,JPG,and PNG.
c. Surface Manager
Mengaturakseskedalamsubsistemtampilandansusunangrafislayer2Ddan3D
secaramulusdaribeberapaaplikasidanmenyusunpermukaangambaryangberb
edapadalayarponsel.
d. LibWebCore
Merupakanweb browsermodernyangmenjadikekuatanbagi
browserAndroiddan sebuah embeddable web view.
e. Scalable Graphics Library (SGL)
SGLmendasarimesingrafis2Ddanbekerjabersama-samadengan
15
rdanSurfaceManager) untukmengimplementasikan keseluruhan graphic
pipelinedari Android.
f. 3D Libraries
ImplementasiyangdidasarkanpadaOpenGL ES1.0APIsdimanalibrarymeng
gunakanbaikakselerasiperangkatkeras3D(jikatersedia)ataupunyangdisertak
an,denganrasterisasiperangkatlunak3Dyangsangatoptimal.
g. FreeType Library
Digunakan untuk menghaluskan semua tulisan bitmap dan vektor.
h. SQLite
Merupakanrelationa basis data (bahasa Inggris:
database)yangkuatdanringansertatersediauntuk semua aplikasi.
4. Android Runtime
Merupakan layer yang membuat aplikasi Android dapat dijalankan di mana
dalam prosesnya menggunakan implementasi Linux. Dalvik Virtual Machine
(DVM) merupakanmesinyang membentuk dasar kerangka aplikasi Android.
Di dalam Android runtime dibagi menjadi dua bagian yaitu:
a. Core Libraries: Aplikasi Android dibangun dalam bahasa Java, sementara
Dalvik sebagai mesin virtualnya, bukan JVM (Java Virtual Machine).
Sehingga dibutuhkan sebuah libraries yang berfungsi untuk
menterjemahkan bahasa Java/C yang ditangani oleh Core Libraries ini.
b. Dalvik Virtual Machine: Virtualmesinyangberbasisregister
16
merupakanpengembanganyangmampumembuatLinuxkerneluntukmelakuk
anthreadingdanmanajementingkat rendah.
5. Linux Kernel
Adalah layer dimana inti dari sistem operasi Android itu berada.
Berisifile-filesistemyang mengatur pemrosesan sistem, memory, resource, drivers, dan
sistem-sistem operasi Androidlainnya.Linux kernel yang digunakan Android
adalah Linux kernel rilis 2.6.
2.4.3 Kelebihan Android
Sudah banyak platform untuk perangkat selular saat ini, termasuk
didalamnyaSymbian, iPhone, Windows Mobile, BlackBerry, Java Mobile Edition,
Linux Mobile (LiM0), dan banyak lagi. Namun ada beberapa halyangmenjadi
kelebihan Android. Walaupun beberapa fitur-fitur yang ada telah
munculsebelumnya pada platform lain, Android adalah yang pertama
menggabungkan hal seperti berikut :
1. Keterbukaan, Bebas pengembangan tanpa dikenakan biaya terhadap sistem
karena berbasiskan Linux dan open source. Pembuat perangkat menyukai
hal ini karena dapat membangun platform yang sesuai yang diinginkan
tanpa harus membayar royality. Sementara pengembang software menyukai
karena Android dapat digunakan diperangkat manapun dan tanpa terikat
oleh vendor manapun.
2. Arsitektur komponen dasar Android terinspirasi dari teknologi
17
aplikasilainnya, bahkan dapat diganti dengan komponen lain yang sesuai
denganaplikasi yang dikembangkan.
3. Banyak dukungan service, kemudahan dalam menggunakan berbagai
macam layanan pada aplikasi seperti penggunaan layanan pencarian lokasi,
database SQL, browser dan penggunaan peta. Semua itu sudah tertanam
pada Android sehingga memudahkan dalam pengembangan aplikasi.
4. Siklus hidup aplikasi diatur secara otomatis, setiap program terjaga antara
satu sama lain oleh berbagai lapisan keamanan, sehingga kerja sistem
menjadi lebih stabil. Pengguna tak perlu kawatir dalam menggunakan
aplikasi pada perangkat yang memorinya terbatas.
5. Dukungan grafis dan suarat terbaik, dengan adanya dukungan 2D grafis dan
animasi yang diilhami oleh Flash menyatu dalam 3D menggunakan
OpenGL memungkinkan membuat aplikasi maupun game yang berbeda.
6. Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat yang ada saat
ini maupun yang akan datang. Semua program ditulis dengan menggunakan
bahas pemrograman Java dan dieksekusi oleh mesin virtual Dalvik,
sehingga kode program portabel antara ARM, X86, dan arsitektur lainnya.
Sama halnya dengan dukungan masukan seperti penggunaanKeyboard,
layar sentuh, trackball dan resolusi layarsemua dapat disesuaikan dengan
program.(Sumber : http://id.wikipedia.org/wiki/Android_(sistem_operasi))
2.5Java
Menurut (Kadir,2003)Java adalah bahasa pemrograman yang dapat
18
dibuat oleh James Gosling saat masih bergabung di Sun Microsistems saat ini
merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak
mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis
model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang
minimal.
Gambar 2.2 Logo Java
Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam
p-code (bytep-code) dan dapat dijalankan pada berbagai Mesin Virtual Java
(JVM).Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik
(general purpose), dan secara khusus didisain untuk memanfaatkan dependensi
implementasi seminimal mungkin.Karena fungsionalitasnya yang memungkinkan
aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda,
java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun".Saat ini
java merupakan bahasa pemrograman yang paling populer digunakan, dan secara
19
2.5.1 Sejarah Perkembangan Java
Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan
selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut
belum menggunakan versi yang dinamakan Oak.Proyek ini dimotori oleh Patrick
Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan
pemrogram lainnya dari Sun Microsistems. Salah satu hasil proyek ini adalah
maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill
Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan
menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai
pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti
pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven). Setelah
era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah
beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya
pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam
waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan
pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara
mereka.Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang
dipakai hanya di kalangan akademisi dan militer.
Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk
membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari
film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner
20
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi
1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali
pada surat kabar San Jose Mercury Newspada tanggal 23 Mei 1995. Sayang
terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah
ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric
Schmidt dan George Paolini dari Sun Microsistems bersama Marc Andreessen,
membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan
kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi
release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek
dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini
diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan
Gosling.Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman
Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).
(Sumber : http://www.java.com/en/download/whatis_java.jsp )
2.5.2 Kelebihan dan Kekurangan Java a. Kelebihan Java
Java memiliki beberapa kelebihan, diantaranya adalah :
1. Multiplatform
Kelebihan utama dari Java ialah dapat dijalankan
dibeberapaplatform/sistem operasi komputer, sesuai dengan
prinsip tulis sekali, jalankan dimana saja.Dengan kelebihan ini
21
(diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin
/ bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa
platform tanpa perubahan.Kelebihan ini memungkinkan sebuah
program berbasis java dikerjakan diatas operating sistem Linux tetapi
dijalankan dengan baik di atas Microsoft Windows.Platform yang
didukung sampai saat ini adalah Microsoft Windows,Linux,Mac
OS dan Sun Solaris.Penyebanya adalah setiap sistem operasi
menggunakan programnya sendiri-sendiri (yang dapat diunduh dari
situs Java) untuk meninterpretasikanbytecodetersebut.
2. Berorientasi Objek
Rancangan berorientasi objek merupakan suatu teknik yang
memusatkan rancangan pada data (objek) dan interface. Fasilitas
pemrograman berorientasi objek padaJava pada dasarnya adalah sama
dengan C++. Feature pemrograman berorientasi objek pada Java
benar-benar sebanding dengan C++. Perbedaan utama antara Java
dengan C++ terletak padapenurunan berganda (multipleinheritance),
untuk ini Java memiliki cara penyelesaian yang lebih baik.
3. Terdistribusi
Java memiliki library rutin yang luas untuk dirangkai pada protokol
TCP/IP sepetrti HTTP dan FTP dengan mudah. Aplikasi Java dapat
22
sama mudahnya seperti yang biasa dilakukan seorang programmer
ketika mengakses file sistem secara lokal.
4. Multithreading
Kemampuan program untuk melakukan lebih dari satu sekaligus.Dan
memiliki keuntungan dari multithreading adalah sifat respons yang
interaktif dan real-time.
5. Dinamis
Dalam sejumlah hal, Java merupakan bahasa pemrograman yang lebih
dinamis dibandingkan dengan C atau C++.Java dirancang untuk
beradaptasi dengan lingkungan yang terus berkembang.Librari dapat
dengan mudah menambah metode dan variabel contoh yang baru tanpa
banyak mempengaruhi klien.Informasi run-time dalam Java adalah
langsung (straigtforward).
b. Kekurangan Java
Selain memiliki kelebihan, Java juga memiliki kekurangan sebagai
berikut :
1. Tulis sekali, jalankan di mana saja
Masih ada beberapa hal yang tidak kompatibel antara platform satu
dengan platform lain. UntukJ2SEmisalnya SWT-AWT bridgeyang
23
2. Mudah didekompilasi.
Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode
sumber. Ini dimungkinkan karena kode jadi
Javamerupakanbytecodeyang menyimpan banyak atribut bahasa
tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal
yang sama juga terjadi pada Microsoft.NET Platform. Dengan
demikian, algoritma yang digunakan program akan lebih sulit
disembunyikan dan mudah dibajak/direverse-engineer.
3. Penggunaan memori yang banyak
Penggunaan memori untuk program berbasis Java jauh lebih besar dari
padabahasa tingkat tinggi generasi sebelumnya seperti
C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal).
Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan
teknologi terbaru (karena trend memori terpasang makin murah), tetapi
menjadi masalah bagi mereka yang masih harus berkutat dengan mesin
komputer berumur lebih dari 4 tahun.
2.6 Eclipse
Eclipseadalah sebuahIDE (Integrated Development Environment) untuk
mengembangkan perangkat lunak dan dapat dijalankan di semua platform
(platform-independent).Eclipse pada saat ini merupakan salah satu IDE favorit
dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode
m
h sifat dari Ec
25
lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan
lain sebagainya.(Sumber : http://www.eclipse.org/)
2.6.1 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 sudah diinstal. Ini merupakan basis dari Eclipse
yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang
membentuk RCP:
a. Core platform
b. OSGi
c. SWT (Standard Widget Toolkit)
d. JFace
e. Eclipse Workbench
Secarastandar EclipseselaludilengkapidenganJDT (Java Development
Tools),plug-in yang membuat Eclipsekompatibeluntuk mengembangkan
programJava, dan PDE (Plug-in Development Environment) untuk
mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan
dalam bahasa pemrograman Java.Konsep Eclipse adalah IDE yang terbuka (open),
mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang
spesifik.Jadi,Eclipse tidak saja untuk mengembangkan programJava, akan tetapi
dapat digunakan untuk berbagai macam keperluan, cukup dengan
menginstalplug-in yangdibutuhkan. Apabila ingin mengembangkan program
26
Selain itu, pengembangan secara visual bukan hal yang tidak mungkin
oleh Eclipse,plug-in UML2 tersedia untuk membuat diagram UML. Dengan
menggunakan PDE setiaporang bisa membuat plug-in sesuai dengan
keinginannya.(Sumber : http://www.eclipse.org/)
2.7 Basis data (bahasa Inggris: database) SQLite
SQLite adalah salah satu basis data mandiri yang tersedia lintas sistem
operasi dan dipergunakan dibanyak arsitektur dan platform hardware, dari mulai
handphone sampai Apple Macbook.Keuntungan signifikan dari penggunaan
SQLite adalah kemampuan portabilitasnya yang sangat minim penyertaan library,
cukup menyertakan API dari SQLite sendiri dan wrapperuntuk masing-masing
bahasa pemrograman.
Kata ‘Lite’ pada
SQLitetidakmenunjukpadakemampuannya,melainkanmenunjuk pada sifat dari
SQLite,yaitu ringan ketikadihubungkan
dengankompleksitaspengaturan,administrativeoverhead,danpemakaiansumber.
2.7.1 Fitur – fitur SQLite
SQLite memiliki fitur-fitur sebagai berikut :
a. Tidak memerlukan server
ArsitekturSQLitetidakmemilikiarsitekturclientserver.Kebanyakansiste
mdatabaseskalabesarmemilikipaketserver
27
b. Single File Database
SQLitemengemasseluruhdatabasekedalamsuatusinglefile.Singlefileter
sebutberisilayout database
dandataaktualyangberadapadatabeldanindeksyangberbeda.Formatfiled
apatdigunakanpadabanyakplatformdandapatdiaksespadamesinmanapu
ntanpamemperhatikannativebyteorderataupunukurankata.
Pengemasandatabasekedalamsuatufiletunggalmemudahkanpenggunau
ntuk membuat, menyalin, ataupun mem-backup image database yang
beradadidalam media penyimpanan.Keseluruhandatabasedapat
dipindahkan, dimodifikasi dan dibagikandengan begitumudahnya
seperti kemudahan dalam
dokumenpemrosesan kata ataupin file spread sheet.
c. Zero Configuration
SQLitetidakmembutuhkanapapununtukmelakukan
instalasidankonfigurasi.Denganmengeliminasiserver danmenggabung
kandatabasesecaralangsung
kedalamaplikasi,makapenggunatidakperlumengetahuibahwamereka se
dang menggunakandatabase.
d. Embedded Device Support
Ukurancode dari SQLite bersifat kecil dan penggunaan sumber daya
yang konservatif membuatnya cocok digunakan untuk embedded
sistemyang berjalan terbatas pada sistem operasi.
28
SQLitemenawarkanbeberapafituryangtidakditemukanpadakebanyakan
sistembasisdata.Hal yangpalingberbedaadalahSQLitemenggunakan
sistem dengan tipe dinamis untuk tabel-tabel. SQLitememungkinkan
pengguna untuk memasukkan nilai ke dalam kolom
tanpamemperhatikan tipe data. Pada beberapa cara pemakaiannya,
sistem yang bertipe dinamis pada SQLite mirip dengan sistem yang
ditemukan pada bahasa scripting yang populer, yang sering memiliki
sebuahn tipe skalar yang dapat menerima semua tipe data dari integer
sampai string. Fitur lainnya adalah kemampuan untuk memanipulasi
lebih dari satu basis data pada satu waktu. SQLite mempunyai
kemampuan dalam menghubungkan sebuah koneksi databasetunggal
dengan banyak file basis data secara bersamaan.Hal ini
memungkinkan SQLite umtuk memproses SQL statement yang
menjembatani beberapa basis data sekaligus.
f. Compatible License
SQLite dan SQLite code tidak memiliki lisensi pengguna dan tidak
dilindungi oleh GNU's Not Unix (GNU) GeneralPublic License (GPL)
atau lisensi open source sejenisnya. Tim pengembang SQLite
menempatkan SQLite source code ke dalam domain publik dan
dengan tegas serta sengaja melepaskan semua claim yang dimiliki,
termasuk hak cipta dan hak kepemilikan dari code ataupun produk
yang memiliki SQLite code. Hal ini berarti pengguna dapat
melakukan apapun dengan source code SQLite, sehingga library code
29
berbagaicara,dimodifikasidenganberbagaicaradandidistribusikandenga
nberbagai cara.
g. Highly reliable
Sejumlahtes telah dilakukan sebelumlibrary SQLite masing-masing
dirilis. Hal ini dilakukan untuk mempertahankan tingkat kehandalan
yang tinggi. Sumber (http://www.sqlite.org/features.html)
2.7.2Penggunaan Database SQLite
SQLite memiliki beberapa peran dimana beberapa peran sama dengan
peran yang dimiliki oleh sistem databaserelasional manajemen sistem client server
tradisional dan peran lainnya memanfaatkan ukuran SQL serta kemudahan
penggunaan. Berikut merupakan peran dari databaseSQLite :
1. Database Junior
SQLitememilikitool untuk menyimpan, mengatur, dan memanipulasi data
yang lebih kecil serta dalam sumber daya lingkungan yang lebih terbatas.
SQLite dirancang untuk melengkapi dan bukan menggantikan platform
RDBMSyanglebih besar dimana kesederhanaan dan
kemudahanpenggunaanmenjadilebihpentingdibandingkandengankapasitasd
anconcurrency.
2. Application File
Penggunaan library SQLite sebagai tempat penyimpanan yang abstrak
memiliki banyak keuntungan. Sejumlah aplikasi metadata seperti cache,
30
ini menyebabkan pembuatandatabase dipetakan dengan mudah ke dalam
struktur data internal aplikasi
2.8 UML
UnifiedModellingLanguage(UML)adalahbahasa spesifikasi standar untuk
mendokumentasikan,menspesifikasikandanmembangun sistem perangkat lunak.
UML tidak didasarkan pada bahasa pemrograman tertentu.
StandarspesifikasiUMLdijadikan standar defactoolehOMG(ObjectManagement
Group ) pada tahun 2007. UML yang berorientasikan object mempunyai beberapa
notasi standar.
SpesifikasiinimenjadipopulerdanstandarkarenasebelumadanyaUML,telaha
daberbagaimacamspesifikasiyangberbeda.Halinimenyulitkankomunikasiantarpeng
embangpernagkat lunak.Untukitu,beberapapengembangspesifikasi
yangsangatberpengaruh
berkumpuluntukmembuatstandarbaru.UMLdirintisolehGradyBooch,JamesRumba
ughpadatahun 1994 dankemudianIvarJacobson.(Sumber :http://www.uml.org)
2.8.1 Diagram - diagram UML
UML menyediakan beberapa diagram visual yang menunjukkan berbagai
aspekdalam sistem.Banyaknya diagram tersebut dimaksudkan untuk memberikan
gambaran yang lebih terintegrasi terhadap sistem yang akan dibangun.
Beberapa diagram yang disediakan dalam UML antara lain :
31
Diagram ini memberikan informasi tingkat tinggi tentang proses bisnis apa
yang organisasi lakukan. Siapa saja yang terlibat dalam proses bisnis
organisasi. Sejauh mana ruang lingkup bisnis organisasi.
2. Diagram use case
Diagram use case sistem menyajikan interaksi antara use case dan actor.
Diagram ini menunjukkan fungsionalitas sistem yang akan dibangun dari
perspektif pengguna akhir. Juga, menunjukkan kebutuhan sistem yang akan
dibangun.
3. Diagram aktivitas
Diagram ini digunakan untuk menjelaskan bagaimana proses bisnis tersebut
dilakukan.
4. Diagram sekuensial
Tipe diagram interaksi yang menjelaskan pesan – pesan yang dikirimkan antar
objek – objek yang disususn berdasarkan urutan waktu.
5. Diagram kolaborasi
Tipe diagram interaksi yang menjelaskan layout organisasi objek – objek yang
mengirim dan menerima pesan – pesan.
6. Diagram kelas
Diagram ini digunakan untuk menunjukkan interaksi antara kelas dalam
sebuah sistem.
32
Diagram ini menyediakan sebuah cara untuk memodelkan bermacam-macam
state selama sebuah objek eksis serta digunakan untuk memodelkan tingkah
laku dinamik sistem.
8. Diagram komponen
Diagram ini berguna untuk mengetahui urutan kompilasi terhadap komponen
– komponen yang akan dibuat.
9. Diagram deployment
Diagram ini menampilkan layout fisik jaringan. Membantu tim pengembang
untuk merencanakan deployment yang akan ditawarkan.
2.8.2 Hubungan Relasi
Ada 4 macam hubungan didalam penggunaan UML, yaitu: dependency,
association, generalization, dan realization.
1. Dependencyadalahhubungansemanticantaradua benda/thingsyang
mana sebuah benda berubah mengakibatkan benda satunyaakan
berubah pula.Umumnyasebuahdependencydigambarkansebuah panah
dengan garis terputus-putus seperti terlihat dalam gambar 2.4.
33
2. Association adalah hubungan antar benda struktural yang terhubung
diantara objek. Kesatuan objek yang terhubung merupakan hubungan
khusus, yang menggambarkan sebuah hubungan struktural diantara
seluruh atau sebagian. Umumnya assosiation digambarkan dengan
sebuah garis yang dilengkapi dengan sebuah label, nama, dan status
hubungannya seperti terliahat dalam gambar 2.5.
Gambar 2.5 Association
3. Generalization adalah menggambarkan hubungan khusus dalam objek
anak/child yang menggantikan objek parent / induk . Dalam hal ini,
objek anak memberikan pengaruhnya dalam hal struktur dan tingkah
lakunya kepada objek induk. Digambarkan dengan garis panah seperti
terlihat dalam gambar 2.6.
34
4. Realization merupakan hubungan semantik antara pengelompokkan
yang menjamin adanya ikatan diantaranya. Hubungan ini dapat
diwujudkan diantara interface dan kelas atau elements, serta antara
use cases dan collaborations. Model dari sebuah hubungan realization
seperti terlihat dalam gambar 2.7.
Gambar 2.7 Realization
2.8.3 Kelebihan dan Kekurangan UML
Kelebihan UML dibandingkan dengan bahasa permodelan yang lain antara
lain:
1. Menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai
untuk mengembangkan dan pertukaran model-model yang berarti.
2. Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas
konsep-konsep inti.
3. Mendukung spesifikasi independen bahasa pemrograman dan proses
pengembangan tertentu.
4. Menyediakan basis formal untuk bahasa pemodelan.
5. Memadukan praktek-praktek terbaik di industri perangkat lunak
menjadi terminologi dan notasi yang diterima luas.
6. Menyediakan kemampuan merepresentasikan semua konsep yang
relevan untuk sistem perangkat lunak.
7. Menyediakan fleksibilitas yang diperlukan bagi konsep-konsep
35
Sedangkan kekurangan UML antara lain:
1. UML bukanlah bahasa pemrograman visual, melainkan bahasa
pemodelan visual.
2. UML bukan spesifikasi dari tool, tapi spesifikasi bahasa pemodelan.
3. UML bukanlah proses, tapi yang memungkinkan proses-proses.
2.9 Google API
Google API atau antarmuka pemrograman aplikasi adalah sekumpulan
perintah, fungsi, dan protocol dari Google yang dapat digunakan oleh
programmer saat membangun perangkat lunak untuk sisitem operasi tertentu. API
memungkinkan programmer untuk menggunakan fungsi standar untuk
berinteraksi dengan sistem operasi.
Layanan API yang sediakan Google cukup banyak, yang termasuk layanan
API mobile yang disediakan oleh Google antaralain:
1. Google Latitude
Google Latitude merupakan layanan yang memungkinkan pengguna untuk
berbagi lokasi tempat dimana pengguna tersebut berada. Walaupun demikian,
fitur ini tidak akan menunjukkan lokasi spesifik tempat pengguna berada
tapi memberikan informasi bahwa pengguna sedang berada di suatu lokasi pada
waktu tertentu.
36
Google Maps adalah layanan dari Google untuk menunjukkan jalan-jalan
yang ada di selruh dunia. Bentuknya seperti peta yang biasa dilihat.Tetapi Google
Map ini hanya menunjukkan jalan-jalan saja, dan tidak ada nama gunung, sungai,
ataupun batas-batas daerah yang biasa ditemukan di peta umum. Walaupun
begitu, peta yang ada di Google Maps ini sangat lengkap.
Cara melihat Google Maps ini sangat sederhana dan tidak perlu menginstall
software seperti halnya Google Earth.Yang penting, terhubung dengan jaringan
intenet.Untuk mengakses Google Maps ini, Google menyediakan situs resminya
37
BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1 Analisis Masalah
Permasalahan pada penelitian ini adalah masih banyak calon wisatawan
lokal maupun luar kota yang membutuhkan informasi mengenai tempat-tempat
wisata yang akan mereka kunjungi. Selain informasi mengenai alamat dan lokasi
deskripsi wisata, juga dibutuhkan suatu peta lokasi wisata.
3.2 Analisis Kebutuhan Data
Sistem yang akan dibangun merupakan sistem yang menginformasikan
tempat – tempat wisata yang ada di Surabaya yang dikelola oleh dinas pariwisata
kota Surabaya. Sehingga untuk dibangunnya sistem ini, dibutuhkan data berupa
informasi wisata seperti alamat tempat wisata, deskripsi wisata dimana
didalamnya terdapat sedikit keterangan mengenai tempat wisata tersebut serta
memungkinkan adanya informasi jam buka tutupnya tempat wisata.
3.2.1 Analisis Kebutuhan Data Non Fungsional
Perangkat Keras yang dibutuhkan untuk membangun sistem ini adalah :
1. Processor dengan kecepatan minimal 2 GHz+ Motherboard
2. Kapasitas Harddisk minimal 40 GB
3. RAM minimal 256 MB
4. VGA Card minimal 64 MB
5. Monitor
6. Koneksi internet minimal64kbps
38
8. Keyboard
9. Kabel Data
3.2.2 Analisis Kebutuhan Perangkat Lunak
Aplikasi ini merupakan aplikasi yang bertujuan untuk menginformasikan
lokasi wisata di Surabaya untuk calon wisatawan berupa keterangan singkat dan
alamat tempat wisata tersebut selain itu di dalamnya terdapat fitur galeri yang
memuat beberapa foto tempat wisata dan user dapat melihat denah peta wisata
yang terkoneksi oleh google map.
Untuk menunjang itu semua diperlukan perangkat lunak
dalampembangunansistem ini,yaitu :
1. Java Development Kit versi 5 atau 6
2. Eclipse Indigo sebagai perangkat lunak yang diperlukan untuk
membangun aplikasi pada Android
3. Android SDK 2.2 (API 8), untuk pengembang aplikasi Android
4. Android Development Tool, sebagai plugin Android pada eclipse
5. Android Virtual Device, sebagai emulator untuk menjalankan
sistemAndroid.
3.3 Analisis Sistem
Tahap analisis dilakukan setelah tahap perencanaan sistem dan sebelum
tahap desain sistem.Tahap ini merupakan penting, karena kesalahan dalam tahap
ini menyebabkan kesalahan pada tahap selanjutnya.
3.3.1 Arsitektur Sistem
Aplikasi utama pada peta pariwisata ini merupakan aplikasi yang dapat
39
user yang menggunakan aplikasi Android.
Tabel 3.1 Definisi aktor dalam aplikasi Android
Aktor Deskripsi
User
Merupakan pengguna dari aplikasi peta pariwisata kota
Surabaya berbasis Android
3.3.2 Use Case Diagram
Menggambarkan hubungan antara use case dan actor serta proses sistem
(kebutuhan sistem dari sudut pandang user).
Secara umum use case adalah:
– Pola perilaku sistem
– Urutan transaksi yang berhubungan yang dilakukan oleh satu actor
Gambar 3.1 Use case diagram pada sistem aplikasi Android User
viewMenuUtama
viewListWisata
viewDetailWisata
viewGaleryWisata
40
Dalam Use Case diagram diatas user nantinya dapat melakukan beberapa
aktifitas yaitu :
1) View Menu Utama, dimana user dapat melihat beberapa kategori
wisata yaitu wisata alam, wisata kota, wisata wisata religi, wisata
sejarah, wisata belanja, dan semua wisata.
2) View List Wisata, dimana user akan melihat beberapa nama wisata
berdasarkan kategori yang dipilih. Dan nantinya user akan memilih
salah satu dari wisata tersebut.
3) View Detail Wisata, dimana user akan melihat informasi mengenai
alamat wisata dan deskripsi singkat tentang wisata tersebut.
4) View Galeri, dimana user akan melihat beberapa foto tempat wisata
yang akan digolongkan menjadi foto tampak depan dan tampak dalam.
5) View Map, dimana user akan melihat peta denah lokasi tempat wisata
tersebut. Dan apabila marker di klik akan muncul informasi mengenai
alamat lengkap wisata tersebut.
3.3.3 Activity Diagram
Diagram aktivitas atauactivity diagram menggambarkan
workflow(alirankerja) atau aktivitas darisebuah sistem atau proses bisnis.Yang
perlu diperhatikan disiniadalahbahwa diagram aktivitasmenggambarkan aktivitas
sistembukan apa yang dilakukan aktor.
Diagram aktivitas digunakan untukmenggambarkan proses bisnis (alurkerja)
41
meskipun juga dapat digunakan untuk mendeskripsikanalur kegiatan yang lainnya
sepertiusecase atau suatu interaksi secara berurutan.
a. ViewMenuUtama
Proses ini merupakan proses awal ketika user menjalankan aplikasi.Pada
menu ini akan menampilkan beberapa kategori wisata yaitu Wisata Alam, Wisata
Kota, Wisata Religi, Wisata Sejarah, Wisata Belanja, dan button Keluar. Proses
ini digambarkan dengan activity diagram pada gambar 3.2.
Gambar 3.2 Activity Diagram ViewMenuUtama
User Sistem
Membuka Aplikasi memanggil fungsi
viewMenuUtama
Menampilkan Menu Utama yaitu menampilkan
42
Proses – proses yang dilakukan dalam memilih tempat wisata ini adalah
sebagai berikut :
1. User membuka Aplikasi Peta Pariwisata Surabaya Berbasis Android
2. Sistem memanggil fungsi getMenuUtama
3. Kemudian sistemmenampilkan kategori wisata
b. ViewListWisata
Proses ini merupakan proses menampilkan daftar wisata dari kategori
wisata yang dipilih oleh user. Proses ini digambarkan dengan activity diagram
pada gambar 3.3.
Gambar 3.3Activity DiagramViewListWisata
User Sistem
Menjalankan menu utama
memilih kategori wisata memanggil fungsi viewWisata
mengambil data dari database
melakukan parsing data
43
Proses – proses yang dilakukan dalam memilih tempat wisata ini adalah
sebagai berikut :
1. User menjalankan menu utama dimana user akan memilih kategori
wisata
2. Sistem memanggil fungsi viewWisata
3. Kemudian sistem mengambil nilai dari database
4. Melakukan parsing data
5. Menampilkan daftar wisata, pada aktifitas ini sistem menampilkan
hasil parsing dalam bentuk list view
c. ViewDetailWisata
Aktifitas ini merupakan aktifitas yang dilakukan oleh user untuk
mengambil detail dari wisata yang dipilih pada daftar wisata berdasarkan kategori
wisata .
Proses ini digambarkan dengan activity diagram pada gambar 3.4. Proses –
proses yang dilakukan adalah sebagai berikut :
1. User memilih salah satu tempat wisata dari daftar wisata yang ditampilkan
oleh sistem
2. Kemudian sistem mengambil nilai dari basis data (bahasa Inggris:
database)
3. Melakukan parsing data
4. Sistem menampilkan informasi mengenai alamat, deskripsi singkat
44
Gambar 3.4 Activity Diagram ViewDetailWisata
d. ViewGaleri
Aktifitas ini merupakan aktifitas yang dilakukan oleh user untuk melihat
foto-foto galeri lokasi wisata yang terbagi menjadi dua yaitu tampak depan dan
tampak dalam dimana menggunakan radio button. Proses ini digambarkan dengan
activity diagram pada gambar 3.5.
User Sistem
memilih wisata memanggil fungsi viewDetail
mengambil data dari database
melakukan parsing data
45
Gambar 3.5 Activity Diagram ViewGaleri
Proses – proses yang dilakukan adalah sebagai berikut :
1. User memilih tombol button galeri yang ada pada menu detail wisata
2. Kemudian sistem meminta user untuk memilih antara foto tampak depan
atau tampak dalam
3. Apabila user memilih foto tampak depan maka sistem hanya akan
menampilkan foto-foto tampak depan dari tempat wisata
User Sistem
no
menekan tombol button gallery menampilkan menu detail wisata
menampilkan foto-foto tampak depan tempat wisata
menampilkan foto-foto tampak dalam tempat wisata Pilih Tampilan
Tampak depan
46
4. Apabila user memilih foto tampak dalam maka sistem hanya akan
menampilkan foto-foto tampak dalam dari tempat wisata
e. viewMap
Aktifitas ini merupakan aktifitas yang dilakukan oleh user untuk melihat
peta lokasi denah tempat wisata yang dipilih. Proses ini digambarkan dengan
activity diagram pada gambar 3.6.
Gambar 3.6 Activity diagram viewMap
User Sistem
menekan tombol button peta menampilkan menu detail wisata
mengambil latitude dan longtitude lokasi wisata
mencari latitude dan longtitude pada google map
47
Proses – proses yang dilakukan adalah sebagai berikut :
1. User memilih tombol button tampil peta yang ada pada menu detail wisata
2. Kemudian sistem menampilkan peta denah lokasi wisata
3.3.4 Sequence Diagram
Diagram Sekuensial atau sequence diagram digunakan untuk menunjukkan
aliran fungsionalitas dalam use case. Diagram sekuensial adalah diagram yang
disusun berdasarkan urutan waktu. Kita membaca diagram sekuensial dari atas ke
bawah. Setiap diagram sekuensial mempresentasikan suatu aliran dari beberapa
aliran di dalam use case. Kita dapat membaca diagram ini dengan memperhatikan
objek-objek dan pesan-pesan yang ada di diagram. Objek yang terlibat dalam
aliran ditunjukkan dengan bujur sangkar yang ada di atas diagram.
Gambar 3.7 Sequence Diagram SequenceDiagram_1
Menu Utama Sistem ListWisata DetailWisata menu gallery peta
48
3.3.5 Class Diagram
Class diagram menggambarkan struktur dan deskripsi class beserta
hubungan satu sama lain seperti Asosiasi, Generalisasi dan lain sebagainya.
Dalam gambar 3.8 di bawah ini di gambarkan hubungan antar class yang terjadi
pada sistem yang akan dibangun.
Gambar 3.8 Class Diagram datawisata
onActivityResult (int requestCode, int resultCode, Intent data) : void
<<Constructor>> DataWisataSurabaya (Context context) createTable (SQLiteDatabase db) generateData (SQLiteDatabase db)
onUpgrade (SQLiteDatabase db, int oldVersion, int newVersion) onCreate (SQLiteDatabase db)
= new ArrayList<OverlayItem>()
+
49
3.4 Perancangan Navigasi
Aplikasi ini menggunakan struktur navigasi Hierarchical Model.Dimana
menu utama adalah pusat navigasi yang merupakan penghubung ke semua fitur
pada aplikasi.
Gambar 3.9 Struktur Navigasi
Keterangan :
1. Menu Utama akan menampilkan beberapa kategori wisata yaitu wisata
alam, kota, religi, sejarah, belanja, dan semua wisata.
2. Setelah memilih kategori wisata maka akan menampilkan menu list wisata
yang berisi daftar wisata berdasarkan kategori yang dipilih.
Menu Utama
Wisata Kota
Wisata Alam Wisata Religi Wisata Sejarah Wisata Belanja Semua Wisata
List Wisata
Detail Wisata
50
3. Setelah memilih wisata makan sistem akan menampilkan menu detail
wisata Setelah memilih wisata makan sistem akan menampilkan menu
detail wisata yang berisi alamat dan informasi singkat mengenai wisata
tersebut.
4. Dalam menu detail wisata akan ada button galeri untuk menampilkan
foto-foto wisata dan peta untuk menampilkan denah peta wisata.
3.5 Perancangan Sistem
Perancanganmerupakan penggambaran, perencanaan, dan pembuatan
sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam suatu
kesatuan yang utuh.Tahapan ini meliputi mengkonfigurasi komponen-komponen
perangkat lunak dan perangkat keras dari suatu sistem.Adapun perancangan
sistem dijelaskan sebagai berikut :
3.5.1 Perancangan Data
Perancangan data merupakan tahapan untuk memetakan model konseptual
ke model basis data yang akan dipakai. Berikut penjelasan perancangan data :
1. Diagram Relasi
Diagramrelasi adalah diagram yang menggambarkan hubungan antar data
dalam suatu basis data berdasarkan objek-objek dasar data yang mempunyai
hubungan antar relasi. Berikut adalah gambar untuk diagram relasi :
mempunyai
Gambar 3.10Diagram Relasi
51
2. Strukur Tabel
Dalam pengembangan sistem ini terdapat dua buah tabel yaitu tabel
TempatWisata, KategoriWisata,. Berikut tabel-tabel yang digunakan dalam basis
data (bahasa Inggris: database) pada aplikasi peta pariwisata berbasis Android :
1. Tabel TempatWisata
Tabel tempat wisata ini digunakan untuk menyimpan data-data tempat wisata.
Berikut struktur tabel Tempat Wisata :
Tabel 3.2TempatWisata
NO NAMA FIELD TYPE KETERANGAN
1 Id Integer Primary Key Autoincrement
2 Nama Text -
3 Alamat Text -
4 Keterangan Text -
5 Rute Text -
6 Latitude Text -
7 Longtitude Text -
2. Tabel KategoriWisata
Tabel kategori ini digunakan untuk menyimpan kategori tempat wisata.Tabel
ini memiliki atribut id_kategori dan nama-kategori. Berikut struktur tabel Tempat
52
Tabel 3.3 KategoriWisata
NO NAMA FIELD TYPE KETERANGAN
1 Id_kategori Integer Primary Key Autoincrement
2 Nama_kategori Text
3.5.2 Perancangan Antarmuka
Antar muka (bahasi inggiris : Interface) merupakan tampilan dari suau
program aplikasi yang berperan sebagai media komunikasi yang digunakan
sebagai sarana berdialog antara program dengan user.Dalam terminologi
perangkat lunak, interface bisa diartikan sebagai tampilan atau cara perangkat
lunak bersangkutan berinteraksi dengan penggunanya. Sedangkan dalam
terminologi perangkat keras, interface mengacu kepada standar yang digunakan
oleh suatu peripheral tertentu untuk berhubungan dengan peripheral lainnya dalam
satu sistem.Sistem yang akan dibangun diharapkan menyediakan interface yang
mudah dipahami dan digunakan oleh user. Tujuan sebuah interface adalah
mengkomunikasikan fitur-fitur sistem yang tersedia agar user mengerti dan dapat
menggunakan sistem tersebut.Berikut ini adalah perancangan antarmuka pada
sistem yang akan dibuat.
1. Menu Awal
Menu ini merupakan menu awal dimana di dalamnya terdapat pilihanbeberapa
kategori wisata yaitu wisata alam, wisata kota, wisata religi, wisata
53
Gambar 3.11Menu utama kategori wisata
Dalam menu utama ini, user diminta untuk memilih dari salah satu kategori
wisata kemudian akan tampil menu list wisata pada gambar 3.12.
2. Menu List Wisata
Menu ini merupakan menu yang berisi beberapa list wisata dari setiap
kategori wisata yang ada.Dalam menu ini nantinya user diminta untuk memilih
PARIWISATA SURABAYA
Wisata Alam
Wisata Kota
Wisata Sejarah
Wisata Belanja
Wisata Religi
54
tempat wisata. Kemudian sistem langsung akan mengarahkan ke menu detail
wisata. Berikut ilustrasinya :
Gambar 3.12Menu utama list wisata
55
menu sebelumnya. Selain itu ada fungsi search wisata yang digunakan untuk
mencari nama wisata secara cepat.
3. Menu Detail Wisata
Menu ini merupakan deskripsi dari setiap wisata yang dipilih user pada
menu list wisata.Dimana didalamnya terdapat alamat tempat wisata dan
penjelasan singkat mengenai tempat wisata tersebut. Dalam menu ini juga terdapat
button Galeri foto serta Map.
56
4. Menu Galeri
Menu ini merupakan menu yang menampilkan beberapa foto tempat
wisata. Tetapi dibagi menjadi dua bagian yaitu tampak depan dan tampak dalam.
Gambar 3.14 Menu galeri wisata
Tampak depan berisi foto-foto tempat wisata yang bagian depan
sedangkan tampak dalam bagian dalam. Dan dalam menu ini akan tetap ada
Menu Awal Kembali
Nama Wisata
Tampak Dalam Tampak Depan