bab i pendahuluan -...
TRANSCRIPT
1
BAB I
PENDAHULUAN I.
I.1. Latar Belakang
Seiring dengan perkembangan teknologi yang membuat kehidupan semakin
mudah dan efisien, orang mulai meninggalkan paradigma penggunaan media manual
yang membutuhkan waktu yang lama menuju dunia digital. Kebutuhan akan
informasi dengan mudahnya dapat diakses oleh berbagai orang melalui gadget dan
mobile phone.
Pada awal pembuatannya telepon genggam berfungsi sebagai alat komunikasi
yang dapat dibawa kemana saja. Telepon genggam dapat digunakan sebagai sarana
berkomunikasi jarak jauh secara mudah dan dinamis karena memanfaatkan sinyal
yang dikirimkan oleh BTS provider melalui jaringan 2G maupun 3G. Di masa kini,
fungsi telepon genggam tidak hanya digunakan untuk mengirim pesan dan menelpon
saja namun juga dapat digunakan untuk mendengarkan musik, menonton video atau
foto, mengakses internet, GPS dan lain-lain.
Sejalan dengan perkembangan teknologi yang semakin dinamis, fungsionalitas
smartphone berkembang guna mengakomodasi kebutuhan manusia yang semakin
meningkat. Hadirnya fitur Google Maps dan A-GPS pada perangkat Android, Apple
Maps pada iOS dan Nokia Maps pada Nokia memberikan banyak keuntungan bagi
pengguna. Pengguna tidak merasa kesulitan untuk mencari lokasi tempat, karena fitur
maps pada smartphone dapat menunjukkan keberadaan lokasi dan penunjuk arah
menuju lokasi.
Menurut hasil riset Growth for Knowledge (GfK), sebuah lembaga riset pasar
internasional, pada tahun 2013 penjualan smartphone di Indonesia berada pada
kisaran 14,8 juta unit (Anonim, 2013). Fungsionalitas dari smartphone mendukung
pangsa pasar smartphone terus melonjak. Dilihat dari jumlah penggunanya,
smartphone berbasis sistem operasi Android masih menduduki peringkat teratas.
Menurut hasil riset IDC Worldwide Mobile Phone Tracker, sebuah lembaga konsultan
teknologi dan komunikasi, pada tahun 2013 pengguna Android sebesar 81% dari total
pengguna smartphone di Indonesia (Sentana, 2014).
2
Yogyakarta, sebagai kota yang menawarkan keunikan budaya serta keramah-
tamahan warganya menjadi daya tarik tersendiri bagi pengembang perumahan untuk
melakukan ekspansi di daerah tersebut. Kondisi geografis yang strategis meliputi
adanya pantai dan gunung serta kondisi sosial warga yang ramah dan keberadaan
universitas unggul di Indonesia menjadikan Yogyakarta sebagai kota yang nyaman
untuk dijadikan tempat tinggal.
Menurut Peraturan Daerah Kabupaten Sleman nomor 53 tahun 2003 tercatat
persebaran perumahan berada di wilayah aglomerasi yakni Kecamatan Depok,
sebagian wilayah Kecamatan Gamping, Kecamatan Godean, Kecamatan Mlati,
Kecamatan Ngaglik, Kecamatan Ngemplak, Kecamatan Berbah, Kecamatan Kalasan
dan Kecamatan Sleman dengan koefisien dasar bangunan sebesar-besarnya 60 %
(Anonim, 2006).
Kecamatan Mlati, salah satu kecamatan yang berada di Kabupaten Sleman
menjadi sebuah daerah pusat ekspansi para pengembang perumahan di Yogyakarta.
Menurut data DPPD (Dinas Pengendalian Pertanahan Daerah) Kabupaten Sleman
tahun 2012, pembangunan perumahan di Kecamatan Mlati dalam kurung waktu tahun
2004 hingga 2011 mencapai 68 kompleks atau rata-rata tiap tahun ada delapan
kompleks perumahan baru (Jauhari dan Ritohardoyo, 2013).
Perkembangan perumahan di daerah kecamatan mlati berkembang dengan pesat.
Calon pembeli rumah di perumahan akan membutuhkan informasi tentang lokasi
perumahan yang akan dicarinya. Untuk dapat mengetahui lokasi perumahan, calon
pembeli rumah dapat dengan mudah mencarinya dengan menggunakan fasilitas
internet. Informasi lokasi perumahan saat ini sudah tersedia di berbagai macam
website. Namun untuk mencari lokasi perumahan masih tersebar di berbagai website,
sehingga memakan waktu dan biaya yang lebih untuk mencari alamat perumahan,
selain itu informasi yang ditampilkan tidak selalu lengkap.
Dengan adanya perkembangan perumahan di Kecamatan Mlati, Kabupaten
Sleman dan berkembangnya jumlah pengguna smartphone menggunakan sistem
operasi Android, penulis tergerak untuk melakukan pembuatan sistem informasi
perumahan kecamatan Mlati menggunakan sistem operasi Android untuk mengatasi
kebutuhan pengguna yang ingin mencari perumahan di kecamatan Mlati, Kabupaten
3
Sleman sehingga pengguna dapat mendapatkan informasi perumahan secara mudah,
cepat dan tepat.
I.2. Lingkup Kegiatan
Lingkup kegiatan dari proyek ini adalah:
1. Sistem informasi ini dibuat dengan menggunakan perangkat lunak Eclipse Kepler
dan dikembangkan untuk smartphone dengan sistem operasi Android minimal
versi 2.3 (Ginger Bread).
2. Informasi atribut yang dicantumkan dalam sistem informasi ini meliputi alamat
perumahan, status perumahan, nama pengembang perumahan, nama perumahan,
tipe unit rumah yang ada di setiap perumahan, nomor telepon yang bisa dihubungi
dan alamat website perumahan untuk beberapa perumahan yang mempunyai
halaman website.
3. Dalam sistem informasi ini, pengguna tidak dapat melakukan proses pengeditan
dan penghapusan terhadap hasil yang ditampilkan.
4. Sistem yang dikembangkan membutuhkan koneksi internet untuk mengakses GPS
dan Google Maps.
5. Lokasi perumahan ditampilkan dalam bentuk titik POI (Point of Interest).
I.3. Tujuan
Tujuan proyek ini adalah membuat aplikasi sistem informasi perumahan untuk
menyajikan persebaran perumahan yang ada di Kecamatan Mlati, Kabupaten Sleman
berbasis sistem operasi Android. Sistem informasi mudah untuk diakses dengan
menggunakan smartphone melalui koneksi internet.
I.4. Manfaat
Manfaat yang bisa didapatkan dari proyek ini adalah:
1. Memberikan informasi terkait persebaran perumahan kepada masyarakat umum
yang membutuhkan informasi perumahan di Kecamatan Mlati, Kabupaten
Sleman.
4
2. Membantu pengembang perumahan untuk memasarkan unit rumah yang ada di
Kecamatan Mlati.
I.5. Landasan Teori
I.5.1. Konsep Dasar Informasi
I.5.1.1. Pengertian Informasi. Banyak definisi yang dikemukakan oleh ahli untuk
mendefinsikan informasi. Informasi adalah data yang sudah mengalami suatu pemrosesan
dimana data yang sudah diproses tersebut ditata dengan rapi dan baik sehingga
bermanfaat serta tidak membingungkan penggunanya (Davis dan Olson, 1985). Pendapat
lain menyebutkan bahwa informasi merupakan data yang sudah dibentuk ke dalam
sebuah formulir bentuk yang bermanfaat dan dapat digunakan untuk manusia (Laudon
dan Traver, 2011).
Berdasarkan pendapat diatas dapat ditarik kesimpulan bahwa informasi adalah
data yang sudah diproses dan dimanipulasi sedemikian rupa sehingga dapat bermanfaat
bagi penggunanya.
I.5.1.2. Pengertian Data. Data merupakan sumber informasi. Data adalah sesuatu
yang masih mentah dan belum terorganisasi dengan baik, perlu dilakukan
pengelompokan secara menyeluruh. Data berisi kumpulan fakta, deskrpisi, dan tabel yang
menyatakan pemikiran atas suatu kondisi tertentu.
I.5.1.3. Kualitas Informasi. Informasi yang berkualitas memiliki ciri-ciri sebagai
berikut (Senn, 1984):
1. Akurat: bebas dari kesalahan, tidak bias/menyesatkan, jelas mencerminkan
maksudnya.
2. Kelengkapan: mengandung seluruh data-data penting yang dibutuhkan pengguna
informasi
3. Frekuensi: seberapa sering informasi dibutuhkan, dikumpulkan, atau dihasilkan
4. Sederhana: informasi yang dihasilkan tidak terlalu kompleks sehingga
memudahkan penentuan prioritas.
5
I.5.2. Sistem Informasi
Sistem informasi adalah suatu sistem di dalam suatu organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi
organisasi yang bersifat manajerial dalam kegiatan strategi dari suatu organisasi untuk
dapat menyediakan kepada pihak luar tertentu dengan laporan – laporan yang diperlukan
(Sutabri, 2005). Selain itu terdapat pendapat lain yang menyebutkan bahwa sistem
informasi adalah kombinasi dari manusia, fasilitas atau alat teknologi, media, prosedur
dan pengendalian yang bermaksud menata jaringan komunikasi yang penting, proses atas
transaksi-transaksi tertentu dan rutin, membantu manajemen dan pemakai intern dan
ekstern dan menyediakan dasar pengambilan keputusan yang tepat (Nash, 1993).
I.5.3. Sistem Informasi Geografis
Sistem informasi geografis merupakan sebuah sistem komputer yang
digunakan untuk melakukan proses pengambilan, penyimpanan, manipulasi, analisa serta
menampilkan data bereferensi kebumian. Terdapat pendapat ahli lain yang menyebutkan
bahwa sistem informasi geografis adalah seluruh manual berbasis komputer yang berisi
kumpulan petunjuk digunakan untuk menyimpan dan memanipulasi data bereferensi
geografis (Aronoff, 1989).
Terdapat dua buah jenis data dalam sistem informasi geografis yaitu data
spasial yang berhubungan dengan data geometri keruangan dan data atribut yang
berhubungan dengan informasi pendukung yang dimiliki oleh obyek spasial (Chang,
2013).
Sistem informasi geografi pertama kali dipakai pada tahun 1960-an oleh
Canada Geographic Information System (CGIS) untuk pengembangan kemampuan
lahan nasional dengan mengkompilasi dan inventarisasi potensi lahan produktif di
Canada. SIG awalnya berkembang dari dua independen disiplin ilmu yaitu: kartografi
digital dan database. Perkembangan dalam kartografi digital sebagai hasil dari
berkembangnya dunia desain khususnya CAD (Computer Aided Design) sejak tahun
1960-an. Demikian pula perkembangan penggunaan database khusunya sistem
pengelolaan database atau Data Base Management Systems (DBMS) yang
6
memungkinkan integrasi data spasial dan non spasial turut andil dalam mempercepat
perkembangan SIG (Darmawan, 2011).
I.5.4. Sistem Informasi Geografis berbasis Mobile
Teknologi sistem informasi geografis mengalami perkembangan yang sangat
pesat. Sistem informasi geografis yang tadinya hanya dapat digunakan di dalam kantor,
dewasa ini berkembang menjadi sebuah perangkat yang bersifat mobile / bergerak.
Sistem informasi geografis berbasis mobile merupakan kombinasi perangkat lunak sistem
informasi geografis (SIG), Global Positioning System (GPS) dan perangkat mobile
(ESRI, 2004). Sistem informasi geografis berbasis mobile dapat digunakan pula untuk
proses pengambilan, penyimpanan, manipulasi, analisa serta menampilkan data
bereferensi kebumian secara real time pada perangkat mobile.
Sistem informasi geografis berbasis mobile memungkinkan proses pekerjaan
pengguna menjadi semakin cepat dan akurat. Karena input data spasial dan atribut
didapatkan di lapangan menggunakan perangkat digital dan proses editing dapat
dilakukan secara langsung di lapangan.
I.5.5. Perangkat Bergerak (mobile phone)
Mobile phone atau perangkat bergerak merupakan sebuah media untuk
berkomunikasi secara nirkabel sehingga dapat dibawa kemana saja yang mempunyai
fungsi dasar yang sama dengan telepon konvensional yang menggunakan kabel.
Umumnya mobile phone terkini mempunyai sistem operasi yang dibenamkan di
dalamnya (Nofriansyah, 2011).
I.5.6. Konsep Dasar Perumahan
I.5.6.1. Pengertian Perumahan. Perumahan dapat diartikan sebagai tempat tiap
individu yang ada saling berinteraksi dan mempengaruhi satu sama lain serta memiliki
sense of belonging atas lingkungan tempat tinggalnya (Abrams, 1965).
Suatu kelompok rumah yang berfungsi sebagai lingkungan tempat tinggal atau
hunian yang dilengkapi dengan prasarana lingkungan yaitu kelengkapan dasar fisik
lingkungan, misalnya penyediaan air minum, pembuangan sampah, tersedianya listrik,
7
telepon, jalan, yang memungkinkan lingkungan pemukiman berfungsi sebagaimana
mestinya (UU No. 4 Tahun 1992).
I.5.6.2. Fungsi Perumahan. Perumahan digunakan sebagai lingkungan tempat
tinggal atau lingkungan hunian yang dilengkapi dengan prasarana dan sarana lingkungan
(UU No. 4 Tahun 1992). Fungsi perumahan digunakan sebagai penunjang kesempatan
berbagai keluarga untuk berkembang dalam kehidupan sosial, budaya, dan ekonomi.
Diwujudkan dalam lokasi tempat rumah itu didirikan. Kebutuhan berupa akses ini
diterjemahkan dalam pemenuhan kebutuhan sosial dan kemudahan ke tempat kerja guna
mendapatkan sumber penghasilan Tentang Perumahan dan Permukiman (Turner, 1972).
I.5.7. Konsep Dasar Android
Android adalah sistem operasi mobile berbasis linux. Android menyediakan
platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk
digunakan oleh bermacam peranti bergerak. Android merupakan subset perangkat lunak
untuk perangkat mobile yang meliputi sistem operasi, middleware dan aplikasi inti yang
diciptakan oleh Google (Safaat, 2012).
I.5.7.1. Arsitektur Android. Secara garis besar sistem informasi Android
mempunyai arsitektur sebagai berikut (Safaat, 2012):
1. Applications dan widgets, pemakai berhubungan dengan aplikasi saja.
Dalam layer ini pemakai melakukan pengunduhan aplikasi kemudian
dilakukan instalasi dan menjalankan aplikasi. Aplikasi inti di dalam layer
antara lain email, program SMS, kalender peta, penjelajah (browser),
kontak dan lain-lain.
2. Applications Frameworks, Android merupakan Open Development
Platform yang menawarkan kepada pengembang untuk membangun
sebuah aplikasi. Pengembang diberi kebebasan untuk mengakses
perangkat keras, akses informasi resources, menjalankan service
background, mengatur alarm dan menambahkan status notifikasi.
Pengembang memiliki akses penuh menuju API framework seperti yang
dilakukan oleh aplikasi kategori inti. Applications Frameworks adalah
layer atau tempat para pembuat aplikasi melakukan pengembangan
maupun pembuatan aplikasi yang akan dijalankan di sistem operasi
8
Android. Komponen yang termasuk di dalam Applications Frameworks
adalah :
a. Views.
b. Content Provider.
c. Resources Manager.
d. Notification Manager.
e. Activity Manager.
3. Libraries, fitur-fitur android berada di dalam layer ini, biasanya para
pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya.
Layer ini meliputi berbagai library C/ C++ inti seperti Libe dan SSL,
serta:
a. Libraries media untuk pemutaran media audio dan video.
b. Libraries untuk manajemen tampilan.
c. Libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D
dan 3D.
d. Libraries SQLite untuk dukungan basisdata.
e. Libraries SSl dan WebKit terintegrasi dengan penjelajah website
dan security.
f. Libraries LiveWebcore mencakup penjelajah website modern
dengan engine embeded web view.
g. Libraries 3D yang mencakup implementasi OpenGL ES 1.0 API’s.
4. Android Run Time, aplikasi dijalankan dalam layer ini dan dalam
prosesnya menggunakan implementasi Linux. Dalvik Virtual Machines
(DVM ) merupakan mesin yang membentuk dasar kerangka aplikasi
Android. Terdapat 2 bagian dalam Android Run Time, antara lain :
a. Core Libraries
b. Dalvik Virtual Machine
5. Linux Kernel, sistem operasi dari Android berada dalam layer ini. Berisi
sistem file-file yang mengatur sistem processing, memory, resource, driver
dan sistem operasi Android lainnya.
9
I.5.7.2. Android Virtual Device. Android Virtual Device merupakan sebuah
emulator yang digunakan untuk menjalankan aplikasi Android di personal computer.
Emulator tersebut berjalan untuk memberikan sebuah perangkat virtual dimana nantinya
dapat menjalankan aplikasi Android selayaknya sebuah smartphone Android (Hernita,
2013).
I.5.7.3. Versi Android. Android merupakan sistem operasi yang banyak
digunakan oleh perangkat bergerak. Sebagai sebuah sistem operasi, Android mempunyai
versi-versi yang pernah dirilis sebagai berikut (Rasjid, 2013):
a. Android Versi 1.1
b. Android Versi 1.5 (Cupcake)
c. Android Versi 1.6 (Donut)
d. Android Versi 2.0 / 2.1 (Eclair)
e. Android Versi 2.2 (Froyo / Frozen Yoghurt)
f. Android Versi 2.3 (Gingerbread)
g. Android Versi 3.0 (Honeycomb)
h. Android Versi 3.1 (Honeycomb)
i. Android Versi 3.2 (Honeycomb)
j. Android Versi 4.0 (Ice Cream Sandwich)
k. Android Versi 4.1 (Jelly Bean)
l. Android Versi 4.2 (Jelly Bean)
m. Android Versi 4.3 (Jelly Bean)
n. Android Versi 4.4 (Kit Kat)
I.5.8. Eclipse IDE (Integrated Development Environment)
Prasetyo (2006) menyatakan bahwa Integrated Development Environment
(IDE) adalah program komputer yang memiliki beberapa fasilitas yang diperlukan dalam
pembangunan perangkat lunak. Tujuan dari IDE adalah untuk menyediakan semua
utilitas yang diperlukan dalam membangun perangkat lunak.
Eclipse adalah sebuah IDE untuk mengembangkan perangkat lunak berbasis
java dan dapat dijalankan di semua platform (multi platform). Berikut ini adalah sifat dari
Eclipse (Hernita, 2013):
10
a. Multi-platform: Target sistem operasi Eclipse adalah berbagai sistem
operasi baik Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac
OS X.
b. Multi-language: Eclipse dikembangkan dengan bahasa pemrograman
javascript, akan tetapi Eclipse mendukung pengembangan aplikasi
berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python,
Perl, PHP.
c. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun
bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat
lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan
lain sebagainya.
Tabel I.1 Versi Eclipse yang sudah rilis
Nama Kode Tanggal Versi Platform
N/A 21 Juni 2004 3.0
N/A 28 Juni 2005 3.1
Callisto 30 Juni 2006 3.2
Europa 29 Juni 2007 3.3
Galileo 24 Juni 2009 3.5
Ganymede 25 Juni 2008 3.4
Helios 23 Juni 2010 3.6
Indigo 22 Juni 2011 3.7
Juno 27 Juni 2012 4.2
Kepler 26 Juni 2013 4.3
I.5.9. Java
Java merupakan salah satu aplikasi yang bersifat multiplatform. Hal ini menjadi
solusi dari berbagai macam aplikasi yang ada di dunia IT saat ini, karena biasanya
aplikasi hanya dapat dijalankan pada satu sistem operasi dan tidak dapat dijalankan di
sistem operasi yang lain.
Terdapat 2 pengertian mengenai Java, yaitu (Utomo, 2012):
11
1. Sebagai bahasa pemrograman
Javascript merupakan bahasa pemrograman berorientasi objek dimana
sintaksnya mengikuti bentuk bahasa C dan C++.
2. Sebagai platform untuk menjalankan aplikasi lain
Java sebagai platform terdiri dari sebuah mesin virtual dan media untuk
melakukan eksekusi (execution environment). Kode sumber pada Java juga
tidak perlu diubah ketika akan di compile ulang pada sistem operasi lainnya.
Hasil kompilasi dari kode sumber Java bukanlah kode mesin namun berupa
bytecode dengan ekstensi class. Bytcode ini dapat langsung dieksekusi pada
setiap sistem operasi dengan menggunakan Java Virtual Machine (JVM)
sebagai alat penginterpretasi terhadap bytecode tersebut. Proses eksekusi
program Java dapat diilustrasikan sebagai berikut:
Compiler Java JVM
Proses tersebut menjadikan pemrograman Java yang telah dikompilasi akan dapat
berjalan pada platform manapun, asalkan terdapat Java Virtual Machine di dalamnya.
I.5.9.1. Struktur Bahasa javascript. Sebagai bahasa pemrograman javascript
merupakan penurunan bahasa pemrograman C, oleh karena itu syntax yang digunakan
hampir sama dengan bahasa pemrograman C. Di dalam bahasa pemrograman javascript,
dikenal pula istilah case sensitive dimana besar-kecilnya huruf mempengaruhi output dari
program yang dibuat. Secara umum, struktur bahasa pemrograman javascript mempunyai
3 buah lapisan, yakni (Nugroho, 2010):
a. Package
Package berisi nama paket yang telah dimasukkan sebelumnya dalam proses
inisialisasi program, sehingga nama package tersebut akan selalu sama dalam
satu program. Sebagai contoh di bawah ini merupakan contoh script sebuah
package program aplikasi untuk sistem informasi perumahan.
package com.skripsi.yoga.perumahan;
Kode Sumber Byte Code Kode Mesin
Gambar I.1 Proses translasi dan eksekusi program Java
12
b. Import
Import berfungsi untuk memanggil seluruh class yang berada pada sebuah
package sehingga nantinya class tersebut dapat tersedia di dalam program
javascript yang dikembangkan. Di bawah ini merupakan contoh import pada
program java.
import java.util.ArrayList;
import java.util.List;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
c. Class
Class merupakan ciri utama program java. Class adalah inti dari program
berbasis Java. Dalam program Java, nama suatu class harus sama dengan
nama file *.java tersebut. Misal terdapat program hello.java, maka nama class
tersebut harus menjadi class hello{}.
Secara garis besar struktur dari bahasa javascript terdiri dari (Anonim, 2007):
a. Class Declaration
Berfungsi sebagai pendeklarasian nama kelas suatu program java sehingga
nama class yang dideklarasikan harus sesuai dengan nama file java yang
disimpan.
b. Class Body
Berfungsi sebagai tempat penulisan kode javascript yang digunakan dalam
class tersebut. Class body berisi variable, constructor dan method.
c. Variable
Bagian dari class body yang bertujuan untuk mendeklarasikan sebuah
variabel yang kemudian dapat digunakan di dalam method yang ada pada
class body. Pendeklarasian variabel ini harus dilakukan di dalam class
body.
d. Constructor
Objek yang nantinya akan digunakan pada saat class tersebut diinstansiasi
oleh class lain. Di dalam satu class boleh terdapat lebih dari satu
constructor. Semua class harus memilki constructor yang nantinya
13
digunakan untuk instansiasi. Nama dari constructor ini harus sama dengan
nama dari class utamanya. Misalkan nama dari class utama adalah Stack,
maka nama constructor adalah Stack.
public Stack(){
items = new Vector(10);
}
Dari contoh constructor di atas, apabila sebuah class ini melakukan
inisialisasi terhadap class Stack maka dapat dilakukan dengan cara sebagai
berikut :
new Stack();
e. Method
Method dapat diartikan sebagai bagian dari sebuah class yang didalamnya
terdapat proses-proses yang diinginkan. Dengan adanya method maka
penanganan sebuah proses lebih terstruktur dan mempermudah
programmer untuk memahami alur dari program yang dibuat. Sebuah
method akan diproses isinya apabila method tersebut dipanggil.
Pada gambar I.2 mengilustrasikan struktur atau diagram penulisan class
bahasa pemrograman javascript.
Gambar I.2 Struktur penulisan class program Java (Anonim, 2007)
14
I.5.10. XML
XML akronim dari eXtensible Markup Language adalah bahasa markup yang
dapat digunakan untuk menyimpan dan mengelola data secara ringkas yang
dikembangkan oleh W3C (World Wide Web Consortium) (Campbell, 2001). Tidak ada
definisi yang pasti mengenai XML. Terdapat pendapat dari ahli lain yang mengatakan
bahwa XML bukanlah suatu bahasa pemrograman, melainkan XML merupakan
sintaks yang digunakan untuk menjelaskan bahasa markup lain sehingga dinamakan
meta-language (Dournaee, 2002).
Bahasa markup XML pada pemrograman aplikasi Android digunakan sebagai
pembentuk grafis antar muka.
I.5.11. PHP
PHP merupakan akronim dari Hypertext Preprocessor, merupakan bahasa
pemrograman berbasiskan kode-kode yang digunakan untuk mengolah suatu data dan
mengirimkannya kembali ke web browser menjadi kode HTML. Kode PHP mempunyai
ciri-ciri khusus, yaitu (Oktavian, 2010):
a. Hanya dapat dijalankan menggunakan web server, misal: Apache.
b. Kode PHP diletakkan dan dijalankan web server.
c. Kode PHP dapat digunakan untuk mengakses database, seperti: MySQL,
PostgreSQL, Oracle.
d. Merupakan perangkat lunak yang bersifat open source.
e. Gratis untuk diunduh dan digunakan.
f. Memiliki sifat multiplatform, artinya dapat dijalankan menggunakan sistem
operasi apapun, seperti: Linux, MAC OS, Windows.
I.5.12. Web Service
I.5.12.1. Pengertian Web Service. Web service adalah suatu sistem perangkat
lunak yang dirancang untuk mendukung interoperabilitas dan interaksi antar sistem pada
suatu jaringan. Web service digunakan sebagai suatu fasilitas yang disediakan oleh suatu
website untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain,
sehingga sistem lain dapat berinteraksi dengan sistem tersebut melalui layanan-layanan
15
(service) yang disediakan oleh suatu sistem yang menyediakan web service. Web service
bertujuan untuk meningkatkan kolaborasi antar pemrogram dan perusahaan, yang
memungkinkan sebuah fungsi di dalam web service dapat dipinjam oleh aplikasi lain
tanpa perlu mengetahui detil pemrograman yang terdapat di dalamnya (Utama, 2006).
I.5.12.2. Arsitektur Web Service. Secara garis besar web service mempunyai
arsitektur sebagai berikut (Baltopoulos, 2005):
a. Registry: berperan sebagai penyedia web service.
b. Provider: berperan sebagai pemuat layanan ke registry.
c. Consumer: dapat menggunakan layanan di registry yang ada.
Arsitektur Web Service apabila diilustrasikan dapat dilihat pada gambar I.3
dibawah ini.
I.5.12.3. Protokol Web Service. Dalam pengimplementasiannya, web service
mempunyai beberapa protokol agar web service dapat berjalan dengan baik. Protokol
tersebut adalah:
1. SOAP
SOAP merupakan akronim dari Simple Object Acces Protocol yang merupakan
protokol yang digunakan web service dimana pengaplikasian utama untuk
komunikasi aplikasi internal. SOAP mengkodifikasi penggunaan XML sebagai
skema penulisan untuk proses request dan response menggunakan HTTP sebagai
media pertukaran informasi. SOAP berhubungan dengan 4 hal, yaitu (Papazoglou,
2008):
Gambar I.3 Arsitektur Web Service (Baltopoulos, 2005)
16
a. Sebagai format pesan untuk komunikasi satu arah yang menjelaskan
bagaimana sebuah pesan dapat disimpan dalam dokumen XML.
b. Sebagai pendeskripsian bagaimana sebuah pesan SOAP harus dibawa
menggunakan HTTP (untuk interaksi berbasis web) atau SMTP (untuk
interaksi berbasis e-mail)
c. Sebagai kumpulan peraturan yang harus diikuti ketika memproses sebuah
pesan SOAP dan pengklasifikasian entitas yang terlibat pada sebuah pesan
SOAP.
d. Sebagai kumpulan aturan bagaimana mengubah panggilan RPC (Remote
Procedure Call) kedalam pesan SOAP dan mengembalikannya
SOAP merupakan protokol yang ringan yang memperbolehkan aplikasi untuk
mengirimkan pesan dan feedback diantara sistem yang berbeda sehingga informasi dapat
dibagikan ke seluruh client atas persetujuan administrator.
2. WSDL
WSDL merupakan akronim dari Web Services Description Language merupakan
dokumen XML yang digunakan untuk mendeskripsikan web service yang berisi lokasi
dari service dan operasi atau metode yang digunakan dalam service (Thongsongkrit,
2006). Dalam pengimplementasiannya, dokumen WSDL mempunyai struktur sebagai
berikut:
a. Bagian Abstrak
Bagian abstrak mendeskripsikan tentang bagaimana pesan dapat dikirim
dan diterima dan operasi berhubungan dengan pola pertukaran dengan satu
atau lebih pesan.
b. Bagian Konkret
Bagian konkret menspesifikasikan tentang hubungan dan detil format dari
satu atau lebih antar muka, port yang digunakan untuk menghubungkan
sebuah alamat jaringan dengan binding.
Struktur WSDL apabila diilustrasikan dapat dilihat pada gambar I.4.
17
3. UDDI
UDDI akronim dari Universal Description, Discovery, and Intergration Protocol
merupakan dokumen XML yang digunakan untuk mendeskripsikan layanan bisnis dan
layanan provider. Digunakan pula untuk mendefinisikan struktur data dan API untuk
deskripsi layanan publikasi ke registry dan query ke registry. UDDI mendukung
developer dalam mencari informasi yang berkaitan tentang layanan (Fischer, 2006).
I.5.12.4. Aplikasi Web Service. Web service digunakan sebagai penyedia
layananan informasi dari suatu sistem sehingga sistem lainnya dapat mendapatkan
informasi dari sistem utama tanpa mengetahui pemrograman secara mendetail. Contoh
implementasi dari web service adalah sinkronasi data antar sistem informasi dalam E-
Government di Pemerintah Kabupaten Bantul. Salah satu permasalahan penting dan perlu
segera diatasi terkait dengan pengembangan aplikasi sistem informasi di Pemkab Bantul
adalah bagaimana melakukan sinkronisasi data antara aplikasi. Permasalahan ini dapat
diatasi dengan mengembangkan aplikasi web service yang memungkinkan untuk
melakukan proses pertukaran data untuk sinkronisasi data antar sistem yang telah ada
(Sutanta dan Mustafa, 2012).
Gambar I.4 Struktur dokumen WSDL (Thongsongkrit, 2006)
18
I.5.13. Geoportal
Geoportal mengatur konten dan layanan seperti direktori, perangkat pencarian,
informasi masyarakat, dukungan sumber daya, data dan aplikasi. Geoportal menyediakan
kemampuan catatan metadata untuk data dan layanan yang relevan, serta menyediakan
link langsung ke konten online layanan itu sendiri. Geoportal juga dapat mengontrol
penggunaan layanan komersial dengan memfasilitasi penjualan/pembelian data dan
layanan (Maguire dan Longley 2005 dalam Fajriah 2013).
Gambar I.5 menunjukkan operasi 1 mengacu pada publikasi metadata pada
sumber daya geospasial dalam geoportal oleh penyedia. Operasi 2 menunjukkan
pertanyaan yang dikirim oleh pengguna melalui web. Operasi 3 menunjukkan respon
yang ditawarkan untuk membantu pengguna dalam menemukan permintaan data. Operasi
4 dilakukan ketika pengguna memanfaatkan sumber daya yang ditawarkan (Maguire dan
Longley 2005 dalam Fajriah 2013).
I.5.13.1. Geoportal Indonesia. Geoportal menawarkan kemampuan untuk dapat
memberikan data dan layanan yang relevan, serta menyediakan link langsung ke konten
online layanan itu sendiri. Geoportal sudah dikembangkan di Indonesia. Geoportal
Indonesia dapat diakses melalui alamat website http://tanahair.indonesia.go.id/. Geoportal
Indonesia diberi nama Ina-Geoportal yang merupakan singkatan dari Indonesia
Gambar I.5 Peran geoportal (Maguire dan Longley 2005 dalam Fajriah 2013)
19
Geospatial Portal. Ina-Geoportal dibangun oleh Badan Informasi Geospasial (BIG)
dengan tujuan untuk memberi akses kepada pengguna beberapa informasi geospasial.
Pihak BIG memperkenalkan Ina-Geoportal saat memperingati Hari Teknologi Nasional
ke-17 tanggal 11 Agustus 2012 (Fajriah, 2013).
I.5.14. JSON (JavaScript Object Notation)
JSON (JavaScript Object Notation) adalah sebuah format pemrograman berbasis
javascript yang digunakan untuk melakukan pertukaran data, mudah ditulis oleh
pengembang aplikasi serta mudah diterjemahkan oleh komputer. Format bahasa
pemrograman ini didasarkan pada Standar ECMA-262 edisi ke-3 dimana menggunakan
bahasa umum yang digunakan oleh bahasa C, C++, C#, Java, JavaScript, Perl dan Python
(JSON Team, 2014).
Format penulisan JSON terdiri dari dua struktur:
a. Kumpulan pasangan string dan value.
b. Daftar value yang terurutkan (an ordered list of values)
Struktur-struktur data ini disebut sebagai struktur data universal. Artinya, format
penulisan JSON sama dengan logika penulisan bahasa pemrograman apapun. Apabila
digambarkan dalam bentuk ilustrasi, maka dapat dijelaskan struktur format pertukaran
data JSON sebagai berikut:
1. Objek
Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung
kurawal tutup). Setiap string diikuti dengan : (titik dua) dan setiap pasangan
nama/nilai dipisahkan oleh , (koma). Apabila diilustrasikan, maka dapat dilihat
pada gambar I.6.
Gambar I.6 Ilustrasi objek JSON (JSON Team, 2014)
20
2. Array
Array adalah kumpulan nilai yang terurutkan. Array dimulai dengan [ (kurung
kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan
oleh , (koma). Apabila diilustrasikan, maka dapat dilihat pada gambar I.7.
3. Value
Value dapat berupa sebuah string dalam tanda kutip ganda, atau angka, atau true
atau false atau null, atau sebuah objek atau sebuah array. Apabila diilustrasikan,
maka dapat dilihat pada gambar I.8.
I.5.15. Google Maps
Google Maps adalah sebuah halaman web yang memungkinkan penggunanya
untuk dapat melihat peta virtual secara online menggunakan web browser yang dapat
diakses di http://maps.google.com. Peta digital yang telah disediakan oleh google ini
dapat diakses oleh pengguna secara gratis dan hanya memerlukan koneksi internet. Pada
situs tersebut kita dapat melihat informasi geografis pada semua wilayah di bumi.
Layanan google maps ini interkatif, karena peta bersifat digital, maka peta dapat digeser
Gambar I.7 Ilustrasi array JSON (JSON Team, 2014)
Gambar I.8 Ilustrasi value JSON (JSON Team, 2014)
21
menuju lokasi yang diinginkan, mencari lokasi sesuai nama lokasi dan nilai lintang dan
bujur, mengubah tingkat zoom, serta mengubah tampilan peta sesuai dengan layer-layer
yang disediakan oleh google.
Saat masuk ke menu utama website http://maps.google.com, tampilan utama situs
akan seperti berikut ini:
Fasilitas yang ada pada Google Map adalah mencari suatu lokasi tertentu
berdasarkan kata kunci yang dimasukkan. Kita dapat memasukkan kata kunci seperti
hotel, tempat makan, perguruan tinggi, nama daerah, lokasi bisnis, tempat hiburan. Kata
kunci tersebut nantinya akan ditampilkan sebagai POI (Point of Interest). Point of Interest
ini nantinya dapat dilakukan proses mencari rute dari suatu lokasi ke Point of Interest
tersebut. Pendeskripsian masing-masing menu diatas dapat dijelaskan sebagai berikut:
a. Proses memasukkan kata kunci ditunjukkan oleh huruf A.
b. Huruf B menunjukkan tombol untuk melakukan proses pencarian rute dari
satu lokasi ke lokasi tertentu. Pencarian rute dapat dilakukan sesuai dengan
kategori. Kategori tersbut adalah mobil, angkutan umum, berjalan, bersepeda.
Pada huruf B ini juga dapat dilakukan proses pencetakan halaman peta dan
pembuatan tautan untuk menampilkan peta google map pada sebuah halaman
web lain.
Gambar I.9 Tampilan utama situs Google Maps
22
c. Untuk menjelajah peta secara interaktif, dapat dilakukan dengan menekan
tombol pan yang ditunjukkan huruf C. Tombol pan menunjuk pada 4 arah,
yakni atas, kiri, kanan, bawah.
d. Untuk mendapatkan posisi pengguna dapat dilakukan dengan menekan tombol
pada huruf D.
e. Proses pembesaran dan pengecilan peta sesuai skala yang diinginkan dapat
dilakukan pada huruf E. Terdapat 17 tingkatan zoom yang dapat dipilih
dengan cara menekan tombol plus/minus, atau dengan menggeser tombol yang
terdapat di antara tanda plus/minus. Tampilan zoom pada Google Maps dari
yang paling rendah hingga yang paling tinggi dapat dilihat pada gambar I.10.
f. Pemilihan layer peta dapat dilakukan pula pada huruf F. Terdapat pilihan
layer satelit dan foto. Layer satelit menampilkan bumi secara nyata yang
dihasilkan dari citra satelit, sedangkan layer foto menampilkan peta google
maps hasil digitasi pihak Google. Layer Google Maps ditunjukkan oleh
gambar I.11 di bawah ini.
Gambar I.10 Tampilan pembesaran level tertinggi dan terendah Google Maps
Gambar I.11 Tampilan layer foto dan layer satelit Google Maps
23
I.5.15.1. Google Maps API (Application Programming Interface). Bahasa
pemrograman dari Google Maps yang hanya terdiri dari HTML dan javascript,
memungkinkan kita untuk menampilkan Google Maps di website lain.
Google Maps Application Programming Interface (API) merupakan suatu fitur
aplikasi yang dikeluarkan oleh google untuk memfasilitasi pengguna yang ingin
mengintegrasikan Google Maps ke dalam website masing-masing dengan menggunakan
fragment. Dengan menggunakan Google Maps API, Google Maps dapat ditampilkan di
website lain. Agar aplikasi Google Maps dapat muncul di website tertentu, diperlukan
adanya API key. API key merupakan kode unik yang digenerasikan oleh google untuk
suatu website tertentu, agar server Google Maps dapat mengenali website kita.
Tidak hanya dalam website, Google Maps API key dapat pula di embed kan ke
dalam script XML di dalam program aplikasi Eclipse (Android Developer, 2013). Hal ini
dilakukan apabila ingin menampilkan Google Maps di dalam aplikasi Android seperti
yang ditunjukkan kode di bawah ini.
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyAraXjH4viSKahK_vEkiZziOwR8feq62xY" />
I.5.16. A-GPS
A-GPS adalah suatu metode penentuan posisi penyempurnaan dari metode GPS
dengan menyediakan informasi lokasi melalui bantuan saluran komunikasi alternatif yang
tersedia di sekitar posisi pengguna berada. Receiver A-GPS masih melakukan
pengukuran dari satelit, namun proses penghitungan posisi dibantu oleh saluran
komunikasi, maka pekerjaan tersebut menjadi lebih cepat. GPS dibangun sebagai alat
panduan penunjuk arah dan koordinat bagi kendaraan baik di darat, laut maupun udara.
Dalam berbagai hal, receiver GPS dipasang di luar untuk mendapatkan pandangan langit
yang baik sehingga menghasilkan posisi yang akurat. Dewasa ini, GPS lebih banyak
digunakan untuk kepentingan sipil dibandingkan dengan kebutuhan militer. Misalkan,
beberapa kendaraan sekarang sudah dilengkapi dengan GPS untuk mempermudah
pengendara menuju lokasi yang diinginkan. Oleh karena itu, GPS diharapkan dapat
24
bekerja dengan baik dalam kondisi apapun, bahkan untuk kepentingan di dalam ruangan.
Persyaratan inilah yang mendorong pengembangan A-GPS (Diggelen, 2009).
I.5.16.1. Prinsip Kerja A-GPS. A-GPS bekerja dengan menyediakan informasi
yang memperbolehkan receiver GPS untuk mengetahui frekuensi apa yang digunakan
dan kemudian data bantuan berupa sinyal koneksi internet memberikan posisi satelit yang
digunakan untuk penghitungan posisi GPS. Setelah memperoleh sinyal, hal yang
dilakukan kemudian adalah mengambil rentang pengukuran (dalam hitungan milisecond)
dan kemudian receiver A-GPS dapat menghitung posisi yang ingin diketahui. Prinsip
kerja A-GPS dapat dilihat pada gambar I.12 dibawah ini.
I.5.17. Location Based Service (LBS)
Location based service atau layanan berbasis lokasi adalah sebuah layanan
informasi yang dapat diakses menggunakan piranti mobile melalui jaringan Internet dan
seluler serta memanfaatkan kemampuan penunjuk lokasi pada piranti mobile (Küpper,
2005).
Terdapat empat komponen pendukung utama dalam teknologi layanan berbasis
lokasi, antara lain (Steiniger, 2006):
Gambar I.12 Prinsip kerja A-GPS (Diggelen, 2009)
25
1. Piranti Mobile
Piranti mobile adalah salah satu komponen penting dalam LBS. Piranti ini
berfungsi sebagai alat bantu (tool) bagi pengguna untuk meminta informasi.
Hasil dari informasi yang diminta dapat berupa teks, suara, gambar dan lain
sebagainya. Piranti mobile yang dapat digunakan bisa berupa PDA,
smartphone, laptop. Selain itu, piranti mobile dapat juga berfungsi sebagai alat
navigasi di kendaraan seperti halnya alat navigasi berbasis GPS.
2. Jaringan Komunikasi
Komponen kedua adalah jaringan komunikasi. Komponen ini berfungsi
sebagai jalur penghubung yang dapat mengirimkan data-data yang dikirim
oleh pengguna dari piranti mobile-nya untuk kemudian dikirimkan ke
penyedia layanan dan kemudian hasil permintaan tersebut dikirimkan kembali
oleh penyedia layanan kepada pengguna.
3. Komponen Positioning (Penunjuk Posisi / Lokasi)
Setiap layanan yang diberikan oleh penyedia layanan biasanya akan
berdasarkan pada posisi pengguna yang meminta layanan tersebut. Oleh
karena itu diperlukan komponen yang berfungsi sebagai pengolah/pemroses
yang akan menentukan posisi pengguna layanan saat itu. Posisi pengguna
tersebut bisa didapatkan melalui jaringan komunikasi mobile atau juga
menggunakan Global Positioning System (GPS).
4. Penyedia layanan dan aplikasi
Penyedia layanan merupakan komponen LBS yang memberikan berbagai
macam layanan yang bisa digunakan oleh pengguna. Sebagai contoh ketika
pengguna meminta layanan agar bisa tahu posisinya saat itu, maka aplikasi
dan penyedia layanan langsung memproses permintaan tersebut, mulai dari
menghitung dan menentukan posisi pengguna, menemukan rute jalan, mencari
data di Yellow Pages sesuai dengan permintaan, dan masih banyak lagi yang
lainnya.
5. Penyedia data dan konten
Penyedia layanan tidak selalu menyimpan seluruh data dan informasi yang
diolahnya. Karena bisa jadi berbagai macam data dan informasi yang diolah
26
tersebut berasal dari pengembang/pihak ketiga yang memang memiliki
otoritas untuk menyimpannya. Sebagai contoh basis data geografis dan lokasi
bisa saja berasal dari badan-badan milik pemerintah atau juga data-data
perusahaan/bisnis/industri bisa saja berasal dari Yellow Pages, maupun
perusahaan penyedia data lainnya.
I.5.18. Basis Data
Aplikasi membutuhkan media untuk penyimpanan data. Data-data tersebut
disimpan dalam kumpulan data yang disebut sebagai basis data. Basis data merupakan
kumpulan data yang disimpan secara sistematis sehingga data dapat dipanggil ulang
dalam sebuah aplikasi dan dapat memperoleh informasi dari basis data tersebut. Dalam
pembuatan basis data, diperlukan perangkat lunak agar dapat mengelola dan memanggil
query basis data tersebut. Perangkat lunak tersebut disebut DBMS (Database
Management System) (Fathansyah, 2012).
Dalam perancangan basis data diperlukan pendefinisian yang jelas mengenai data
apa saja yang akan ditampilkan dan jenis tipe datanya. Dalam basis data, data disimpan
dalam sebuah entitas. Entitas berisi data-data atribut yang mendeskripsikan karakteristik
suatu entitas. Hubungan antar entitas pada basis data digambarkan dalam bentuk diagram
ER. Diagram ER adalah sebuah konsep perepresentasian data yang digunakan untuk
memodelkan basis data dan digunakan untuk menghasilkan jenis skema konseptual dari
suatu sistem (Crane, 2011).
I.5.18.1. Manfaat Basis Data. Dengan menggunakan basis data, banyak manfaat
yang dapat diperoleh. Manfaat tersebut diantaranya (Kusrini, 2007):
a. Kecepatan dan kemudahan
Basis data memungkinkan pengguna untuk mendapatkan informasi secara cepat
dan mudah. Basis data mempunyai fungsi mengelompokkan dan mengurutkan
data secara baik dan benar.
b. Kebersamaan pemakai
Basis data dapat dipergunakan oleh berbagai pengguna dan untuk tujuan tertentu.
Misalkan basis data dosen dalam perguruan tinggi. Data mengenai dosen
dibutuhkan oleh bagian tata usaha rektorat, fakultas dan jurusan dimana dosen
tersebut mengajar. Tidak semua bagian tata usaha mempunyai data tersebut.
27
Cukup satu tempat pentimpanan, misalkan bagian tata usaha rektorat dan semua
bagian tata usaha lainnya dapat mengakses basis data tersebut sesuai dengan
keperluan.
c. Pemusatan kontrol data
Karena basis data hanya di simpan dalam 1 tempat, maka data dapat dikontrol
dengan mudah. Apabila di kemudian hari diperlukan proses pembaharuan, maka
hanya diperlukan pembaharuan di satu tempat.
d. Efisiensi ruang penyimpanan (space)
Karena di gunakan secara bersama, maka penyimpanan basis data hanya berada di
satu tempat. Hal ini meminimalisasikan ruang penyimpanan basis data yang
dimiliki oleh sebuah kelompok / organisasi.
e. Keakuratan
Penerapan secara ketat aturan tipe data, domain data, keunikan data, hubungan
antar data, dll. Dapat menekan ketidakakuratan dalam pemasukan/penyimpanan
data.
f. Keamanan
Basis data dapat dienkripsikan kata kunci sehingga pengguna hanya dapat
mengakses data sesuai dengan posisi dan kebutuhannya.
I.5.18.2. Basis Data Web Server. Basis data web server merupakan basis data
yang disimpan pada sisi server dimana penyimpanan basis data ditempatkan pada sebuah
halaman web dan nantinya dapat dipanggil sesuai dengan kebutuhan informasi yang
diinginkan pengguna pengguna (Ricky, 2006). Hal ini dibangun dengan menggunakan
bahasa pemrograman SQL (Structure Query Language) untuk pembangunan basis data
dan bahasa PHP untuk mengkoneksikan basis data ke sisi client.
I.5.18.3. Basis Data di Android. Android sebagai sebuah sistem operasi juga
mempunyai basis data yang disebut sebagai SQLite. SQLite merupakan sebuah perangkat
lunak kombinasi SQL interface dan penggunaan memory sedikit dengan kecepatan yang
tinggi. SQLite yang ada di Android termasuk sebagai Android runtime, sehingga setiap
versi Android dapat membuat basis data dengan menggunakan SQLite.
Dalam sistem operasi Android, terdapat beberapa teknik untuk penyimpanan data.
Teknik yang umum digunakan adalah sebagai berikut (Safaat, 2012):
28
a. Shared Preferences, yakni menyimpan data dari beberapa nilai (value) dalam
bentuk lain yang disebut sebagai preferences.
b. Files, yaitu menyimpan data dalam bentuk file, dalam bentuk writable maupun
readable.
c. SQLite Databases, penyimpanan data dalam bentuk basis data
d. Content Providers, penyimpanan data dalam bentuk content provider services.