BERBASIS WEB
Skripsi
Oleh:
RIKARO RAMADI
105091002886
JAKARTA
2011
PEMBUATAN APLIKASI HISTORY PERJALANAN GPS TRACKER
BERBASIS WEB
SKRIPSI
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Oleh :
Rikaro Ramadi
105091002886
ii
ABSTRAK
v
LEMBAR PERNYATAAN
1. Skripsi ini merupakan hasil karya asli saya yang diajukan untuk memenuhi
2. Semua sumber yang saya gunakan dalam penulisan ini telah saya cantumkan
Hidayatullah Jakarta.
3. Jika di kemudian hari terbukti bahwa karya ini bukan hasil karya asli saya
atau merupakan hasil jiplakan dari karya orang lain, maka saya bersedia
Hidayatullah Jakarta.
Rikaro Ramadi
105091002886
vi
KATA PENGANTAR
Bismillahirrahmanirrahim,
Ta’ala atas seluruh rahmat dan karunia-Nya yang diberikan kepada penulis
untuk memenuhi salah satu syarat dalam menyelesaikan program Strata 1 pada
Hidayatullah Jakarta.
Harapan bahwa skripsi ini dapat bermanfaat bagi semua pihak yang
bahwa “tiada gading yang tak retak” tidak ada sesuatu pun yang sempurna
tanpa dukungan dari mereka, penulis tidak akan mampu menyelesaikan skripsi ini
vii
1. Bapak DR. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan
2. Bapak Yusuf Durrachman, M.Sc, MIT sebagai Ketua Program Studi Teknik
Hidayatullah Jakarta.
3. Ibu Viva Arifin, MMSI sebagai Sekretaris Ketua Program Studi Teknik
Hidayatullah Jakarta.
4. Bapak Husni Teja Sukmana, PhD, selaku dosen pembimbing I yang telah
menyemangati anak didiknya dan juga telah memberikan banyak bantuan bagi
6. Ayah dan Ibu tercinta yang selalu mengiringi do’a dalam setiap langkah, juga
adik penulis Riska Pianah, yang selalu memberikan semangat kepada penulis
untuk terus berkarya dan menjadi orang yang lebih baik di kemudian hari.
waktu dan do’a untuk menyelesaikan skripsi ini, memberikan motivasi di saat
viii
9. Teman-teman saya di BataviaSoft terimakasih semangat dan sarannya,
10. Seluruh Dosen dan staf karyawan Fakultas Sains dan Teknologi, khususnya
11. Semua pihak yang sudah membantu dan tidak dapat disebutkan satu-persatu.
untuk penulisan laporan yang lebih baik lagi. Kritik dan saran serta pertanyaan dapat
dengan izin Allah SWT dapat bermanfaat bagi semua pembaca. Amin.
Penulis
Rikaro Ramadi
ix
DAFTAR ISI
BAB 1 PENDAHULUAN
1.1 Latar Belakang ................................................................................. 1
1.2 Perumusan Permasalah .................................................................... 2
1.3 Pembatasan Masalah ........................................................................ 2
1.4 Tujuan Penelitian ............................................................................. 3
1.5 Manfaat Penelitian ........................................................................... 3
1.6 Metodologi Penelitian ...................................................................... 4
1.6.1 Metodologi Pegumpulan Data ............................................... 4
1.6.2 Metodologi Perancangan Sistem ............................................ 5
1.7 Sistematika Penulisan ...................................................................... 5
x
2.3.3 Kelebihan Dan Kekurangan GPS Pada Handphone .............. 11
2.4 Berbasis Web .................................................................................... 12
2.5 Handphone ........................................................................................ 13
2.6 JAVA2 Micro Edition (J2ME) .......................................................... 14
2.7 Google Maps .................................................................................... 17
2.8 Agile Software Development ............................................................ 18
2.9 Extreme Programming Model (XP) ................................................. 20
2.10 Active Server Pages (ASP) ............................................................. 22
2.11 .Net ................................................................................................. 22
2.12 C# (C Sharp) .................................................................................. 23
2.13 SQL SERVER ................................................................................. 25
xi
4.1.8 User Stories ............................................................................ 44
4.2 Design .............................................................................................. 45
4.2.1 Design CRC Card .................................................................. 46
4.2.2 Design GUI ............................................................................ 50
4.2.3 Design Database ..................................................................... 59
4.3 Coding .............................................................................................. 63
4.4 Testing .............................................................................................. 64
4.4.1 Black Box Testing................................................................... 64
4.4.1.1 Bukti Pengujian Dengan Unit Testing ....................... 66
4.4.2 Implementation Testing ......................................................... 81
4.4.1.1 Bukti Pengujian Implementasi ................................... 84
4.4.3 Evaluasi Sistem ...................................................................... 95
BAB 5 PENUTUP
5.1 Kesimpulan ...................................................................................... 97
5.2 Saran ................................................................................................ 98
xii
DAFTAR TABEL
xiii
DAFTAR GAMBAR
xiv
Gambar 4.26 Tampilan Pengujian Directions ............................................... 70
Gambar 4.27 Hasil Pengujian Directions View Maps .................................. 71
Gambar 4.28 Hasil Pengujian Directions Rute Jalan .................................... 72
Gambar 4.29 Tampilan Pengujian Current ................................................... 72
Gambar 4.30 Hasil Pengujian Current .......................................................... 73
Gambar 4.31 Tampilan Pengujian Realtime ................................................. 74
Gambar 4.32 Hasil Pengujian Realtime ........................................................ 74
Gambar 4.33 Tampilan Pengujian History..................................................... 75
Gambar 4.34 Hasil Pengujian History .......................................................... 76
Gambar 4.35 Tampilan Pengujian Setting .................................................... 76
Gambar 4.36 Hasil Pengujian Setting ........................................................... 77
Gambar 4.37 Hasil Pengujian Manager ........................................................ 77
Gambar 4.38 Hasil Pengujian Tracker .......................................................... 78
Gambar 4.39 Hasil Pengujian Location ........................................................ 78
Gambar 4.40 Hasil Pengujian Search ............................................................ 79
Gambar 4.41 Hasil Pengujian Weather ......................................................... 80
Gambar 4.42 Hasil Pengujian Setting ........................................................... 81
Gambar 4.43 Tampilan Form Registration ................................................... 84
Gambar 4.44 Hasil Pengujian Registration ................................................... 84
Gambar 4.45 Tampilan Form Registration 2 atau GPS ID Generation ........ 84
Gambar 4.46 Hasil Pengujian GPS ID Generation ....................................... 85
Gambar 4.47 Hasil Pengujian Login ............................................................. 85
Gambar 4.48 Tampilan Setelah Login .......................................................... 85
Gambar 4.49 Tampilan Pengujian Directions ............................................... 86
Gambar 4.50 Hasil Pengujian Directions View Maps .................................. 86
Gambar 4.51 Hasil Pengujian Directions Rute Jalan .................................... 87
Gambar 4.52 Tampilan Pengujian Current ................................................... 87
Gambar 4.53 Hasil Pengujian Current .......................................................... 88
Gambar 4.54 Tampilan Pengujian Realtime ................................................. 88
Gambar 4.55 Hasil Pengujian Realtime ........................................................ 89
Gambar 4.56 Tampilan Pengujian History..................................................... 89
xv
Gambar 4.57 Hasil Pengujian History .......................................................... 90
Gambar 4.58 Tampilan Pengujian Setting .................................................... 90
Gambar 4.59 Hasil Pengujian Setting ........................................................... 90
Gambar 4.60 Hasil Pengujian Manager ........................................................ 91
Gambar 4.61 Hasil Pengujian Tracker .......................................................... 91
Gambar 4.62 Hasil Pengujian Location ........................................................ 92
Gambar 4.63 Hasil Pengujian Search ............................................................ 93
Gambar 4.64 Hasil Pengujian Weather ......................................................... 94
Gambar 4.65 Hasil Pengujian Setting ........................................................... 95
xvi
DAFTAR LAMPIRAN
xvii
1
BAB I
PENDAHULUAN
Saat ini GPS merupakan sistem satelit navigasi yang sedang populer
angkasa. Saat ini, banyak handphone telah disertai GPS. Dengan adanya
GPS tersebut banyak sekali manfaat yang kita dapatkan. Salah satunya untuk
mengetahui lokasi kita berada saat ini. Namun aplikasi GPS bawaan yang
pemilik dan belum dapat memberikan informasi posisi orang lain yang kita
inginkan, sebut saja keluarga kita. Sedangkan pekerjaan yang kita miliki
sering kali menyita waktu kita sehingga kita tidak dapat mengawasi keluarga
dan anak-anak kita. Aplikasi GPS ini dapat mengetahui posisi terakhir
Pada tugas akhir ini penulis membuat aplikasi yang dapat melacak
posisi orang lain misalnya keluarga kita yaitu dengan cara melacak posisi
J2me”.
berikut:
pada:
2. Aplikasi ini bisa digunakan di semua coverage area jaringan GPS dan
3. Aplikasi ini hanya mampu mengirim data lokasi melalui handphone dan
sebagai petanya.
testernya.
rute.
terdiri dari:
serta mengumpulkan data yang lengkap guna menyusun karya ilmiah ini.
tersebut yaitu:
a. Studi Pustaka
b. Studi Literatur
c. Wawancara
Skripsi ini terdiri dari lima bab yang disusun sedemikian rupa
sebagai berikut:
BAB I PENDAHULUAN
sistematika penulisan.
6
Dalam bab ini dijelaskan mengenai landasan teori yang relevan dengan
BAB V PENUTUP
BAB II
LANDASAN TEORI
2.1 Pembuatan
mengenai aplikasi secara umum adalah suatu paket program yang sudah jadi
posisi, kecepatan, arah, dan waktu. Sistem yang serupa dengan GPS antara
8
lain GLONASS Rusia, Galileo Uni Eropa, IRNSS India. Sistem ini
NAVSTAR adalah singkatan, namun itu semua salah, NAVSTAR adalah nama
yang diberikan oleh John Walsh, seorang penentu kebijakan penting dalam
program GPS. Kumpulan satelit ini diurus oleh 50th Space Wing Angkatan
Udara Amerika Serikat. Biaya perawatan sistem ini sekitar US$750 juta per
(http://id.wikipedia.org/wiki/Global_Positioning_System, 2010).
Mhz yang membawa pesan navigasi dan sinyal kode SPS (Standard
1. Modulasi kode C/A (Coarse Acquisition) pada fase LI. Kode C/A
Noise). Kode C/A PRN ini berbeda untuk setiap satelit GPS yang
masyarakat sipil.
Positioning Service).
tepat seberapa jauh pesawat penerima GPS dari setiap satelit. Dengan
tetap sebuah titik yaitu posisi Lintang dan Bujur bumi (Latitude &
data yang diterima dari satelit GPS yang senantiasa ada setiap saat.
yang telah dilengkapi dengan GPS receiver built in, dan membuat
di bawah.
11
Gambar 2.1
Skema GPS Tracker Secara Global
internet.
dikirimkan oleh Nokia E71 pada sebuah database (di sini kita
aplikasi pemantau (di sini kita buat dengan ASP.NET) sehingga dapat
meter saja.
World Wide Web (WWW atau singkatnya Web) adalah suatu ruang
informasi yang dipakai oleh pengenal global yang disebut Uniform Resource
Sedangkan web based adalah suatu aplikasi yang dapat berjalan sesuai
aturan web, diantaranya berjalan hanya pada web browser dan dapat diakses
(http://id.wikipedia.org/wiki/Web, 2010).
13
application atau sering disingkat webapp) adalah suatu aplikasi yang diakses
menampilkan aplikasi.
ribuan komputer klien. Aplikasi web yang umum misalnya webmail, took
retail online, lelang online, wiki, papan diskusi, weblog, serta MMORPG
(http://id.wikipedia.org/wiki/Aplikasi_web, 2010).
2.5 Handphone
mempunyai dua jaringan telepon nirkabel yaitu sistem GSM (Global System
14
Access).
singkat (short message service, SMS). Ada pula penyedia jasa telepon
teknologi digital, kini ponsel juga dilengkapi dengan berbagai pilihan fitur,
seperti bisa menangkap siaran radio dan televisi, perangkat lunak pemutar
audio (MP3) dan video, kamera digital, game, dan layanan internet (WAP,
fitur komputer. Jadi di ponsel tersebut, orang bisa mengubah fungsi ponsel
tersebut menjadi mini komputer. Di dunia bisnis, fitur ini sangat membantu
bagi para pebisnis untuk melakukan semua pekerjaan di satu tempat dan
(http://id.wikipedia.org/wiki/Handphone, 2010).
lunak berfungsi dengan baik pada sebuah perangkat maka belum tentu juga
15
berfungsi baik pada perangkat yang lain. J2ME membawa JAVA ke dunia
kamera maka jelas J2ME pada ponsel tersebut tidak dapat mengakses
kamera.
dasar dari J2ME, spesifikasi dasar yang berupa library atau API yang
adalah spesifikasi minimal pada package, class, dan sebagian fungsi JAVA
keterbatasan sumber daya pada alat tersebut, JVM yang digunakan adalah
sebuah profil J2ME. MIDP memiliki lapisan diatas CLDC, API tambahan
persisten. Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan
pada MIDP 2.0 dibandingkan MIDP 1.0 adalah API untuk multimedia. Pada
MIDP 2.0 terdapat dukungan memainkan tone, tone sequence, dan file WAV
adalah bagian dari class JAVAx micro edition midlet. MIDlet yang
J2ME dan aplikasi manajemen pada perangkat bisa terbentuk. MIDlet terdiri
dari beberapa method yang harus ada, yaitu contructor(), protected void
MIDletStateChangeException.
tidak dapat memanggil method tersebut. Pada saat pemakai keluar dari
MIDlet, maka method destroy app akan dijalankan sebelum MIDlet benar-
benar tidak berjalan lagi. Method Notify Destroyed akan dipanggil sebelum
MIDlet benar-benar tidak berjalan lagi, Destroy App akan memanggil Notify
pada MIDlet.
untuk perangkat kecil. J2ME WTK berbasiskan pada CLDC dan MIDP.
J2ME WTK adalah program yang meniru kerja ponsel yang mendukung
MIDP atau yang disebut emulator. Oleh karena itu, belum tentu MIDlet
yang berjalan di emulator juga berjalan pada ponsel yang sebenarnya, karena
Google Maps merupakan salah satu fasilitas dari Google yang bisa di
pencarian peta di berbagai lokasi yang tersebar di seluruh dunia. Selain itu,
Google Maps dapat digunakan untuk mengetahui lokasi pusat bisnis, kantor-
sebagainya.
membantu Anda dalam mempelajari suatu lokasi. Tak hanya itu, Anda
bahkan diajak berpetualang melalui satelit untuk melihat tata ruang suatu
gunung, sungai, danau, hingga sawah ladang yang menghijau melalui satelit
mencari dan mengetahui berbagai lokasi penting di atas bumi ini dengan
waspada. Kata Agile diambil dari kata Agility. Menurut Steven Goldman et
al., Agility adalah dinamis, konten yang spesifik, perubahan yang agresif,
dicetuskan oleh Kent Beck dan 16 rekannya. Mereka tergabung dalam Agile
1. Interaksi dan personel lebih penting dari pada proses dan alat.
lengkap.
produktifitas menurun.
Development:
dua bulan.
4. Bagian bisnis dan pembangun kerja sama tiap hari selama proyek
berlangsung.
sifat agile.
11. Arsitektur, kebutuhan dan desain yang bagus muncul dari tim yang
12. Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif
perangkat lunak.
Gambar 2.2
Skema Model XP
Keterangan skema:
terlalu besar, story dapat dipecah menjadi beberapa story yang lebih
dilakukan untuk real time program solving dan real time quality
assurance.
file teks, script pemprograman dan komponen ActiveX menjadi satu kesatuan
di dalam aplikasi web yang Anda bangun (Wahidin, 2004 hal 1).
2.11 .Net
biasa maupun aplikasi internet yang sangat tangguh dan dapat dijalankan di
semua jenis hardware dan semua sistem operasi yang memiliki .Net
diperlukan lagi pada teknologi .Net karena program akan langsung dapat
2.12 C# (C Sharp)
C++ atau versi cangginh dari C++, karena ada anggapan bahwa tanda #
adalah paduan dari 4 buah tanda tambah yang di susun sedemikian rupa
sehingga membentuk tanda pagar. Akan tetapi terlepas dari benar tidaknya
object yang dikembangkan oleh microsoft dan menjadi salah satu bahasa
Delphi, dan tentu saja C++. C# memiliki kemudahan syntax (cara penulisan)
sepeti Visual Basic dan tentu saja ketangguhan seperti java dan C++.
latar belakang bahasa pemrograman tidak perlu waktu yang lama untuk
runtime library yang merupakan salah satu tiang utama teknologi .Net.
Java, dan Smaltalk, karena itu Anders menciptakan bahasa C# yang lebih
Windows, console class yang dapat digunakan kembali, dan aplikasi web.
digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai
dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database
JAVA. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk
SQL Server 2000 terserang oleh cacing komputer SQL Slammer yang
(http://id.wikipedia.org/wiki/Sql_server, 2010).
26
BAB III
METODOLOGI PENELITIAN
teori berasal dari jurnal, karya ilmiah, buku-buku ilmu komputer dan
Bab II yang berusaha memaparkan teori yang ada secara lengkap dan
jelas.
A. Litelatur Skripsi
yang perlu dilakukan. Literatur sejenis diambil dari dua (2) skripsi
27
memanfaatkan GPS.
Vendor : Nick
Website : http://www.websmithing.com
30
Hasil Pengamatan:
seder hada pada hanphone dan webnya dan fitur-fitur yang di miliki
Gambar 3.1
Tampilan Website Pada Literatur Sejenis
Gambar 3.2
Tampilan Mobile Pada Literatur Sejenis
33
Gambar 3.3
Tampilan Website Pada Aplikasi Yang Akan Dibuat
Gambar 3.4
Tampilan Website Pada Aplikasi Yang Akan Dibuat
3.1.3 Wawancara
yang mengikuti kaidah berbasis objek (object oriented/OO). Pada kasus ini
yang akan dibuat tidak terlalu kompleks dan tergolong perangkat lunak kecil
3.2.1 Planning
sebagai berikut:
3.2.2 Design
software.
sebagai berikut:
pengkodean.
3.2.3 Coding
3.2.4 Testing
Bagan 3.1
Ilustrasi Metodologi Penelitian Pembuatan Aplikasi History Perjalanan
GPS Tracker Berbasis Web Menggunakan J2ME Pada Handphone
Pengumpulan Data
Studi Pustaka dan Studi Literatur
Extreme Programing
Planning
Visi Aplikasi
Fitur Kunci
Tujuan Aplikasi
Pengguna Aplikasi
Informasi yang ditampilkan
Kebutuhan Aplikasi
Use Cases
User Stories
Design
Perancangan class yang
dibutuhkan dengan CRC
Perancangan Desain GUI
Perancangan Desain Database
Coding
Testing
Release
BAB IV
Pada bab ini, akan dibahas secara detail dan terperinci mengenai sistem
mengurangi resiko pada aplikasi dan memaksimalkan hasil akhir dari sebuah
aplikasi.
dan Framework open source sehingga penulis bisa lebih fokus pada ide dan
konsep bisnis proses. Fokus pada ide dan konsep bisnis proses memberikan ruang
kemudian dapat menghasilkan API, module dan teknik-teknik baru sehingga bisa
terbebas dari paradigma reinvent the wheel. API dan Framework diperoleh dari
Adapun tahapan yang dilakukan mengacu pada bagan 3.1 yang akan
4.1 Planning
namun programmer dapat mengerti apa yang harus dikodekan. Pada tahapan
membuat wrapper pada API google maps sehingga API dapat lebih
client-side.
data GPS.
1. Administrator
2. User
a. User Member
location.
pendukung baik dari sisi perangkat keras maupun dari sisi perangkat
1. Perangkat Keras
minimum 10 GB
2. Perangkat Lunak
sebagai berikut:
45
login.
handphone.
handphone.
12. User member aplikasi handphone dapat melihat posisi saat ini
pada handphone.
13. User member aplikasi handphone dapat mencari posisi orang lain
pada handphone.
4.2 Design
yaitu membuat class design dan GUI design. Maksudnya adalah untuk
47
1. Class GetData
database.
Tabel 4.1
CRC Card Class GetData
Class : GetData
Resposibilities Collaborators
2. Class Maps
terakhir user berada, melihat posisi user secara real time, dan
sebelumnya.
Tabel 4.2
CRC Card Class Maps
Class : Maps
Resposibilities Collaborators
3. Class Register
ssebagai member.
GPSID.
Tabel 4.3
CRC Card Class Register
Class : Register
Resposibilities Collaborators
4. Class GPS
Tabel 4.4
CRC Card Class GPS
Class : GPS
Resposibilities Collaborators
5. Class Manager
Tabel 4.5
CRC Card Class Manager
Class : Manager
Resposibilities Collaborators
Gambar 4.2
Rancangan tampilan halaman Registrasi 1
Gambar 4.3
Rancangan tampilan halaman Registrasi 2
52
Gambar 4.4
Rancangan tampilan halaman Login pengguna
Gambar 4.5
Rancangan tampilan halaman Directions
53
Gambar 4.6
Rancangan tampilan halaman Current
Gambar 4.7
Rancangan tampilan halaman Real Time
54
Gambar 4.8
Rancangan tampilan halaman History
Gambar 4.9
Rancangan tampilan halaman Real Time
55
Gambar 4.10
Rancangan tampilan halaman Manager
Gambar 4.11
Rancangan tampilan halaman Home
56
Gambar 4.12
Rancangan tampilan halaman Tracker
Gambar 4.13
Rancangan tampilan halaman Location
57
Gambar 4.14
Rancangan tampilan halaman Search
Gambar 4.15
Rancangan tampilan halaman Weather
58
Gambar 4.16
Rancangan tampilan halaman Settings
Gambar 4.17
Rancangan tampilan halaman Help
59
Gambar 4.18
Rancangan tampilan halaman About
dilakukan.
Gambar 4.19
Rancangan Database
60
Disini penulis membuat tiga tabel yaitu table User, tabel GpsDevice
a. Tabel User
b. Tabel GpsDevice
dari satu gps, dimana satu gps id memiliki satu imei dari
c. Tabel GpsTracking
GpsID In - Id Gps
data
jika GpsID dan Imei sesuai dengan database, jika tidak sesuai
selain itu tabel ini juga berfungsi untuk menarik data yang di
4.3 Coding
tahapan yang paling utama dari model proses extreme programming. Tahap
ini dapat berulang kali dilakukan sesuai dengan kebutuhan fungsional yang
Solution Framework). Jadi bisa dikatakan bahwa MSF akan mengisi siklus
menggunakan OOP.
base class yang akan berbagi properties yang umum digunakan seperti
kumpulan web user control (.ascx) yang akan diload secara dinamis. Kode
4.4 Testing
metoda pengujian logika program yaitu contoh perkasus atau masalah yang
diajukan. Pada tahap akhir akan diujikan pada kondisi sebenarnya yaitu
Tabel 4.9
Hasil Pengujian Dengan Unit Testing
(Gambar 4.36)
1. Registration
Gambar 4.20
Tampilan Form Registration
ini.
Gambar 4.21
Hasil pengujian Registration
2. GPS ID generation
Gambar 4.22
Tampilan Form Registration 2 atau GPS ID generation
hanphone anda.
Gambar 4.23
Hasil pengujian GPS ID generation
3. Login
Gambar 4.24
Hasil pengujian Login
Gambar 4.25
Tampilan Setelah Login
70
4. Directions
di bawah ini.
Gambar 4.26
Tampilan Pengujian Directions
Gambar 4.27
Hasil pengujian Directions view maps
jalan yang kita lalui, kapan harus belok kiri dan kapan
Gambar 4.28
Hasil pengujian Directions rute jalan
2. Current
Gambar 4.29
Tampilan Pengujian Current
73
Gambar 4.30
Hasil pengujian Current
3. Realtime
Gambar 4.31
Tampilan Pengujian Realtime
Gambar 4.32
Hasil pengujian Realtime
75
4. History
Gambar 4.33
Tampilan Pengujian History
Gambar 4.34
Hasil pengujian History
5. Setting
Gambar 4.35
Tampilan Pengujian Setting
Gambar 4.36
Hasil Pengujian Setting
6. Manager
Gambar 4.37
Hasil pengujian Manager
7. Tracker
Gambar 4.38
Hasil pengujian Tracker
8. Location
Gambar 4.39
Hasil pengujian Location
79
9. Search
bawah ini.
Gambar 4.40
Hasil pengujian Search
10. Weather
di bawah ini.
80
Gambar 4.41
Hasil pengujian Weather
11. Setting
Gambar 4.42
Hasil pengujian Setting
yaitu kondisi pada saat sistem sudah berjalan. Server yang digunakan
providernya.
a. Memori 4 GB
82
Tabel 4.10
Hasil Pengujian Implementasi
1. Registration
Gambar 4.43
Tampilan Form Registration
Gambar 4.44
Hasil pengujian Registration
2. GPS ID generation
Gambar 4.45
Tampilan Form Registration 2 atau GPS ID generation
85
Gambar 4.46
Hasil pengujian GPS ID generation
3. Login
Gambar 4.47
Hasil pengujian Login
Gambar 4.48
Tampilan Setelah Login
86
4. Directions
Gambar 4.49
Tampilan Pengujian Directions
Gambar 4.50
Hasil pengujian Direction view maps
87
Gambar 4.51
Hasil pengujian Directions rute jalan
12. Current
Gambar 4.52
Tampilan Pengujian Current
88
Gambar 4.53
Hasil pengujian Current
13. Realtime
Gambar 4.54
Tampilan Pengujian Realtime
89
Gambar 4.55
Hasil pengujian Realtime
14. History
Gambar 4.56
Tampilan Pengujian History
90
Gambar 4.57
Hasil pengujian History
15. Setting
Gambar 4.58
Tampilan Pengujian Setting
Gambar 4.59
Hasil Pengujian Setting
91
16. Manager
Gambar 4.60
Hasil pengujian Manager
17. Tracker
Gambar 4.61
Hasil pengujian Tracker
92
18. Location
Gambar 4.62
Hasil pengujian Location
93
19. Search
Gambar 4.63
Hasil pengujian Search
94
20. Weather
Gambar 4.64
Hasil pengujian Weather
95
21. Setting
Gambar 4.65
Hasil pengujian Setting
PENUTUP
Bab ini berisi kesimpulan terhadap masalah yang ada dan pemecahan
masalahnya serta saran kepada pihak yang ingin mengembangkan aplikasi ini
5.1 Kesimpulan
1. Aplikasi Gps Tracker ini dapat membantu user untuk mengetahui history
perjalanan user dan dapat di lihat saat di butuhkan, dapat di lihat pada
2. Aplikasi Gps Tracker ini dapat membantu user untuk mengetahui posisi
dimana dia berada melalui satelit GPS dapat di lihat pada Gambar 4.38, dan
datap membantu user untuk megetahui posisi orang lain dapat di lihat pada
Gambar 4.39.
5.2 Saran
97
98
DAFTAR PUSTAKA
Informatika Bandung
Nugroho, Bunafit. 2004. Aplikasi Pemrograman Web Dinamis dengan PHP dan MySQL.
Parkinson, B.W. 1996. Global Positioning System: Theory and Applications, chap. 1:
Pressman, Roger S. 2005. Software Engineering- ixth Edition. New York: McGraw Hill.
Tanoe, Andre. 2009. GPS Bagi pemula, dasar-dasar pemakaian sehari hari. Jakarta
99
100
http://kiosbukugema.wordpress.com/page/91/
http://www.clearleadinc.com/
http://www.websmithing.com
99
101
LAMPIRAN 1
HASIL WAWANCARA
Pertanyaan :
1. Apakah anda mengetahui tentang gps tracker? jika ya, apakah anda sudah pernah
menggunakannya?
2. Apakah GPS Tracker ini perlu bagi sekitar anda?
3. Kendala apa yang anda temui pada saat anda menggunakan aplikasi tersebut?
4. Bagaimanakah menurut anda mengoperasikan gps tracker ini dengan fitur yang ada?
5. Menurut anda adakah yang kurang dari gps tracker saat ini?
Jawaban:
1. Ya, pernah.
2. Perlu, untuk mengetahui alternatif jalan saat berada dikemacetan.
3. Kendalanya pada saat di ruangan tertentu tidak mendapatkan sinyal GPS
4. Sudah cukup mudah dan mudah dibawa kemana saja.
5. Saya tidak bisa melacak posisi orang lain yang ingin saya ketahui.
Pertanyaan :
1. Apakah anda mengetahui tentang gps tracker? jika ya, apakah anda sudah pernah
menggunakannya?
2. Apakah GPS Tracker ini perlu bagi sekitar anda?
3. Kendala apa yang anda temui pada saat anda menggunakan aplikasi tersebut?
101
102
4. Bagaimanakah menurut anda mengoperasikan gps tracker ini dengan fitur yang ada?
5. Menurut anda adakah yang kurang dari gps tracker saat ini?
Jawaban:
1. Ya, pernah.
2. Perlu, untuk mengetehui dimana saya berada saat saya sedang tersesat.
3. Kendalanya saat pulsa habis tidak bisa di gunakan.
4. Cukup mudah digunakan dan fiturnya juga cukup lengkap.
5. Terkadang posisi meleset beberapa meter dari tempat sebanarmya.
Pertanyaan :
1. Apakah anda mengetahui tentang gps tracker? jika ya, apakah anda sudah pernah
menggunakannya?
2. Apakah GPS Tracker ini perlu bagi sekitar anda?
3. Kendala apa yang anda temui pada saat anda menggunakan aplikasi tersebut?
4. Bagaimanakah menurut anda mengoperasikan gps tracker ini dengan fitur yang ada?
5. Menurut anda adakah yang kurang dari gps tracker saat ini?
Jawaban:
1. Ya, pernah.
2. Perlu, untuk memberi petunjuk arah ke lokasi yang saya akan tuju.
3. Untuk saat ini saya belum menemui kendalan dalam penggunaan GPS.
4. Cukup mudah.
5. Mungkin kalau di tambahkan perkiraan cuaca lebih menarik.
101
103
Pertanyaan :
1. Apakah anda mengetahui tentang gps tracker? jika ya, apakah anda sudah pernah
menggunakannya?
2. Apakah GPS Tracker ini perlu bagi sekitar anda?
3. Kendala apa yang anda temui pada saat anda menggunakan aplikasi tersebut?
4. Bagaimanakah menurut anda mengoperasikan gps tracker ini dengan fitur yang ada?
5. Menurut anda adakah yang kurang dari gps tracker saat ini?
Jawaban:
101
104
LAMPIRAN II
SOURCE CODE
Class GetData
namespace GPS.GetData
{
public partial class Default : PortalModuleBase
{
private MemoryStream stream;
private System.Drawing.Image image;
private const string url = "http://maps.google.com/staticmap";
"</Result>" +
"</ResultSet>"
);
}
try
{
MyFileStream = new FileStream(Server.MapPath(".") + "\\xml\\"
+ xmlname + ".aspx", System.IO.FileMode.Create,
System.IO.FileAccess.Write);
MyWriter = new StreamWriter(MyFileStream);
MyWriter.WriteLine("<%@ Page Language=\"VB\"
AutoEventWireup=\"false\" CodeFile=\"xml.vb\" Inherits=\"xml\" %>");
MyWriter.WriteLine("<Latitude>" + listdgi[listdgi.Count -
1].Latitude.ToString() + "</Latitude>");
MyWriter.WriteLine("<Longitude>" + listdgi[listdgi.Count
- 1].Longitude.ToString() + "</Longitude>");
MyWriter.WriteLine("<LastUpdate>" + listdgi[listdgi.Count
- 1].LastUpdate.ToString() + "</LastUpdate>");
}
else
{
MyWriter.WriteLine("<Error>" + infoxml + "</Error>");
}
MyWriter.WriteLine("</Result>");
MyWriter.WriteLine("</ResultSet>");
}
catch (Exception excep)
{
Debug.WriteLine("Error: " + excep.Message);
}
finally
{
MyWriter.Close();
MyFileStream.Close();
106
Response.Redirect("http://" +
PortalAlias.HTTPAlias.ToString() + "/xml/" + xmlname + ".aspx/?xml=" +
xmlname);
}
}
if (Request.QueryString["vm"] == "1")
{
//GMap1.Visible = true;
//ViewMaps();
}
else
{
CekGpsID();
}
}
if (listdevice.Count != 0)
{
if (gpsiddevice.GpsID == Convert.ToInt32(gpsid) &&
gpsiddevice.Imei == imei)
{
if (sgpsid == null)
{
SaveDB();
ViewImage();
}
else
{
//xml(sgpsid, "search");
sxml(sgpsid);
}
}
107
}
}
else
{
ViewImage();
}
}
if (zoom != null && height != null && width != null && UpView
!= "2")
{
image = getMap();
stream = new MemoryStream();
image.Save(stream, ImageFormat.Png);
Response.ContentType = "image/png";
stream.WriteTo(Response.OutputStream);
108
Response.Flush();
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
if (stream != null)
{
stream.Dispose();
}
if (image != null)
{
image.Dispose();
}
}
}
HttpWebRequest WebReq =
(HttpWebRequest)WebRequest.Create(sb.ToString());
HttpWebResponse WebResp =
(HttpWebResponse)WebReq.GetResponse();
Stream stream = WebResp.GetResponseStream();
System.Drawing.Image image =
System.Drawing.Image.FromStream(stream);
stream.Close();
return image;
}
catch (Exception e)
{
throw new Exception(e.Message);
}
}
109
return dt.ToString();
}
Class Maps
namespace GPS.Maps.View
{
public partial class Realtime : PortalModuleBase
{
private GPS.Controller.GpsTrackingsControler GpsCtrl;
private GPS.Controller.GpsDevicesController DeviceCtrl;
if (Convert.ToInt32(lblCount.Text) <
Convert.ToInt32(lblMax.Text))
{
DrawGpsByTimer(0, Convert.ToInt32(lblCount.Text));
}
else
{
lblCount.Text = "1";
Timer1.Enabled = false;
}
}
110
GMap1.setCenter(latlang, 4);
}
GMap1.resetMarkers();
GMap1.resetPolylines();
GMap1.resetCenter();
GMap1.addPolyline(gp);
GMap1.addGMarker(marker);
GMap1.addGMarker(marker2);
if (Session["_Zoom"] != "false")
{
GMap1.setCenter(titikakhir, 17);
Session["_Zoom"] = "false";
}
else
{
GMap1.setCenter(titikakhir);
}
}
}
points.Add(point);
}
return result;
}
}
}
Class Register
namespace GPS.Register.View
{
public partial class Formulir : PortalModuleBase
{
private static GPS.Controller.GpsDevicesController gpsidCtrl;
private ModuleController moduleCtrl;
private GPS.Controller.GpsDevicesController DeviceCtrl;
oUser.PortalID = PortalId;
oUser.IsSuperUser = false;
oUser.FirstName = txtFName.Text;
oUser.LastName = txtLName.Text;
oUser.Email = UName;
oUser.Username = UName;
oUser.DisplayName = txtDName.Text;
oUser.Profile.PreferredLocale = PortalSettings.DefaultLanguage;
oUser.Profile.TimeZone = PortalSettings.TimeZoneOffset;
oUser.Profile.FirstName = oUser.FirstName;
oUser.Profile.LastName = oUser.LastName;
oUser.Membership.Approved = true;
oUser.Membership.CreatedDate = DateTime.Now;
oUser.Membership.IsOnLine = false;
oUser.Membership.Password = txtPassword.Text;
try
{
113
if (UserCreateStatus.Success == UserController.CreateUser(ref
oUser))
{
CreateRoles(oUser);
CreateGpsID(oUser);
ltrInfo.Text = "Silahkan periksa email Anda.";
ClearAll();
}
else if (UserCreateStatus.UsernameAlreadyExists ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = String.Format("User Name {0} Already
Exists", UName);
}
else if (UserCreateStatus.UsernameAlreadyExists ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = "Username Already Exists";
}
else if (UserCreateStatus.UserRejected ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = "UserRejected";
}
else if (UserCreateStatus.DuplicateEmail ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = "Duplicate Email";
}
else if (UserCreateStatus.DuplicateProviderUserKey ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = "Duplicate Provider User Key";
}
else if (UserCreateStatus.DuplicateUserName ==
UserController.CreateUser(ref oUser))
{
ltrInfo.Text = "Duplicate User Name";
}
else
{
ltrInfo.Text = "Ada Kesalahan";
}
}
catch (Exception ex)
{
ltrInfo.Text = ex.ToString();
}
}
SendEmailRegistrasi(_gpsid.ToString());
}
Server.MapPath(@"DesktopModules\GPS.Register\Attach\" + "GPSTracker2.0.jar")
};
mail.Send(Request.QueryString["email"], att, bodyMsg, true);
return message;
}
if (listgpsid.Count != 0)
i=0;
else
i=2;
}
return _gpsid;
}
}
}
Class GPS
namespace GPS.Controller
{
public class GpsDevicesController: Base
{
private List<Entities.GpsDevice> Gdevice;
{
return (from k in dataContext.GpsDevices where k.UserID == val
select k).ToList();
}
Class Manager
namespace GPS.Manager
{
public partial class Default : PortalModuleBase
{
private GPS.Controller.GPSUserController GPSUserCtrl;
private GPS.Controller.GpsDevicesController GPSDevicesCtrl;
{
if (e.Exception != null)
{
e.KeepInEditMode = true;
e.ExceptionHandled = true;
DisplayMessage(true, "Employee " +
e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["EmployeeID"] + "
cannot be updated. Reason: " + e.Exception.Message);
}
else
{
DisplayMessage(false, "Employee " +
e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["EmployeeID"] + "
updated");
}
}
this.Label1.ForeColor = Color.Red;
}
else
{
this.Label1.ForeColor = Color.Green;
}
this.Label1.Text = text;
}