TUGAS AKHIR PERIODE JANUARI 2011 memanfaatkan Global Positioning System (GPS), PEMBANGUNAN SISTEM PELACAKAN DAN PENELUSURAN DEVICE MOBILE BERBASIS yaitu satu-satunya sistem satelit navigasi global GLOBAL POSITIONING SISTEM (GPS) PLATFORM MOBILE GOOGLE untuk PADA penentuan lokasi, kecepatan, arah, dan waktu yang telah beroperasi secara penuh di dunia. Dalam penentuan GPS dapat menyediakan Wildan Habibi, Ary Mazharuddin S. S.Kom,lokasi M.Comp.Sc Jurusan Teknik Informatika, Fakultas Teknologi Sepuluh Nopember tingkatInformasi, akurasiInstitut yangTeknologi amat tinggi yaitu hingga Email : [email protected] mencapai ketepatan ±15 meter [2]. Penggunaan GPS memungkinkan identifikasi lokasi perangkat memanfaatkan Global positioning system (GPS) yaitu satu-satunya sistem satelit navigasi global untuk penentuan lokasi, kecepatan, arah, dan waktu yang telah beroperasi secara penuh di dunia. Dalam penentuan lokasi GPS dapat menyediakan tingkat akurasi yang amat tinggi yaitu hingga mencapai ketepatan ±15 meter [2]. Google Android adalah satu-satunya platform perangkat mobile open source di dunia yang dikembangkan oleh Open Handset Aliance, Android mempunyai prospek tingkat penetrasi pasar yang sangat menjanjikan dimana diperkirakan dalam waktu 6 bulan pertama penjualan saja, akan terdapat 4,2 juta handset Android di seluruh dunia [11]. Berdasarkan ulasan di atas dapat diusulkan sebuah solusi berupa aplikasi yang mampu melakukan pelacakan terhadap perangkat mobile Google Android yang berbantuan GPS sehingga dapat membantu proses pencarian orang hilang. Makalah ini terdiri dari beberapa bab yang dijelaskan sebagai berikut. Abstrak - Sistem penelusuran dan pelacakan adalah suatu bentuk konvergensi berbagai teknologi untuk menghasilkan layanan berbasis lokasi yang memungkinkan retrieval informasi lokasi dari suatu mobile object. Salah satu teknologi fenomenal yang mendukung sistem ini adalah Global Positioning System(GPS), penentuan lokasi secara real-time, Platform Android adalah sebuah software stack untuk perangkat mobile yang diluncurkan oleh Google Inc. Platform ini terdiri atas key applications, middleware yang khusus di-tuning untuk perangkat embedded, dan sistem operasi dengan kernel Linux. Pada Tugas Akhir ini dikembangkan sebuah sistem pelacakan dan penelusuran yang memanfaatkan GPS sebagai metode mobile positioning-nya. Hasil dari Tugas Akhir ini adalah sebuah perangkat lunak mobile ber-platform Android. Dalam uji coba yang dilakukan, hasilnya menunjukkan bahwa, performa aplikasi ini sangat ditentukan oleh trafik provider jaringan yang dipake oleh user, semakin padat trafik jaringan maka semakin menurun performa aplikasi ini, begitupun sebaliknya. 1. Kata kunci: Pelacakan, Penelusuran, GPS, Mobile, Google, Android 2. 1. Pendahuluan Seiring pesatnya perkembangan teknologi, meskipun dunia terasa semakin sempit, nyatanya jumlah orang yang hilang dan tersasar justru bertambah banyak. Berdasarkan statistik FBI tahun 2006 [3] di Amerika Serikat terdapat 834.536 kasus kehilangan yang dilaporkan. Tingginya tingkat kehilangan ini sangat membebani masyarakat baik dari segi biaya, birokrasi, tenaga, dan moral sehingga masalah ini memunculkan sebuah ide terhadap dibutuhkannya sebuah sistem yang mampu melakukan pelacakan. 3. 4. Perangkat mobile kini amat banyak digunakan dan sudah menjadi bagian yang tak terpisahkan dari kehidupan sehari-hari. Di seluruh dunia saja terdapat 3,3 milyar pengguna perangkat mobile pada tahun 2008 [10] yang artinya setengah dari penduduk di planet ini berpotensi dapat dilacak via perangkat mobile-nya. lokasi 5. Salah satu cara untuk melakukan identifikasi pada perangkat mobile adalah 1 BAB 1, Pendahuluan, menjelaskan latar belakang masalah, tujuan dan manfaat pembuatan tugas akhir, permasalahan, batasan masalah, metodologi yang digunakan, dan sistematika penyusunan tugas akhir. BAB 2, Dasar Teori, memaparkan beberapa teori penunjang yang berhubungan dengan pokok pembahasan dan mendasari pembuatan tugas akhir ini. BAB 3, Perancangan, berisi analisis, perancanganyang membahas deskripsi umum perangkat lunak, arsitektur sistem, arsitektur aplikasi, dan spesifikasi kebutuhan. Perancangan membahas rancangan aplikasi yang dibangun dengan desain database, pembuatan use case, diagram aktivitas. BAB 4, Implementasi, berisi implementasi perangkat lunak membahas implementasi dari tiap rancangan yang telah dibuat yaitu implementasi sistem, implementasi sistem dengan pengguna, implementasi antarmuka, dan implementasi database. BAB 5, Uji Coba dan Evaluasi, membahas pengujian aplikasi dimulai dari lingkungan pengujian, perangkat keras dan perangkat lunak yang digunakan. Skenario uji coba dilakukan dalam dua bagian, yaitu uji coba fungsionalitas use case dan uji coba non fungsionalitas. Wildan Habibi - 5106100098 TUGAS AKHIR PERIODE JANUARI 2011 6. BAB 6, Penutup, berisi tentang kesimpulan yang didapat dari proses pembuatan tugas akhir, beserta saran-saran untuk pengembangan selanjutnya. 2. Dasar Teori Pada bab 2 ini akan dijelaskan dasar-dasar teori yang digunakan untuk membangaun sistem pelacakan ini. 2.1 Global Positioning System (GPS) GPS adalah satu-satunya sistem satelit navigasi global untuk penentuan lokasi, kecepatan, arah, dan waktu yang telah beroprasi secara penuh didunia saat ini [1]. GPS menggunakan konstelasi 27 buah satelit yang mengorbit bumi, dimana sebuah GPS reveiver menerima informasi dari tiga atau lebih satelit tersebut seperti terlihat dalam Gambar 2.1 dibawah, untuk menentukan posisi. GPS receiver harus berada dalam line-of sight (LoS) terhadap ketiga satelit tersebut untuk menentukan posisi, sehingga GPS hanya ideal untuk diguakan dalam outdoor positioning. Gambar 2.2 Arsitektur Android 2.3 Virtual Machine Dalvik Dalvik adalah sebuah virtual machine (VM) berbasis register yang telah dioptimasi untuk berjalan pada perangkat embedded dengan memory minim. Dalvik juga dirancang untuk memungkinkan beberapa instans VM berjalan sekaligus secara efisien. Dalvik bergantung pada kernel linux untuk menyediakan fungsionalitas level rendah seperti isolasi proses, threading dan manajemen memori low level [5]. Dalvik VM ini dirancang khusus oleh para engineer Google sebagai bagian dari platform mobile android. Selain masalah optimasi untuk perangkat embedded, sebenarnya salah satu alasan Dalvik dibuat adalah dikarenakan masalah lisensi dengan sun, dimana Java Micro Edition berlisensi GPL versi 2, sedangkan platform Android akan dirilis dengan license Apache versi 2. Gambar 2.1 Trilaterasi dalam GPS Aplikasi yang berada di sisi target (server) setelah mendapatkan request dari pelacak (client) maka server akan meminta koordinat posisinya pada GPS, yang kemudian akan dikirimkan ke pelacak. 2.4 Application Programing Interface (API) Android Berikut adalah beberapa API utama yang disediakan oleh Android, yaitu API untuk manipulasi Graphical User Interface (GUI), akses storage, manipulasi grafik, akses location based service, dan manipulasi peta. 2.2 Platform Google Android Platform Android adalah sebuah software stack produksi google untuk perangkat mobile yang terdiri atas sistem operasi, middleware, dan key applications [9]. Aplikasi Android dapat dikembangkan melalui Android Standart Development Kit (Android SDK) menggunakan sintaks bahasa pemrograman Java. Aplikasi Android nantinya tidak akan berjalan langsung diatas kernel sistem operasi namun berjalan diatas Dalvik, sebuah virtual machine yang khusus dirancang untuk digunakan pada sistem embedded. Arsitektur system terdiri atas 5 layer, pemisahan layer bertujuan untuk memberikan abstraksi sehingga memudahkan pengembangan aplikasi, Layer-layer tersebut adalah layer aplikasi, layer framework aplikasi, layer libraries, layer runtime, dan layer kernel. Gambar 2.2 memberikan gambaran umum komponen-komponen dalam arsitektur sistem operasi android. Graphical User Interface (GUI) Package android.view menyediakan berbagai kelas-kelas yang akan digunakan untuk menangani screen, layout, dan interaksinya dengan pengguna. Akses Storage Android menggunakan mekanisme storage yang berbeda dengan sistem operasi yang konvensional dimana setiap file dalam Android bersifat private terhadap aplikasi tersebut. Manipulasi Grafik Package android.graphics menyediakan manipulasi grafik low-level 2 Wildan Habibi - 5106100098 TUGAS AKHIR PERIODE JANUARI 2011 seperti kanvas, point, pewarnaan, dan manipulasi bentuk pada screen. System pelacakan Manipulasi Peta Package com.google.android.maps menyediakan API untuk mengakses Googel Map. Akses Location-based Servive Package android.location berisi kelaskelas untuk mengakses berbagai layanan berbasis lokasi. pelacak Target remote penelusuran <<include>> <<include>> preferensi penelusuran pelacakan otomatis 3. Metodologi Pada Bab tiga ini akan dilakukan analisis dan perancangan berdasarkan landasan teori yang telah dijelaskan pada bab sebelumnya. pelacak Remote mendapatkan jawaban request melakukan konfigurasi 3.1 Arsitektur Sistem Aplikasi pelacakan ini merupakan aplikasi yang berbasis Location based Service yang terdiri atas Client dan server dimana yang berlaku sebagai client adalah aplikasi pada sisi pelacak, sedangkan yang berlaku sebagai server adalah aplikasi pada sisi target. Pada saat melakukan pelacakan, sistem pada pelacak (client) mengirim request pelacakan melalui Short Message Service (SMS) kepada target (server), setelah mendapatkan request dari pelacak target akan mencocokkan nomor handphone pelacak dengan daftar whitelist yang dimilikinya, untuk menentukan apakah pelacak tersebut mempunyai hak untuk melacak target, setelah melakukan otentifikasi target melakukan penentuan lokasi melalui GPS untuk mendapatkan koordinat posisinya, yang kemudian akan dikirimkan kembali kepada pelacak, setelah mendapatkan koordinat target, pelacak memproses koordinat tersebut melalui informasi yang diperoleh dari GIS server (Google Map). Gambar 3.1 dibawah ini menggambarkan arsitektur sistem pelacakan. Gis server GPS Receiver target Gambar 3.2 Use Case Diagram Tabel 3.1 dibawah ini berisi tentang daftar aktor dan deskripsi peran mereka masing-masing dalam perangkat lunak. Tabel 3.1 Deskripsi Aktor 4. Implementasi Sistem Salah satu implementasi sistem adalah melakukan pelacakan, pertama pelacak mengirim request melaui SMS, Gambar 4.1 pseodocode melakukan request. Gambar 3.1 Arsitektur Sistem 3.2 Use Case Diagram Gambar 3.2 dibawah ini merupakan diagram use case perangkat lunak. 3 Wildan Habibi - 5106100098 TUGAS AKHIR PERIODE JANUARI 2011 begin var noHP = getFromTextView; declare smsSend smsSend phoneNumber = npHP; smsSend message ="lacak#request"; smsSend context = getApplicationContexty; run sendSMS finish Gambar 4.1 Pseodocode Request begin var otherLat = getValue(latitude); var otherLon = getValue(longitude); declare mapView; mapView setControlZoom; mapView setStreetView; mapController = mapView controller; mapController = animateGeoPoint; mapController setZoom; finish Gambar 4.5 Pseudocode Display Map Setelah mendapatkan request, target menangkap request dari pelacak, dengan menggunakan method split, setelah itu target membentuk intent yang kemudian di parsing untuk menjalankan activity. Gambar 4.2 dibawah merupakan pseudocode yang menggambarkan proses tersebut 5. Uji Coba dan Evaluasi Pada bagian ini akan dibahas mengenai uji coba dan evaluasi perangkat lunak. Pembahasan meliputi uji coba, penjelasan mengenai skenario pengujian dan hasil uji coba. Perangkat lunak ini diuji coba dari segi fungsionalitas dan performa ketika dijalankan. begin var msg[2] = message; if msg[0] =="lacak" and msg[1] == "request" then create intent; startActivity; endif finish Gambar 4.2 Pseudocode Handle Request 5.1 Uji Coba Funhsionalitas Uji coba ini dilakukan untuk melihat apakah fungsi-fungsi dasar dari perangkat lunak ini berjalan sebagaimana mestinya atau tidak. Hasil uji coba ditunjukkan melalui tampilan dari aplikasi, gambar 5.1 dibawah ini menggambarkan tampilan awal aplikasi. Setelah itu target meminta posisi koordinat lokasinya melalui GPS, Gambar 4.3 berikut pseudocode yang menggambarkan proses tersebut. locationManager<requestLocationUpdates(GetLocation From Network Provider) locationManager<-requestLocationUpdates(Get Location From GPS); Gambar 4.3 Pseudocode Request Position Setelah mendapatkan koordinat lokasinya, target mengirimkan koordinat tersebut kepada pelacak, pelacak menagkap respons pelacakan tersebut dan memprosesnya, yang digambarkan oleh pseudocode pada Gambar 4.4 dibawah ini. Gambar 5.1 Tampilan Awal Aplikasi Setelah berhasil login maka akan muncul halaman selanjutnya yaitu berupa halaman menu, seperti Gambar 5.2 seperti dibawah ini. If msg[1] = respons Create i = intent; i <- addFlags(Flag Ctivity); i <- putExtra(intent); i <- putExtra(Get Latitude); i <- putExtra(Get Longitude); Display “Received Location respons from” + target Latitude <- (GPSConstans latitude_property) Longitude <- (GPSConstant Longitude_property) Gambar 4.4 Pseudocode Get Respons Setelah itu aplikasi pada menampilkan koordinat yang telah dalam bentuk Google maps yang dengan pseudocode seperti Gambar ini. sisi pelacak diterima tadi digambarkan 4.5 dibawah Gambar 5.2 Tampilan Menu 4 Wildan Habibi - 5106100098 TUGAS AKHIR PERIODE JANUARI 2011 Setelah itu user bisa masuk ke menu utama seperti Gambar 5.3 seperti dibawah ini. 5.2 Uji Coba Performa Uji coba performa di lakukan untuk mengetahui kecepatan perangkat lunak dalam melakukan proses pelacakan sampilkan menampilkan hasil pelacakan, uji coba dilakukan dalam dua target yaitu emulator dan handphone. Tabel 5.1 berikut adalah hasil uji coba dengan menggunakan emulator. Tabel 5.1 Hasil Uji Coba Emulator Gambar 5.3 Tampilan Menu Utama Masuk ke menu “Lacak” di menu ini user dimaintai nomor telepon target yang akan dilacak, Tampilannya seperti Gambar 5.4 dibawah ini. Uji coba kedua dilakukan dengan menggunakan handphon, proses uji coba dilakukan dalam ruangan terbuka. Hasil uji coba dengan handphone di tampilkan dalam Tabel 5.2 dibawah ini. Gambar 5.4 Tampilan Menu Pelacak Hasil dari proses pelacakan dapat dilihat seperti Gambar 5.5 dibawah ini. Gambar 5.5 Hasil Proses Pelacakan 5 Wildan Habibi - 5106100098 TUGAS AKHIR PERIODE JANUARI 2011 padat trafik jaringan maka smakin menurun performa aplikasi, begitupun sebaliknya.t Tabel 5.2 Hasil Uji Coba Handphone 7. Daftar Pustaka [1] Cellular Telecommunications Industry Association. Glossary. 31Desember 2010. http://www.ctia.org/content/index.cfm/AID/10 409 [2] El-Rabbany, Ahmed. 2002.Introduction to GPS: The Global Positioning System. Norwood: Artech House, Inc [3] FBI.2006.NCIC Missing Person Statistic for 2006. 12 Desember 2010. http://www.fbi.gov/hq/cjisd/missingpersons.ht m [4] ESRI Geographical Information System. What is GIS. 29 Desember 2010. http://www.gis.com/whatisgis/index.html 6. Kesimpulan Dari implemantasi sistem yang telah dilakukan serta serangkaian uji coba dan analisa yang dilakukan terhadap sistem, maka dapat dibuat suatu kesimpulan antara lain : 1. Sistem pelacakan berhasil dibangun dengan fitur berupa pelacakan, pelacakan otomatis dan reply request, serta pengaturan konfigurasi. [5] Google Inc. Android – An Open Handset Alliance Project. 25 November 2010 http://code.google.com/android/ [6] International Business Machine. Location Base Services. 29 Desember 2010. http://www.ibm.com/developerworks/ibm/libra ry/i-1bs/ 2. Sistem berhasil dibangun diatas platform Google Android. [7] Jagoe, Andrew. 2002. Mobile Location Servies: The Definition Guide. Prentice Hall. 3. Sistem berhasil melakukan penentuan lokasi dengan menggunakan GPS. [8] National Maritime Electronics Association. NMEA 2000 Standard. 25 Desember 2010. http://www.nmea.org/pub/2000/index.html 4. Sistem menerapkan fasilitas kemanan (security) dalam bentuk password pada sisi pelacak, dan daftar whitelist pada sisi target. [9] Open Handset Alliance. Open Handset Alliance. 25 Desember 2010. http://www.openhandsetalliance.com/oha_me mbers.html. 5. Platform Android bisa dibilang masih kurang, baik Standart Development Kit (SDK), dokumentasi, maupun emulatornya dikarenakan masih memiliki keterbatasan dan kekurangan, misalnya belum didukungnya koneksi SMS antar emulator, belum mendukung perangkat real GPS receiver, dan belum mendukung pengaturan nomor telepon. 6. Dari uji coba yang telah dilakukan, hasilnya menunjukkan bahwa, performa aplikasi ini ditentukan oleh trafik jaringan provider yang dipake oleh user, semakin 6 Wildan Habibi - 5106100098