BAB II LANDASAN TEORI 2.1
Aplikasi Perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer
yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna atau user. Biasanya perangkat lunak sistem dapat mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media dan lain sebagainya. Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang disebut sebagai suatu paket atau suite aplikasi (application suite).Contohnya adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya.Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan setiap aplikasi. Sering kali, aplikasi ini memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapatdibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah. 2.2
Pengertian Pariwisata Keberadaan pariwisata dalam suatu daerah bisa dikatakan merupakan
suatu gejala yang kompleks di dalam masyarakat. Di sini terdapat suatu keterkaitan
antara
daerah
objek
wisata
13
yang
memiliki
daya
tarik,
masyarakat/penduduk setempat, dan wisatawan itu sendiri. Sejak dahulu kegiatan pariwisata sudah banyak dilakukan oleh masyarakat, baik di dunia maupun di Indonesia. Di Indonesia sendiri kata pariwisata mulai memasyarakat pada tahun 1958, yaitu setelah diadakannya Musyawarah Nasional Turisme II di Tretes (Jawa Timur) pada tanggal 12 sampai dengan 14 Juni 1958. Secara etimologi kata pariwisata berasal dari bahasa Sansekerta yang terdiri atas dua suku kata yaitu “pari” yang berarti banyak, berkali-kali, berputarputar, dan keliling. Sedangkan kata “wisata” yang berarti perjalanan atau bepergian. Dengan demikian pengertian dari kata pariwisata berarti suatu perjalanan yang dilakukan secara berkali-kali atau berputar-putar dari suatu tempat ketempat lain. Menurut definisi yang luas seperti yang dikatakan oleh Spillane (1985 : 5) pariwisata adalah : “…Perjalanan dari suatu tempat ketempat lain, bersifat sementara, dilakukan perorangan maupun kelompok, sebagai usaha mencari keseimbangan atau keserasian dan kebahagian dengan lingkungan hidup dalam dimensi sosial, budaya, alam, dan ilmu”. Pariwisata menyangkut perjalanan dari suatu tempat ketempat lain atau disebut dengan istilah tour. Seperti batasan yang diberikan oleh WATA (World Assosoation of Travel Agent), tour adalah : “…Perlawatan keliling yang memakan waktu lebih dari tiga hari yang diselenggarakan oleh Biro Perjalanan Wisata (BPW) dengan acara antara lain peninjauan beberapa kota atau objek wisata di dalam maupun di luar negeri”. Selain pengertian di atas, beberapa ahli juga merumuskan pengertian pariwisata sebagai berikut : Sihite ( 2000 : 46-47 ) mengatakan :
14
“Pariwisata adalah suatu perjalanan yang dilakukan orang untuk sementara waktu, yang diselenggarakan dari suatu tempat ke tempat lain meniggalkan tempatnya semula, dengan suatu perencanaan dan dengan maksud bukan untuk berusaha atau mencari nafkah di tempat yang dikunjungi, tetapi semata-mata untuk menikmati kegiatan pertamasyaan dan rekreasi atau untuk memenuhi keinginan yang beranekaragam” Spillane (1985: 23) mengatakan : “…Pariwisata adalah kegiatan melakukan perjalanan dengan tujuan mendapatkan kenikmatan, mencari kepuasan, mengetahui sesuatu, memperbaiki kesehatan, menikmati olahraga atau istirahat, menunaikan tugas, berziarah dan lain-lain”. Yoeti (1996 : 118) mengatakan : “Pariwisata adalah suatu perjalanan yang dilakukan untuk sementara waktu yang diselenggarakan dari suatu tempat ke tempat lain, dengan maksud bukan untuk berusaha ( business ) atau untuk mencari nafkah di tempat yang dikunjungi, tetapi semata-mata untuk menikmati perjalanan tersebut guna pertamasyaan dan rekreasi atau untuk memenuhi keinginan yang beraneka ragam” Pariwisata menurut Robert McIntosh dan Shaskinant Gupta Dalam Yoeti, (1992 :8) mengatakan: “…Gabungan gejala dan hubungan yang timbul dari interaksi wisatawan, bisnis, pemerintah tuan rumah serta masyarakat tuan rumah dalam proses menarik dan melayani wisatawan-wisatawan serta para pengunjung lainnya”. Wahab dalam bukunya yang berjudul An Introduction On Tourism Theory (Dalam Yoeti 1983 : 107) mengatakan :
15
“Pariwisata adalah suatu aktivitas manusia yang dilakukan secara sadar, yang mendapat pelayanan secara bergantian di antara orang-orang dalam suatu negara itu sendiri, meliputi tempat tinggal orang-orang dari daerah lain untuk sementara waktu dalam mencari kepuasan yang beraneka ragam dan berbeda dengan apa yang dialami dimana ia memperoleh pekerjaan tetap serta mengemukakan bahwa pariwisata itu terdiri dari tiga unsur yaitu : a) Manusaia (man), adalah orang yang melakukan pariwisata, b) Ruang (space), adalah daerah atau ruang lingkup tempat melakukan perjalana, c) Waktu (time), adalah waktu yang digunakan selama dalam perjalanan dan tinggal di daerah tujuan wisata.” 2.3
Pengertian Wisatawan Wisatawan merupakan bagian yang tak terpisahkan dari dunia pariwisata.
Wisatawan sangat beragam , tua-muda, miskin-kaya, asing-nusantara, semuanya mempunyai keinginan dan juga harapan yang berbeda. Jika ditinjau dari arti kata “wisatawan” yang berasal dari kata “wisata” maka sebenarnya tidaklah tepat sebagai pengganti kata “tourist” dalam bahasa Inggris. Kata itu berasal dari bahasa Sansekerta “wisata” yang berarti “perjalanan” yang sama atau dapat disamakan dengan kata “travel” dalam bahasa Inggris. Jadi orang melakukan perjalanan dalam pengertian ini, maka wisatawan sama artinya dengan kata “traveler” karena dalam bahasa Indonesia sudah merupakan kelaziman memakai akhiran “wan” untuk menyatakan orang dengan profesinya, keahliannya, keadaannya jabatannya dan kedudukan seseorang (Irawan, 2010:12).
16
Menurut Smith (dalam Kusumaningrum, 2009:16), menjelaskan bahwa wisatawan adalah orang yang sedang tidak bekerja, atau sedang berlibur dan secara sukarela mengunjungi daerah lain untuk mendapatkan sesuatu yang lain. Wisatawan menurut sifatnya (Kusumaningrum, 2009:18) : 1. Wisatawan modern Idealis, wisatawan yang sangat menaruh minat pada budaya multinasional serta eksplorasi alam secara individual. 2. Wisatawan
modern
Materialis,
wisatawan
dengan
golongan
Hedonisme (mencari keuntungan) secara berkelompok. 3. Wisatawan tradisional Idealis, wisatawan yang menaruh minat pada kehidupan sosial budaya yang bersifat tradisional dan sangat menghargai sentuhan alam yang tidak terlalu tercampur oleh arus modernisasi. 4. Wisatawan tradisional Materialis, wistawan yang berpandangan konvensional,
mempertimbangkan
keterjangkauan,
murah
dan
keamanan. 2.4
Objek Wisata
2.4.1
Pengertian Objek Wisata dan Daya Tarik Wisata Menurut Oka Yoeti (1996:174-176) beberapa hal yang menjadi daya tarik
bagi orang yang mengunjungi suatu daerah, mengatakan : a. Benda-benda yang tersedia dan terdapat di alam semesta, dalam istilah pariwisata disebut natural amenities, yang termasuk dalam kelompok ini adalah hutan, iklim, pemandangan dan bentuk tanah, flora dan fauna, pusat-pusat kesehatan.
17
b. Hasil ciptaan manusia yang dalam istilah pariwisatanya disebut man made supply yang berupa benda-benda bersejarah, kebudayaan, dan keagamaan. c. Tata cara hidup masyarakat (way to life) yaitu segala sesuatu yang merupakan aktivitas atau kegiatan hidup manusia yang khas dan mempunyai daya tarik tersendiri yang dapat dijadikan objek wisata. Dari pengertian diatas dapat disimpulkan bahwa objek wisata itu adalah unsur-unsur lingkungan hidup yang terdiri dari sumber daya alam, sumber daya manusia dan sumber daya buatan yang dapat dikembangkan dan dimanfaatkan sebagai daya tarik sasaran wisata. Lain hal dengan atraksi wisata yang dalam hal ini bersinonim dengan pengertian entertainmeny atau hiburan, yaitu segala sesuatu yang telah di persiapkan terlebih dahulu agar dapat dilihat, dinikmati dan yang termasuk dalam hal itu adalah tari-tarian, nyanyian, kesenian rakyat tradisional, dan upacara adat. Yang penting diperhatikan dalam pengembangan suatu daerah untuk menjadi daerah tujuan wisata agar dapat menarik untuk dikunjungi oleh wisatawan harus memenuhi 3 syarat, yang dikemukakan oleh Yoeti (1985 : 164 ) mengatakan : a.
Daerah itu harus mempunyai apa yang disebut sebagai something to see, yang artinya di tempat tersebut harus ada objek wisata dan atrakasi wisata yang berbeda dengan apa yang dimiliki oleh daerah lain.
b.
Di daerah tersebut harus tersedia apa yang disebut dengan istilah something to do, yang artinya di tempat tersebut selain banyak yang
18
dapat dilihat dan disaksikan, harus pula disediakan fasilitas rekreasi yang dapat membuat mereka betah tinggal lebih lama lagi di tempat itu. c.
Di daerah tersebut harus tersedia apa yang disebut dengan istilah something to buy, yang artinya di tempat tersebut harus tersedia fasilitas untuk berbelanja (shopping), terutama barang-barang souvenir dan kerajinan rakyat sebagai oleh-oleh untuk dibawa pulang ke tempat asal masing-masing.
2.4.2
Syarat-syarat Objek Wisata Sebuah Objek wisata yang baik harus dapat mendatangkan wisatawan
sebanyak-banyaknya, menahan mereka ditempat atraksi dalam waktu yang cukup lama dan memberi kepuasan kepada wisatawan yang dating berkunjung. Untuk mencapau hasil itu, beberapa syarat harus dipenuhi yaitu: a.
Kegiatan (act) dan objek (artifact) merupakan atraksi itu sendir harus dalam keadaan yang baik.
b.
Karena atraksi wisata itu disajikan dihadapan wisatawan, maka cara penyajiannya harus tepat.
c.
Objek atau atraksi wisata adalah terminal dari mobilitas spasial suatu perjalanan. Oleh karena itu juga harus memenuhi semua determinan mobolotas spasial, yaitu akomodasi, transportasi, promosi serta pemasaran.
d.
Keadaan di objek wisata harus dapat menahan wisatawan cukup lama.
19
e.
Kesan yang diperoleh wisatawan untuk menyaksikan ataraksi wisata harus diusahakan supaya bertahan selama mungkin.
2.5
Pengertian Pariwisata Sebagai Suatu Industri Pariwisata dikatakan sebagai industri, karena di dalamnya terdapat
berbagai aktivitas yang bisa menghasilkan produk berupa barang dan jasa. Akan tetapi, makna industri di sini bukan sebagaimana pengertian industri pada umumnya yaitu adanya pabrik atau mesin-mesin yang besar atau kecil yang penuh dengan asap. Industri pariwisata tidak seperti pengertian industri pada umumnya, sehingga industri pariwisata disebut industri tanpa asap. Uraian di atas sejalan dengan konsep industri pariwisata yang dikemukakan oleh Yoeti (1996 : 153) mengatakan : “… Industri pariwisata adalah kumpulan
dari
macam-macam
perusahaan
yang
secara
bersama-sama
menghasilkan barang-barang dan jasa-jasa (goods and service) yang dibutuhkan wisatawan pada khususnya dan traveler pada umumnya, selama dalam perjalanan”. Pengertian lain yang sejalan dengan uraian di atas tentang industri pariwisata adalah seperti yang dikemukakan oleh Damardjati dikutip oleh Sihite (2000:54) mengatakan : “…Industri pariwisata adalah rangkuman dari berbagai macam yang secara bersama-sama menghasilkan produk-produk/jasa-jasa/layanan-layanan atau services, yang nantinya baik secara langsung ataupun tidak langsung akan dibutuhkan oleh wisatawan selama perjalanannya”. Berdasarkan beberapa definisi di atas, dapatlah dikatakan bahwa industri pariwisata adalah kumpulan dari bermacam-macam perusahaan yang secara
20
bersama-sama menghasilkan barang-barang atau jasa-jasa yang dibutuhkan oleh wisatawan maupun traveler selama dalam perjalanannya. 2.5.1
Jenis Pariwisata Host and Guest (1989) dalam Kusumanegara (2009:3) mengklasifikasikan
jenis pariwisata sebagai berikut : 1. Pariwisata Etnik (Etnhic Tourism), yaitu perjalanan untuk mengamati perwujudan kebudayaan dan gaya hidup masyarakat yang menarik. 2. Pariwisata Budaya (Culture Tourism), yaitu perjalanan untuk meresapi atau untuk mengalami gaya hidup yang telah hilang dari ingatan manusia. 3. Pariwisata Rekreasi (Recreation Tourism), yaitu kegiatan pariwisata yang berkisar pada olahraga, menghilangkan ketegangan dan melakukan kontak sosial dengan suasana santai. 4. Pariwisata Alam (Eco Tourism), yaitu perjalanan kesuatu tempat yang relative masih asli atau belum tercemar, dengan tujuan untuk mepelajari, mengagumi, menikmati pemandangan, tumbuhan, dan binatang liar serta perwujudan budaya yang ada atau pernah ada di tempat tersebut. 5. Pariwisata Kota (City Tourism), yaitu perjalanan dalam suatu kota untuk menikmati pemandangan, tumbuhan dan binatang liar serta perwujudan budaya yang ada atau pernah ada di tempat tersebut. 6. Rersort City, yaitu kota atau perkampungan yang mempunyai tumpuan kehidupan pada persediaan sarana atau prasarana wisata yaitu
21
penginapan, restoran, olahraga, hiburan dan persediaan tamasya lainnya. 7. Pariwisata Agro (Agro Tourism yang terdiri dari Rural Tourism atau Farm Tourism) yaitu merupakan perjalanan untuk meresapi dan mempelajari kegiatan pertanian, perkebunan, peternakan, kehutanan. Jenis wisata ini bertujuan mengajak wisatawan memikirikan alam dan kelestariannya. 2.6
Sistem Informasi Geografis (SIG) Sistem informasi geografis (Geographic Information System/GIS) adalah
sistem yang dapat mendukung pengambilan keputusan spasial dan mampu mengintegrasikan deskripsi-deskripsi lokasi dengan karakteristik-karakteristik fenomena yang ditemukan di lokasi tersebut. SIG yang lengkap mencakup metodologi dan teknologi yang diperlukan, yaitu data spasial perangkat keras, perangkat lunak dan struktur organisasi (Gistut, 1994). Pengertian SIG (Sistem Informasi Geografis) salah satu model informasi yang berhubungan dengan data spasial (keruangan) mengenai daerah-daerah di permukaan Bumi adalah Sistem Informasi Geografi (SIG). Secara umum pengertian SIG adalah suatu sistem yang menekankan pada informasi mengenai daerah-daerah berserta keterangan (atribut) yang terdapat pada daerah-daerah di permukaan Bumi. Sistem Infomasi Geografis merupakan bagian dari ilmu Geografi Teknik (Technical Geography) berbasis komputer yang digunakan untuk menyimpan dan memanipulasi data-data keruangan (spasial) untuk kebutuhan atau kepentingan tertentu.
22
Tujuan pokok dari pemanfaatan Sistem Informasi Geografis adalah untuk mempermudah mendapatkan informasi yang telah diolah dan tersimpan sebagai atribut suatu lokasi atau obyek. Ciri utama data yang bisa dimanfaatkan dalam Sistem Informasi Geografis adalah data yang telah terikat dengan lokasi dan merupakan data dasar yang belum dispesifikasi (Dulbahri, 1993).
Gambar 2.1 Pengertian SIG. (Sumber : Google). 2.7
Global Positioning System (GPS) GPS (Global Positioning System) adalah sebuah sistem navigasi
berbasiskan satelit yang dibangun dari sebuah jaringan yang terdiri dari 24 satelit yang diletakkan dalam orbit. GPS bekerja pada berbagai kondisi cuaca, di manapun posisi di dunia, dan 24 jam satu hari (Alde, Lange, Kadam, 2011:1). GPS (Global Positioning System) adalah sistem satelit navigasi dan penentuan posisi yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk memberikan posisi dan kecepatan tiga dimensi serta informasi mengenai waktu. GPS terdiri dari 3 segmen yaitu segmen angkasa, kontrol/pengendali, dan pengguna. Segmen angkasa terdiri dari 24 satelit yang beroperasi dalam 6 orbit pada ketinggian 20.200 km dengan periode 12 jam (satelit akan kembali
ke titik
yang sama dalam 12 jam).
Segmen
Kontrol/Pengendali terdapat pusat pengendali utama yang terdapat di Colorodo
23
Springs, dan 5 stasiun pemantau lainnya dan 3 antena yang tersebar di bumi ini. Pada sisi pengguna dibutuhkan penerima GPS yang biasanya terdiri dari penerima, prosesor, dan antena. (Budiawan, Santoso, Zahra). Sebuah GPS receiver harus terkunci dengan sinyal dari setidaknya 3 satelit untuk menghitung posisi 2D (latitude dan longitude) dan pergerakan track. Dengan 4 atau lebih satelit, receiver dapat menentukan posisi 3D user (latitude, longitude, dan altitude). Begitu posisi user sudah ditentukan, unit GPS dapat menghitung informasi lain, seperti kecepatan, pelacakan, jarak tempuh, jarak tujuan, waktu matahari terbit dan terbenam, dan sebagainya (Alde, Lange, Kadam, 2011:1).
Gambar 2.2 Contoh Gambar GPS. (Sumber : Google). 2.7.1
Elemen – elemen Global Positioning System Pada GPS terdapat macam-macam elemen yang mendukung sebuah GPS
yaitu : 1. Segmen Angkasa (Space Segment) Space segment merupakan bagian yang terdiri dari 24 satelit yang saling bekerja sama memantau keberadaan GPS receiver. Ke-24 satelit tersebut mempunyai orbitnya masing-masing yang membutuhkan waktu 12 jam untuk satu kali memutari bumi, satuorbit terdiri dari 4 satelit, yang mana
24
masing-masing satelit membentuk sudut 55 derajat terhadap arah jarang pandang lurus mata. Satelit terus menerus mengeset dirinya sendiri agar selalu menerima sumber energi yaitu dari matahari, masing-masing satelit memiliki clock yang sampai dengan 3 nanosekon. 2. Segmen Kontrol (Control Segment) Control Segmen merupakan bagian dimana terdapat pusat untuk mengontrol dan memonitor semua satelit yang ada agar memastikan semuanya bekerja dengan baik. Semua informasi ini diproses di MCS (Master Control Station). 3. Segmen Pengguna (User Segment) User Segment terdiri dari receiver-receiver yang secara khusus didesain untuk menerima, menterjemahkan dan untuk memproses sinyal dari satelit GPS yang ada. Receiver-receiver tersebut bisa berdiri sendiri maupun sudah terintergrasi dengan dengan sistem lain. Masing GPS receiver didesain berbeda-beda sesuai dengan kebutuhannya.
Gambar 2.3 Elemen-elemen GPS. (Sumber : Google). 2.7.2
Error Budget pada Global Positioning System Sistem GPS telah didesain untuk seakurat mungkin, tetapi masih ada
sedikit error. Bila ditambahkan dari beberapa error, maka bisa mencapai deviasi
25
50-100 meter dari posisi yang sebenarnya. Ada banyak penyebab dari error ini beberapa diantaranya adalah : 1. Kondisi Atmosfer Kondisi atmosfer yang berubah mengakibatkan kecepatan sinyal GPS berubah karena sinyal tersebut melewati atmosfer bumi dan ionosfer sehingga jarak yang dihitung dengan rumus "Signal Speed x Time" akan berbeda sedikit karena rumus tersebut tidak memperhitungkan adanya ionosfer dan atmosfer bumi. 2. Ephemeris Error dan Clock Error Sinyal pada GPS membawa informasi tentang error pada ephemeris (posisi secara orbital). 3. Selective Availability Error pada posisi orbital seharusnya tidak dipusingkan oleh Selective Availability (SA), dimana merupakan suatu error yang disengaja sekitar 0 sampai ribuan kaki ke dalam sinyal navigasi yang ada secara umum, sehingga membuatnya susah untuk sebuah misil jarak jauh menentukan posisi targetnya secara presisi. Akurasi tambahan tersedia pada sinyal tetapi pada wujud yang telah dienkripsi sehingga hanya tersedia untuk milter Amerika Serikat saja, sekutunya dan beberapa orang pemerintah. Sayangnya SA ini bisa dihilangkan dengan cara koreksi secara diferrensial. 4. Multypath Signal yang mengalami pantulan akibat memasuki atmosfer bumi ketika menuju ke antena GPS.
26
2.8
Google Maps Google Maps mapping service adalah sebuah online tool yang
memberikan user berbagai fitur-fitur map seperti tampilan street maps, arahan kemudi point-to-point, dan jalur-jalur untuk mencari lokasi bisnis di berbagai kota. Dengan tambahan street map dan terrain view, satellite atau aerial views dapat memberikan tampilan yang mudah dipahami user dan dapat diakses siapa saja melalui online connection (Frazel, 2009:39).
Gambar 2.4 Tampilan Google Maps. (Sumber : Google). 2.9
Google Maps API
2.9.1
Pengertian API Menurut Tulach (2008, p1-14), API atau Application Programming
Interface bukan hanya satu set class dan method atau fungsi dan signature yang sederhana. Akan tetapi API, yang bertujuan utama untuk mengatasi “clueless” dalam membangun software yang berukuran besar, berawal dari sesuatu yang sederhana sampai ke yang kompleks dan merupakan perilaku komponen yang sulit dipahami. Secara sederhana dapat dipahami kekacauan yang akan timbul bila mengubah
dengan membayangkan
database atau skema XML.
Perubahan ini dapat dipermudah dengan bantuan API. Dari beberapa sumber yang didapat, dapat disimpulkan bahwa API adalah sekumpulan perintah, fungsi, class dan protokol yang memungkinkan suatu software berhubungan dengan software lainnya. 27
2.9.2
Pengertian Google Maps API Seperti yang tercatat oleh Svennerberg (Beginning Google Maps API 3,
p1), Google Maps API adalah API yang paling populer di internet. Pencatatan yang dilakukan pada bulan Mei tahun 2010 ini menyatakan bahwa 43% mashup (aplikasi dan situs web
yang menggabungkan dua
atau lebih sumber data)
menggunakan Google Maps API. Beberapa tujuan dari penggunaan Google Maps API adalah untuk melihat lokasi,
mencari alamat, mendapatkan petunjuk
mengemudi dan lain sebaginya. Hampir semua hal yang berhubungan dengan peta dapat memanfaatkan Google Maps. Google Maps (tanpa API) diperkenalkan pada Februari 2005 dan merupakan revolusi bagaimana peta di dalam halaman web, yaitu dengan membiarkan user untuk menarik peta sehingga dapat menavigasinya. Solusi peta ini pada saat itu masih baru dan membutuhkan server khusus. Beberapa saat setelahnya, ada yang berhasil men-hack Google Maps untuk digunakan di dalam webnya sendiri. Hal ini membuat Google Maps mengambil kesimpulan bahwa mereka membutuhkan API dan pada Juni 2005, Google Maps API dirilis secara publik. Cara penggunaan Google Maps API dapat dilihat pada contoh code html di bawah ini: history.html <meta charset="utf-8" />
28
GPS Tracking Systems <style type="text/css"> body { font: normal 14px Verdana; } h1 { font-size: 24px; } h2 { font-size: 18px; } #sidebar { float: right; width: 30%; } #main { padding-right: 15px; } .infoWindow { width: 220px; } <scripttype="text/javascript"src="http://maps.google.com/maps/api/js?sensor=fals e"> <script type="text/javascript"> 2.10
Sistem Koordinat Bujur-Lintang (Latitude-Longitude) Sistem koordinat bujur-lintang (latitude-longitude), terdiri dari dua
komponen yang menentukan, yaitu : 1. Latitude adalah garis yang melintang di antara kutub utara dan kutub selatan, yang menghubungkan antara sisi timur dan barat bagian bumi. Garis ini memiliki posisi membentangi bumi, sama halnya seperti garis equator (khatulistiwa), tetapi dengan kondisi nilai tertentu. Garis lintang inilah yang dijadikan ukuran dalam mengukur sisi utara-selatan koordinat suatu titik di belahan bumi. Berikut nilai-nilai yang dijadikan patokan ukuran garis lintang ini.
29
Latitude di bedakan menjadi 2 wilayah, yaitu utara atau yang biasa kita sebut lintang utara dan selatan atau yang biasa kita sebut lintang selatan, dimana nilai koordinat di bagian utara selalu positif dan nilai koordinat di bagian selatan adalah negatif. a. Garis paling atas (kutub utara) = 90 derajat b. Garis paling tengah (equator) = 0 derajat, dan c. Garis paling bawah (kutub selatan) = -90 derajat.
Gambar 2.5 Latitude. (Sumber : Google). 2. longitude adalah garis membujur yang menghubungkan antara sisi utara dan sisi selatan bumi (kutub). Garis bujur ini digunakan untuk mengukur sisi barat-timur koordinat suatu titik di belahan bumi. Longitude juga dibedakan menjadi 2 wilayah, yaitu bujur timur dan bujur barat, dimana koordinat yang berada di timur selalu bernilai negatif, dan sebaliknya yang berada di barat selalu positif. Nilai satuan ukuran derajat menjadi kilometer pada longitude juga sama seperti pada latitude.
Gambar 2.6 Longitude. (Sumber : Google). 30
2.10.1 Konversi Latitude Longitude
Gambar 2.7 Latitude dan Longitude Ada dua macam data Latitude dan Longitude, yaitu format Desimal dan format Degrees Minutes Seconds (DMS). Contoh, untuk lokasi kota Bandung, titik koordinat desimal yang diperoleh dari GoogleMaps adalah
(- 6.91126,
107.607796). 1. Konversi Desimal ke DMS Titik koordinat kota Bandung : - 6.91126,107.607796 1. Konversi latitude (- 6.91126), sebagai berikut : a. Nilai D/Degree diambil dari nilai integer bernilai positif, yaitu 6 b. Nilai M / Minute diambil dari nilai integer ((pecahan nilai degree) * 60) = int (0,91126 * 60) = int (54,6756) = 54 c. Nilai S / Second diambil dari (pecahan nilai minute * 60) = (0,6756 * 60) = 40,536, hasil akhir dengan pembulatan = 40
31
Karena latitude ini berada di bagian selatan bumi maka hasil akhirnya adalah
-6° 54’ 40” S (bernilai negatif karena berada
dibelahan selatan / south). 2. Konversi longitude (107.607796), sebagai berikut : a. Nilai D / Degree diambil dari nilai integer bernilai positif, yaitu 107 b. Nilai M / Minutes diambil dari nilai integer ((pecahan nilai degree * 60)) = int (0,607796 * 60) = int (36,46776) = 3 c. Nilai S / Second diambil dari (pecahan nilai minutes * 60) = (0,46776 * 60) = 28,0656, hasil akhir dengan pembulatan 28 Karena longitude berada di bagian timu bumi, maka hasil akhirnya adalah 107° 36’28” E (bernilai positif karena berada dibelahan timur / east). 2. Konversi DMS ke Desimal Titik koordinat kota Bandung -6° 54’ 40” S, 107° 36’28” E 1. Konversi latitude (-6° 54’ 40” S), sebagai berikut : = (nilai Degree) + (nilai Minute/60) + (nilai Second/3600) = (6) + (54 / 60) + (40 / 3600) = 6.911111, karena berada di bagian bumi selatan / South, maka hasil akhirnya negatif -6.911111 2. Konversi longitude (107° 36’28” E), sebagai berikut : = (nilai Degree) + (nilai Minute/60) + (nilai Second/3600)
32
= (107) + (36 / 60) + (28 / 3600) = 107.60778, karena berada di bagian bumi timur / east, maka hasil akhirnya tetap positif 107.60778 2.11
Rumus Kalkulasi Jarak
a. Haversine Formulla Suatu posisi di bumi dapat direpresentasikan dengan posisi garis lintang (latitude) dan bujur (longitude). Memperkirakan jarak antara dua titik di bumi berdasarkan letak dari garis lintang dan bujur bisa dilakukan dengan beberapa persamaan yang digunakan. Semua persamaan yang digunakan berdasarkan bentuk bumi yang bulat (spherical earth) dengan menghilangkan faktor bahwa bumi itu sedikit elips (elipsodial factor). Untuk metode ini kemungkinan kesalahan hanya 0.5%. Formulasi ini menggunakan persamaan Haversine sebagai dasar. Persamaan ini dapat digunakan untuk menghitung jarak lingkaran yang jauh antara dua titik. Berikut haversine formulla seperti pada persamaan 1. Haversine Formulla : a = sin2(∆lat/2) + cos(lat1).cos(lat2).sin2(∆long/2) c = 2.atan2(√a, √(1 – a)) d = R.c Keterangan
: R = earth’s radius (mean radius = 6,371km) ∆lat = lat2 – lat1 ∆long = long2 – long1
b. Spherical Law Of Cosines Metode haversine formulla di atas diciptakan ketika tingkat presisi hasil perhitungan masih sangat terbatas. Namun sekarang, perhitungan
33
komputer dapat memberikan tingkat presisi yang sangat akurat dengan menggunakan rumus spherical law of cosines. Spherical law of cosines : d = acos (sin(lat1).sin(lat2) + cos(lat1).cos(lat2).cos(∆long)).R Keterangan : R = earth’s radius (mean radius = 6,371km) ∆long = long2 – long1 Jika ditulis ke dalam javascript, rumus tersebut akan menjadi seperti pada dibawah ini. var R = 6371; // km var d = Math.acos(Math.sin(lat1)*Math.sin(lat2) + Math.cos(lat1)*Math.cos(lat2) * Math.cos(lon2-lon1) * R;
2.12
Android Pembahasan mengenai Android dan tools yang digunakan dalam
pembuatan aplikasi, akan dijelaskan pada sub bab berikut: 2.12.1 Pengertian Android Android adalah sekumpulan perangkat lunak yang ditujukan bagi perangkat bergerak mencangkup sistem operasi, middleware, dan aplikasi kunci.Android Standart Development Kit (SDK) menyediakan perlengkapan dan Application
programming
mengembangkan
aplikasi
interface pada
(API)
platform
pemrograman Java.
34
yang
Android
diperlukan
untuk
menggunakan
bahasa
Android dikembangkan oleh Google bersama Open Handset Alliance (OHA) yaitu aliansi perangkat seluler terbuka yang terdiri dari 47 perusahaan hardware,
Software
dan
perusahaan
telekomunikasi
ditujukan
untuk
mengembangkan standar terbuka bagi perangkat selular. 2.12.2 Sejarah Perkembangan Android Pada mulanya terdapat berbagai macam sistem operasi pada perangkat selular, diantaranya sistem operasi Symbian, Microsoft Windows Mobile, Mobile Linux, iOS, dan sistem operasi lainnya. Namun diantara sistem operasi yang ada belum mendukung standar dan penerbitan API yang dapat dimanfaatkan secara keseluruhan dan dengan biaya yang murah. Kemudian Google ikut berkecimpung di dalamnnya dengan platform Android, yang menjanjikan keterbukaan, keterjangkauan, open source, dan framework berkualitas. Pada tahun 2005, Google mengakuisisi perusahaan Android Inc. untuk memulai perkembangan platform Andoid.Dimana terlibat pengembangan ini adalah Andy Rubin, Rich Miner, Nick Sears, dan Chris White.Pada pertengahan 2007 sekelompok pemimpin industry bersama-sama membentuk analisis aliasi perangkat selular terbuka, Open Handset Alliance (OHA).Bagian dari tujuan aliansi ini adalah berinovasi dengan cepat dan menanggapi kebutuhan konsumen dengan lebih baik, dengan produk awalnya adalah platform Android.Dimana Android
dirancang untuk
melayani
kebutuhan operator telekomunikasi,
manufaktur handset, dan pengembangan aplikasi, OHA berkomitmen untuk membuat Android open source dengan lisensi Apache Versi 2.0. Android pertama kali diluncurkan pada 5 November 2007, dan smartphone pertama yang menggunakan sistem operasi Android dikeluarkan oleh T-Mobile
35
dengan sebutan G1 pada bulan September 2008.Hingga saat ini Android telah merilis beberapa versi Android untuk menyempurnakan versi sebelumnya. Selain berdsarkan penomoran, pada setiap versi Android terdapat kode nama berdasarkan nama-nama kue. Hingga saat ini sudah terdapat beberapa versi yang telah diluncurkan, diantaranya: versi 1.1 dirlis pada 9 maret 2009, versi 1.5 dirilis pada 30 April 2009 diberi nama Cupcake, versi 1.6 dirilis pada 15 September 2009 diberi nama Donut, versi 2.0 dirilis pada 26 Oktober 2009 diberi nama Éclair, versi 2.2 dirilis pada 20 Mei 2010 diberi nama Froyo (Frozen Yoghurt), versi 2.3 dirilis pada 6 Desember 2010 diberi nama Gingerbread, versi 3.0 dirilis pada Mei 2011 diberi nama Honeycomb, versi 4.0 dirilis pada 19 Oktober 2011 diberi nama ICS ( Ice Cream Sandwich), versi 4.1 dirilis pada 27 Juni 2012 diberi nama Jelly Bean. 2.12.3 Fitur-fitur yang Terdapat pada Android Fitur yang tersedia di Android adalah: a.
Kerangka aplikasi: itu memungkinkan penggunaan dan penghapusan komponen yang tersedia.
b.
Dalvik mesin virtual: mesin virtual dioptimalkan untuk perangkat telepon seluler.
c.
Grafik: grafik di 2D dan grafis 3D berdasarkan pustaka OpenGL.
d.
SQLite: untuk penyimpanan data.
e.
Mendukung media: audio, video, dan berbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).
f.
GSM, Bluetooth, EDGE, 3G, 4G dan WiFi (tergantung piranti keras).
36
g.
Kamera, Global
Positioning System
(GPS), kompas, NFC
dan
accelerometer (tergantung piranti keras). 2.12.4 Arsitektur Android Secara garis besar arsitektur android dapat dijelaskan dan digambarkan sebagai berikut: 1. Applications Android berisi sekumpulan aplikasi utama seperti : email client, program Short Message Service (SMS), kalender, peta, browser, daftar kontak, dan lain-lain. Semua aplikasi ditulis dengan menggunakan bahasa pemgrograman Java. 2. Applications Frameworks Kerangka kerja aplikasi yang ditulis dengan menggunakan bahasa pemrograman Java
merupakan peralatan yang digunakan oleh semua
aplikasi, baik aplikasi bawaan dari ponsel seperti daftar kontak, dan kotak SMS, maupun aplikasi yang ditulis oleh Google ataupun pengembang Android. Android
menawarkan
para
pengembang
kemampuan
untuk
membangun aplikasi yang inovatif. Pengembang bebas untuk mengambil keuntungan dari perangkat keras, akses lokasi informasi, menjalankan background services, mengatur alarm, menambahkan peringatan ke status bar, dan masih banyak lagi. Pengembang memiliki akses yang penuh ke dalam kerangka kerja API yang sama yang digunakan oleh aplikasi utama. Pada dasarnya, kerangka kerja aplikasi memiliki beberapa komponen sebagai berikut:
37
a. Activity Manager ngatur siklus dari aplikasi dan menyediakan navigasi backstack untuk aplikasi yang berjalan pada proses yang berbeda. b. Package Manager Untuk melacak aplikasi yang di-instal pada perangkat. c. Windows Manager Merupakan abstraksi dari bahasa pemrograman Java pada bagian atas dari level services (pada level yang lebih rendah) yang disediakan oleh Surface Manager. d. Telephony Manager Berisi sekumpulan API yang diperlukan untuk memanggil aplikasi. e. ContentProviders Digunakan untuk memungkinkan aplikasi mengakses data dari aplikasi lain (seperti contacts) atau untuk membagikan data mereka sendiri. f. ResourgeManager Digunakan untuk menagkses sumber daya yang bersifat bukan code seperti string lokal, bitmap, deskripsi dari layout file dan bagian eksternal lain dari aplikasi. g. View System Digunakan untuk mengambil sekumpulan button, list, grid, dan text box yang digunakan di dalam antarmuka pengguna. h. Notification Manager Digunakan untuk mengatur tampilan peringatan dan fungsi-fungsi lain.
38
3. Libraries Android memiliki sekumpulan library C/C++ yang digunakan oleh berbagai komponen dalam sistem Android. Kemampuan-kemampuan ini dilihat oleh para pengembang melalui kerangka kerja aplikasi. Beberapa dari library utama dijelaskan sebagai berikut: a. SystemC Library Merupakan implementasi turunan dari standar system library C (libc) yang diatur untuk peralatan berbasis embedded Linux. b. MediaLibraries Disediakan oleh PacketVideo (salah satu anggota dari OHA) yang memberikan library untuk memutar ulang dan menyimpan format suara dan video, serta static image file seperti MPEG4, MP3, AAC, AMR, JPG, and PNG. c. SurfaceManager Mengatur akses ke dalam subsistem tampilan dan susunan grafis layer 2D dan 3D secara mulus dari beberapa aplikasi dan menyusun permukaan gambar yang berbeda pada layar ponsel. d. Libraries LiveWebCore Merupakan web browser modern yang menjadi kekuatan bagi browser Android dan sebuah embeddable web view. e. ScalableGraphics Library (SGL) SGL mendasari mesin grafis 2D dan bekerja bersama-sama dengan lapisan pada level yang lebih tinggi dari kerangka kerja (seperti
39
Windows
Manager
dan
Surface
Manager)
untuk
mengimplementasikan keseluruhan graphics pipeline dari Android. f. Libraries 3D Implementasi yang didasarkan pada OpenGL ES 1.0 APIs dimana library menggunakan baik akselerasi perangkat keras 3D (jika tersedia) ataupun yang disertakan, dengan rasterisasi perangkat lunak 3D yang sangat optimal. g. FreeType Library Digunakan untuk menghaluskan semua tulisan bitmap dan vektor. h. SQLite Merupakan relational database yang kuat dan ringan serta tersedia untuk semua aplikasi. 4. Android Run Time Merupakan lokasi dimana komponen utama dari DVM ditempatkan. DVM dirancang secara khusus untuk Android pada saat dijalankan pada lingkungan yang terbatas, dimana baterai yang terbatas, CPU, memori, dan penyimpanan data menjadi fokus utama. Android memiliki sebuah tool yang terintegrasi yaitu “dx” yang mengkonversi generated byte code dari (.JAR) ke dalam file (.DEX) sehingga byte code menjadi lebih efisien untuk dijalankan pada prosesor yang kecil. Hal ini memungkinkan untuk memiliki beberapa jenis dari DVM berjalan pada suatu peralatan tunggal pada waktu yang sama. Core libraries ditulis dalam bahasa Java dan berisi kumpulan class, I/O dan peralatan lain.
40
5. Linux Kernel Arsitektur Android berdasarkan pada Linux 2.6 kernel yang dapat digunakan untuk mengatur keamanan, manajemen memori, manajemen proses, network stack, dan driver model. Kernel juga bertindak sebagai lapisan abstrak antara perangkat keras dan seluruh software stack.
Gambar 2.8 Arsitektur Android. (Sumber : Zechner, 2011). 2.12.5 Kelebihan Android Sudah banyak platform untuk perangkat selular saat ini, termasuk didalamnya Symbian, iOS, Windows Mobile, BlackBerry, Java Mobile Edition, Linux Mobile (LiM0), dan banyak lagi. Namun ada beberapa hal yang menjadi kelebihan Android. Walaupun beberapa fitur-fitur yang ada telah muncul sebelumnya 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 royaliti. Sementara pengembang software menyukai karena Android dapat digunakan di perangkat manapun dan tanpa terikat oleh vendor manapun. 41
2. Arsitektur komponen dasar Android terinspirasi dari teknologi internet Mashup. Bagian dalam sebuah aplikasi dapat digunakan oleh aplikasi lainnya, bahkan dapat diganti dengan komponen lain yang sesuai dengan aplikasi 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 suara 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 virtualDalvik, sehingga kode program portabel antara ARM, X86, dan arsitektur lainnya. Sama halnya dengan dukungan masukan seperti penggunaan Keyboard, layar sentuh, trackball dan resolusi layar semua dapat disesuaikan dengan program.
42
2.13
Java
2.13.1 Pengertian Java Java adalah pemrograman yang disusun oleh James Gosling yang dibantu oleh rekan-rekannya seperti Patrick Naugton, Ed Frank, dan Mike Sheridan di suatu perusahaan perangkat lunak yang bernama Sun Microsystem, pada tahun 1991. Bahasa pemrograman ini mula-mula diinisialisasi dengan nama “oak”, namun pada tahun 1995 diganti namanya menjadi “Java”. Alasan utama pembentukan bahasa java adalah untuk membuat aplikasiaplikasi yang dapat diletakan di berbagai macam alat elektronik, seperti microwave open dan remote control, sehingga Java harus bersifat portable atau yang sering disebut dengan platform independent (tidak tergantung pada platform). Itulah yang menyebabkan dalam dunia pemrograman Java, dikenal adanya istilah “write once, run everywhere”, yang berarti kode program hanya ditulis sekali, namun dapat dijalankan dibawah platform manapun, tanpa harus melakukan perubahan kode program. 2.13.2 Arsitektur Java Secara arsitektur, Java tidak berubah sedikitpun semenjak awal mula bahasa tersebut dirilis. Kompiler Java (yang disebut dengan Javac atau Java Compiler) akan mentranformasikan kode-kode dalam bahasa Java ke dalam suatu bytecode. Apa itu bytecode? Bytecode adalah sekumpulan perintah hasil kompilasi yang kemudian dapat dieksekusi melalui sebuah mesin komputer abstrak, yang disebut dengan JVM (Java Virtual Machine). JVM juga sering dinamakan sebagai interpreter, karena sifatnya yang selalu menerjemahkan kode-kode yang tersimpan dalam bytecode dengan cara baris demi baris.
43
a. Java Versi Lama (Java 1) Pada awal perilisannya, versi Java masih disebut dengan JDK (Java Depelovment Kit). Dalam JDK, semua kebutuhan untuk pengembangan program dan eksekusi program masih tergabung jadi satu. Penamaan ini berlaku sampai Java 1.1.Namun sekarang, setelah Java 1.2, Sun Microsystem menamainya dengan JSDK (Java Software Development Kit) dalam hal ini kebutuhan untuk pengembangan program dipisahkan dengan kebutuhan eksekusi.Bagian software yang digunakan untuk kebutuhan eksekusi program disebut dengan JRE (Java-Runtime Environment).Selanjutnya, Java 1.2 disederhanakan penamaannya menjadi “Java 2”. b. Java Veri Baru (Java 2) Sun Microsystem telah mendefinisikan tiga buah edisi dari Java 2, yaitu sebagai berikut: a. Java 2 Standard Edition (J2SE), digunakan untuk mengembangkan aplikasi-aplikasi desktop dan applet (aplikasi Java yang dapat dijalankan di dalam browser web). b. Java 2 Enterprise Edition (J2EE), merupakan superset dari J2SE yang memperbolehkan untuk mengembangkan aplikasi-aplikasi berskala besar (enterprise), yaitu dengan melakukan pembuatan aplikasiaplikasi di sisi server dengan menggunakan EJBs (Enterprise JavaBeans), aplikasi web dengan menggunakan Servlet dan JSP (JavaServer Pages) dan teknologi lainnya seperti CORBA (Common Object Request Broker Architecture) dan XML (Extensible Markup Language).
44
c. Java 2 Micro Edition (J2ME), merupakan subset dari J2SE yang digunakan untuk menangani pemrograman di dalam perangkatperangkat kecil, yang tidak memungkinkan untuk mendukung implementasi J2SE secara penuh. 2.14
JSON (Java Script Object Notation) JSON adalah standar berbasis teks ringan yang diracang terbuka dan
mudah untuk dibaca dan ditulis manusia serta mudah bagi mesin untuk mengurai dan menghasilkan dalam pertukaran data. JSON merupakan format text bahasa independen tetapi menggunakan konvensi bahasa yang akrab dari bahasa C, meliputi C, C++, C#, Java, JavaScript, Perl, Python, dan lainnya. Properti ini yang membuat JSON sebagai bahasa pertukaran yang ideal. Format JSON awalnya ditentukan oleh Douglas Crockford dan dijelaskan dalam RFC4627. Jenis media internet yang resmi untuk JSON adalah aplikasi/json. Format JSON sering digunakan untuk serialisasi dan mengirimkan data terstruktur melalui koneksi jaringan. Terutama untuk pengiriman data antara server
dan
aplikasi
web,
melayani
sebagai
alternative
ke
XML
(http://www.json.org). 2.15
Teori Analisis Teori analisis menurut para ahli memiliki peran yang sangat penting
khususnya dalam menciptakan suatu penemuan atau solusi akan sebuah permasalahan. Peran analisis juga ditujukan untuk melakukan deteksi apabila terdapat suatu kejanggalan atau penemuan khusus dalam suatu penelitian. Melalui analisis data, langkah penyelesaian suatu masalah pun dapat diketahui.
45
Teori analisis menurut para ahli merupakan uraian atas sebuah pokok permasalahan sesuai dengan penelitian atau hasil observasi yang telah dilakukan. Pada dasarnya, setiap ahli memberikan pengertian yang berbeda-beda menurut sudut pandang mereka masing-masing. Menurut Anne Gregory, proses analisis merupakan proses awal dalam tahap perencanaan penyelesaian suatu masalah. Selain itu, Dwi Pratowo dan Rifka Julianti juga mendefinisikan bahwa teori analisis merupakan teori penjabaran dan penelaahan suatu bagian permasalahan berdasarkan pengalaman dan observasi khusus untuk memperoleh makna dan kesimpulan keseluruhan akan masalah yang didiskusikan. Dengan demikian, berdasarkan uraian di atas, pengertian analisis menurut para ahli adalah sebagai suatu tindakan untuk menjawab permasalahan berdasarkan observasi, pengolahan data, dan akhirnya penarikan kesimpulan, sehingga penyelesaian dari permasalahan tersebut dapat diketahui dengan tepat. 2.16
Perancangan Menurut John Burch dan Gary Grudnitski yang telah terjemahkan oleh
Jogiyanto (2005:196) dalam bukunya yang berjudul Analisis dan Desain Sistem Informasi menyebutkan bahwa: “desain sistem dapat didefinisikan sebagai penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah dari satu kesatuan yang utuh dan berfungsi”. Definisi perancangan menurut Al-Bahra Bin Ladjamudin (2005:51) yang terdapat dalam buku yang berjudul Analisis dan Desain Sistem Informasi, menjelaskan bahwa: “perancangan adalah kemampuan untuk membuat beberapa alternatif pemecahan masalah”. Azhar Susanto (2004:331) menjelaskan dalam
46
buku berjudul Sistem Informasi Manajemen Konsep dan Pengembangannya yaitu: “perancangan adalah spesifikasi umum dan terinci dari pemecahan masalah berbasis komputer yang telah dipilih selama tahap analisis”. Berdasarkan dua definisi perancangan tersebut, maka penulis dapat menyimpulkan
bahwa
perancangan
merupakan
suatu
alternatif
untuk
memecahkan masalah dan yang dipilih selama tahap analisis dalam pemecahan masalah yang dihadapi. 2.17
Metodologi Pengembangan Perangkat Lunak Metodologi pengembangan perangkat lunak adalah suatu proses
pengorganisasian kumpulan metode dan konvensi notasi yang telah didefinisikan untuk mengembangkan perangkat lunak. Secara prinsip bertujuan untuk membantu menghasilkan perangkat lunak yang berkualitas. Penggunaan suatu metodologi sesuai dengan persoalan yang akan dipecahkan dan memenuhi kebutuhan pengguna akan menghasilkan suatu produk perekayasaan yang berkualitas dan terpelihara serta dapat menghindari masalahmasalah yang sering terjadi seperti estimasi penjadwalan dan biaya, perangkat lunak yang tidak sesuai dengan keinginan pengguna dan sebagainya. Metodologi pengembangan perangkat lunak (atau disebut juga model proses atau paradigma rekayasa perangkat lunak) adalah suatu strategi pengembangan yang memadukan proses, metode, dan perangkat (tools). 2.17.1 Model Prototype Model prototype dimulai dari mengumpulkan kebutuhan pelanggan terhadap perangkat lunak yang akan dibuat. Lalu dibuatlah program prototype agar pelanggan lebih terbayang apa yang sebenarnya diinginkan. Program ini
47
biasanya menyediakan tampilan dengan simulasi alur perangkat lunak sehingga tampak seperti perangkat lunak yang sudah jadi. Program prototype ini dievaluasi oleh pelanggan atau user sampai ditemukan spesikasi yang sesuali dengan keinginan pelanggan atau user.
Gambar 2.9 Model Prototype. (Pressman, 2003). Model prototype ini cocok untuk menjabarkan kebutuhan pelanggan secara lebih detail karena pelanggan sering kali kesulitan menyampaikan kebutuhannya secara detail tanpa melihan gambaran yang jelas. Model prorotype juga memiliki kelemahan sebagai berikut : 1. Pelanggan dapat sering dapat sering mengubah-ubah atau menambahnambah spesifikasi kebutuhan karena menganngap aplikasi sudah dengan cepat dikembangkan, karena adanya iterasi ini dapat menyebabkan pengembang banyak mengalah dengan pelanggan karena perubahan atau penambahan spesifikasi kebutuhan perangkat lunak. 2.
Pengembang lebih sering mengambil kompromi dengan pelanggan untuk
mendapatkan
prototype
dengan
waktu
cepat
sehingga
pengembang lebih sering melakukan segala cara (tanpa idealis) guna menghasilkan prototype untuk mendemostrasikan. Hal ini dapat 48
menyebabkan kualitas perangkat lunak yang kurang baik atau bahkan menyebabkan iteratif tanpa akhir. Untuk mengantisipasi agar proyek dapat berjalan sesuai dengan target waktu dan biaya di awal, maka sebaiknya spesipikasi system harus sudah disepakati oleh pengenbang dan pelanggan secara tertulis. Dokumen tersebut akan menjadi patokan agar spesipikasi kebutuhan system masih dalam ruang lingkup proyek. Jadi model prototype ini cocok digunakan untuk mendapatkan spesifikasi kebutuhan
pelanggan
secara
detail
tetapi
beresiko
tinggi
terhadap
membengkaknya biaya dan waktu proses. 2.18
Unified Modelling Language (UML) Menurut David M. Kroenke (2009), Unified Modeling Language (UML)
adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya. Menurut Nugroho (2010:6), “UML (Unified Modeling Language) adalah ‘bahasa’ pemodelan untuk sistem atau perangkat lunak yang berparadigma ‘berorientasi objek’. Pemodelan (modeling) sesungguhnya digunakan untuk penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami”. UML adalah bahasa pemodelan yang menggunakan konsep orientasi objek. UML dibuat oleh Grady Booch, James Rumbaugh, dan Ivar Jacobson di bawah bendera Rational Software Corp. UML menyediakan notasi-notasi yang membantu memodelkan sistem dari berbagai perspektif. UML tidak hanya
49
digunakan dalam pemodelan perangkat lunak, namun
hampir dalam semua
bidang yang membutuhkan pemodelan. 2.18.1 Diagram UML Beberapa tipe diagram UML, diantaranya : 1. Use Case Diagram Menurut Booch (2005), suatu use case diagram menampilkan sekumpulan use case dan aktor (pelaku) dan hubungan diantara use case dan aktor tersebut. Use case diagram digunakan untuk penggambaran use case statik dari suatu sistem. Use case diagram penting dalam mengatur dan memodelkan kelakuan dari suatu sistem. Use case menjelaskan apa yang dilakukan sistem (atau subsistem) tetapi tidak tidak menspesifikasikan cara kerjanya. Flow of event digunakan untuk menspesifikasikan kelakuan dari use case. Flow of event menjelaskan use case dalam bentuk tulisan dengan sejelas-jelasnya, diantaranya bagaimana, kapan use case dimulai dan berakhir, ketika use case berinteraksi dengan aktor, obyek apa yang digunakan, alur dasar dan alur alternatif. Use case Commucication assosiation
actor
System or subsystem boundary
Gambar 2.10 Notasi Use Case Diagram. (Simonn Bennet, Steve Marcob dan Ray Farmer :2006, p14). 50
Tabel 2.1 Use Case Diagram Simbol
Deskripsi Orang atau proses atau system lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri. Jadi walaupun symbol dari actor adalah gambar orang, tapi actor belum tentu orang: biasanya dinyatakan menggunakan kata benda diawal frase nama actor.
Aktor
Use Case
Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau actor, biasanya dinyatakan dengan menggunakan kata kerja diawal frase nama use case.
Extend
Relasi use case tambahan ke sebuah use case yang dimana use case yang ditambahkan dapat berdiri sendiri tanpa use case tambahan itu.
Assosiation
Komunikasi antar actor dan use case yang berpartisipasi pad ause case atau use case memiliki interaksi dangan actor.
Include
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsi atau sebagai syarat dijalankan use case ini.
51
Use case adalah gambaran umum sistem dari sudut pandang pengguna sistem. Tujuan dari use case adalah untuk menggambarkan apa yang sistem dapat lakukan. 2. Sequence Diagram Menurut Booch (2005), suatu sequence diagram adalah suatu diagram interaksi yang menekankan pada pengaturan waktu dari pesan-pesan. Diagram ini menampilkan sekumpulan peran dan pesan-pesan yang dikirim dan diterima oleh instansi yang memegang peranan tersebut. Sequence diagram menangkap objek dan class yang terlibat dalam skenario dan urut-urutan pesan yang ditukar antara objek diperlukan untuk melaksanakan fungsionalitas skenario. Sequence diagram berasosiasi dengan use case selama proses pengembangan. Dalam Unified Model Language (UML), objek dalam sequence diagram digambar dengan segiempat yang berisi nama objek yang diberi garis bawah. Objek dapat diberi nama dengan tiga cara : (nama objek), (nama objek dan class) atau (hanya nama class (anonymous object)). Berikut notasi sequence diagram seperti terlihat pada gambar dibawah ini :
Gambar 2.11 Notasi Sequence Diagram
52
Tabel 2.2 Sequence Diagram Simbol
Deskripsi Orang atau proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun symbol dari actor adalah orang, tapi actor belum tentu merupakan orang: biasanya dinyatakan menggunakan kata benda di awal frase nama aktor. Menyatakan kehidupan suatu objek.
Aktor
Life Line
Objek
Meyatakan objek berinteraksi pesan.
Waktu Aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan.
Pesan Tipe Create
Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat.
Pesan Tipe Call
Menyatakan suatu objek memanggil operasi/metode yang ada pada objek lain atau dirinya sendiri.
Pesan Tipe Return
Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian. 53
yang
3.
Activity Diagram Menurut Satzinger et al (2005:144), activity diagram adalah sebuah
bentuk workflow diagram yang menjelaskan tentang kegiatan pengguna dan urutan alirannya.
Gambar 2.12 Simbol Activity Diagram. (Satzinger et al, 2005:142). Activity diagram menggambarkan workflow (aliran kerja) atau sebuah aktivitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan actor, jadi aktivitas yang dapat dilakukan oleh sistem. Activity diagram adalah suatu bagan diagram yang menggambarkan urutan aktivitas-aktivitas dalam proses bisinis suatu perusahaan. Tabel 2.3 Activity Diagram Simbol
Deskripsi Status awal aktivitas sistem, sebuah diagram aktivitas memiliki sebuah status awal
Status Awal
54
Aktivitas
Aktivitas yang dilakukan suatu sistem, aktivitas biasanya diawali dengan kata kerja.
Percabangan
Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu.
Status Akhir
Status akhir yang dilakukan sistem, sebuah diagram aktivitas memiliki sbuah status akhir.
Swimlane
Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi.
4. Class Diagram Class diagram menurut Munawar (2005 : 28) merupakan himpunan dari objek-objek yang sejenis. Sebuah objek memiliki keadaan sesaat (state) dan perilaku (behavior). State sebuah objek adalah kondisi objek tersebut yang dinyatakan dalam attribute/properties. Sedangkan perilaku suatu objek mendefinisikan bagaimana sebuah objek bertindak/beraksi dan memberikan reaksi. Class Diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. 1. Atribut merupakan variable-variable yang dimiliki suatu kelas.
55
2. Operasi atau metode adalah fungsi-fungsi yang dimiliki suatu kelas. Tabel 2.4 Class Diagram Simbol
Deskripsi Kelas pada struktur sistem.
Kelas
2.19
Asosiasi
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity.
Generalisasi
Relasi antar kelas dengan makna generelisasi-spesialisasi (umum khusus).
Devendency
Relasi antar kelas dengan makna kebergantungan antar kelas.
Database Database adalah sebuah tempat penyimpanan yang besar dimana terdapat
kumpulan data yang tidak hanya berisi data operasional tetapi juga deskripsi data. Seperti yang disampaikan oleh Connolly dan Begg (2010, p.65), bahwa database adalah kumpulan data yang saling terhubung secara logis dan deskripsi dari data tersebut, dirancang untuk menemukan informasi yang dibutuhkan oleh sebuah organisasi. Dalam merancang database, salah satu hal yang perlu diperhatikan adalah efisiensi. Banyaknya data yang redudansi dapat mengurangai efisiensi pada database sehingga perlu dilakukan normalisasi. Database ini digunakan tidak hanya oleh satu orang maupun satu departemen, database dapat digunakan oleh 56
seluruh departemen dalam perusahaan. Database ini akan menjadi sumber data yang digunakan secara bersama dalm perusahaan. Hal ini kembali ditegaskan oleh Connolly dan Begg (2010, p.65), database tidak lagi dimiliki oleh satu departemen tetapi sumber perusahaan yang saling berbagi. Untuk mendapatkan database, Dengan hanya database saja tidak cukup, diperlukan Database Management System (DBMS) untuk dapat menggunakan database. Setiap database dapat berisi/memiliki sejumlah objek database, yang antara lain yaitu : a. Field Field adalah sekumpulan kecil dari kata atau sebuah deretan angkaangka. b. Record Record adalah kumpulan dari field yang berelasi secara logis. Contoh : nama, alamat, nomor telepon, dan sebagainya. c. File File atau berkas adalah kumpulan dari record yang berelasi secara logis. Contoh: berkas transaksi toko A yang mempunyai record tanggal, kode barang, dan harga. d. Entity Entity adalah orang, tempat, benda, atau kejadian yang berkaitan dengan informasi yang disimpan. e. Attribute Attribute adalah setiap karakteristik yang menjelaskan suatu entity. Contoh : nama pelanggan, umur pekerja, dan sebagainya.
57
f. Primary Key Primary key adalah sebuah field yang nilainya unik yang tidak sama antara satu record dan record yang lain. Primary key digunakan sebagai tanda pengenal dari suatu field. g. Foreign Key Foreign key adalah sebuah field yang nilainya berguna untuk menguhubungkan primary key lain yang berada pada tabel yang berbeda. 2.19.1 Data Data merupakan catatan atas kumpulan fakta yang dicatat dan disimpan oleh perusahaan untuk diolah sehingga dapat menghasilkan suatu informasi yang berguna bagi perusahaan itu sendiri. Data yang dikumpulkan di dalam database akan digunakan oleh pengguna akhir untuk mendapatkan informasi. Seperti pendapat yang diungkapkan oleh Laudon, (2007, p.375) data merupakan kumpulan fakta – fakta kasar yang menunjukkan kejadian yang terjadi dalam organisasi atau lingkungan fisik sebelum fakta tersebut diolah dan ditata menjadi bentuk yang dapat dipahami. 2.19.2 Database Management System (DBMS) Database management system merupakan software yang membantu pengguna untuk mengakses database. Dengan DBMS, seseorang dapat melakukan interaksi dengan database, misalnya untuk menambah, mengubah, menghapus, dan melihat data di dalam database. Hal ini juga dikemukakan oleh Connolly dan Begg (2010, p.66), DBMS merupakan sebuah sistem software yang
58
memungkinkan pengguna untuk menjelaskan, membuat, memelihara dan mengontrol akses dalam database. 2.20
Struktur Navigasi Struktur navigasi adalah struktur atau alur dari suatu program.
Menentukan struktur navigasi merupakan hal yang sebaiknya dilakukan sebelum membuat suatu aplikasi. Ada 4 (empat) macam bentuk dasar dari struktur navigasi yang biasa digunakan dalam proses pembuatan aplikasi, yaitu : 1. Linier Pemakai menelusuri program secara berurutan. Seperti pada Gambar 2.12.
Gambar 2.13 Struktur Navigasi Linier 2. Hirarki Pemakai menelusuri program melalui titik-titik percabangan dari suatu struktur pohon. Seperti pada Gambar 2.13.
Gambar 2.14 Struktur Navigasi Hirarki
59
3. Non Linier Pemakai bebas menelusuri program tanpa dibatasi oleh suatu rute. Seperti pada Gambar 2.14.
Gambar 2.15 Struktur Navigasi Non Linier 4. Campuran Pemakai dapat dengan bebas menelusuri program, tetapi pada bagian tertentu gerakan dibatasi secara hirarki ataupun linier. Seperti pada Gambar 2.15.
Gambar 2.16 Struktur Navigasi Campuran
60