• Tidak ada hasil yang ditemukan

PENGEMBANGAN APLIKASI MOBILE SOS JAMAAH HAJI BERBASIS WEB DENGAN MEMANFAATKAN GEOLOCATION API DAN GOOGLE MAP API.

N/A
N/A
Protected

Academic year: 2017

Membagikan "PENGEMBANGAN APLIKASI MOBILE SOS JAMAAH HAJI BERBASIS WEB DENGAN MEMANFAATKAN GEOLOCATION API DAN GOOGLE MAP API."

Copied!
126
0
0

Teks penuh

(1)

GEOLOCATION API DAN GOOGLE MAP API

SKRIPSI

Disusun oleh :

MOH. KHOIRUL HUDA

NPM. 0834010247

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL " VETERAN" J AWA TIMUR

SURABAYA

(2)

GEOLOCATION API DAN GOOGLE MAP API

SKRIPSI

Diajukan Untuk Memenuhi Sebagai Persyaratan

Dalam Memperoleh Gelar Sarjana Komputer

Jurusan Teknik Informatika

Disusun oleh :

MOH. KHOIRUL HUDA

NPM. 0834010247

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” J AWA TIMUR

SURABAYA

(3)

PENGEMBANGAN APLIKASI MOBILE SOS J AMAAH HAJ I

BERBASIS WEB DENGAN MEMANFAATKAN

GEOLOCATION API DAN GOOGLE MAP API

Disusun O leh :

MOH. KHOIRUL HUDA

NPM. 0834010247

Telah disetujui untuk mengikuti Ujian Negar a Lisan Periode Tahun Akademik 2013/2014

Pembimbing Utama

Henni Endah W, S.T, M.Kom NPT. 3 7809 130 348 1

Pembimbing Pendamping

Achmad J unaidi, S.Kom NPT. 3 7811 04 0199 1

Mengetahui,

Ketua Program Studi Teknik Infor matika Fakultas Teknologi Industri

UPN ”Veteran” J awa Timur

(4)

MEMANFAATKAN GEOLOCATION API DAN GOOGLE MAP API Disusun Oleh :

MOH. KHOIRUL HUDA

NPM. 0834010247

Telah dipertahankan di hadapan dan diterima oleh Tim Penguji Skr ipsi Pr ogram Studi Teknik Infor matika Fakultas Teknologi Industri

Univer sitas Pembangunan Nasional ”Veteran” J awa Timur Pada Tanggal 4 Oktober 2013

Univer sitas Pembangunan Nasional ”Veteran” J awa Timur

(5)

FAKULTAS TEKNOLOGI INDUSTRI

PANITIA UJ IAN SKRIPSI / KOMPREHENSIF

KETERANGAN REVISI lisan periode I tahun akademik 2013/2014 :

”PENGEMBANGAN APLIKASI MOBILE SOS J AMAAH HAJ I BERBASIS WEB DENGAN MEMANFAATKAN GEOLOCATION API

DAN GOOGLE MAP API”

Surabaya, Januari 2014 Dosen Penguji yang memerintahkan revisi:

(6)

DOSEN PEMBIMBING II : Achmad J unaidi, S.Kom PENYUSUN : Moh. Khoir ul Huda

ABSTRAKSI

Permasalahan jamaah tersesat dalam penyelenggaraan haji tiap tahun masih saja belum terselesaikan. Salah satu upaya untuk dapat membantu mengurangi permasalahan jamaah tersesat adalah dengan memanfaatkan alat komunikasi yang banyak dimiliki oleh jamaah haji, yaitu telepon genggam pintar atau smartphone. Pada penelitian terdahulu, yaitu aplikasi mobile SOS jamaah haji berbasis

Android, sudah mampu memberikan solusi para koordinator dalam mempersingkat waktu pencarian jamaah haji yang tersesat. Akan tetapi aplikasi tersebut hanya bisa digunakan pada smartphone berbasis Android saja. Dengan menjamurnya berbagai platform yang terdapat pada smartphones sekarang ini, seperti Android, Blackberry, hingga iOS, tentunya akan membutuhkan waktu dan biaya yang mahal untuk membuat aplikasi sejenis berdasarkan platform yang ada. Salah satu konsep dari web 2.0 yang dapat menjadi solusi alternatif dalam berkomunikasi lintas platform adalah HTML5 dimana lebih mendukung teknologi multimedia terbaru dan dirancang untuk lebih universal dan interaktif. Disamping itu dengan memanfaatkan fasilitas yang mendukung HTML5 yaitu Geolocation API, dapat memungkinkan untuk menemukan lokasi lintang dan bujur seseorang. Kemudian didukung oleh Google Maps API versi 3 yang juga disempurnakan untuk lebih mendukung kecepatan akses peta dari mobile browser.

Maka dengan begitu aplikasi mobile SOS jamaah haji berbasis web dapat membantu pekerjaan koordinator dalam pencarian jamaah haji yang tersesat. Serta dapat menjadi alternatif aplikasi lintas platform yang dapat digunakan oleh berbagai jenis platform mobile phone.

(7)

Puji syukur penulis panjatkan kehadirat Allah SWT yang telah memberikan segala nikmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini dengan baik. Atas limpahan serta karunia dan rahmat-Nya penulisan laporan skripsi yang berjudul “Pengembangan Aplikasi Mobile SOS J amaah Haji Berbasis Web Dengan Memanfaatkan Geolocation API dan Google Map API” dapat terselesaikan.

Skripsi ini dibuat sebagai salah satu syarat memperoleh gelar sarjana komputer di jurusan teknik informatika UPN ”Veteran” Jatim. Skripsi ini tidak sempurna tanpa dukungan semua pihak. Oleh karena itu, penulis ingin mengucapkan terimakasih kepada:

1. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri Universitas Pembangunan Nasional “Veteran” Jawa Timur.

2. Ibu Dr. Ir. Ni Ketut Sari, MT., selaku Kepala Jurusan Teknik Informatika Fakultas Teknologi Industri Universitas Pembangunan Nasional “Veteran” Jawa Timur.

3. Ibu Henni Endah W, S.T, M.Kom, selaku dosen pembimbing utama yang telah banyak memberikan kritik, petunjuk, bimbingan, serta dorongan demi terselesaikannya tugas akhir ini.

(8)

selama ini.

6. Keluarga besar Dito Renady Harto, terutama kepada tante Tedjawati, terima kasih atas doa dan dukungannya selama ini.

7. Teman-teman keluarga besar UKM Musik Satya Palapa, UPN ‘Veteran’ Jawa Timur atas pengalaman hidup yang sangat luar biasa. Jika ditulis satu-satu dapat menghabiskan tiga lembar kertas, maaf ya hha.

8. Teman-teman seperjuangan, #Libsink. Rizki Octadiansyah, Widy Ary, Hadinata Suhartono, Novrizal Dwi Cahyo, Juni Hardi Tiyo, Fadlan Sazudi, Dadang Ramadhan, Rayunda Ivone Narashari, M. Fanny Firmansyah, dan lain-lain yang tidak bisa penulis sebutkan satu-satu. Ayo yang belum, seng penting semangate lo pak!

9. Teman-teman KKN Kelompok 39 Desa Banjarsari, Kab. Jombang. Terima kasih atas pengalamannya, berkat rapat penggulingan ketua, penulis berani meluapkan emosi di depan umum untuk pertama kalinya, hha.

10.Teman-teman komunitas Earth Hour Surabaya -@EHSurabaya- Upit, Hana Fadhilah, Yunitasari ‘Olla’, Asmaul Husniyah, Galih Kumalasari, Agil Setiawan, Sarkaje, Anwar, Febrianto Gilang dan lain-lain. Semangat! Pantang menyerah sebelum manusia sadar akan keseimbangan alamnya. 11.Penyemangat skripsi, Vanda Kemala dan Annisantyas Nugraheny. Terima

kasih atas doa, dukungan, dan cambukan semangat jarak jauhnya.

(9)

budi baik kalian.

Penulis menyadari skripsi ini masih jauh dari sempurna, sehingga saran dan kritik yang membangun sangat penulis harapkan. Semoga laporan ini bermanfaat bagi pembacanya dan bagi civitas akademi FTI UPN "Veteran" Jatim.

Akhirnya, penulis berharap agar penyusunan laporan ini mampu memberikan sumbangsih bagi perkembangan dan kemajuan teknik informatika Universitas Pembangunan Nasional “Veteran” Jawa Timur.

Surabaya, Oktober 2013

(10)

KATA PENGANTAR ... ii

2.2.1 Penyebab Jamaah Haji Tersesat ... 9

2.2.2 Prosedur Penanganan Jamaah Tersesat ... 10

2.3 Geolocation API ... 11

2.6 PHP Framework CodeIgniter ... 19

2.6.1 Konsep Model-View-Controller (MVC) ... 20

(11)

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 26

3.1 Analisis Sistem ... 26

3.1.1 Arsitektur Sistem ... 26

3.1.2 Analisis Fungsional ... 28

3.2 Perancangan Sistem ... 28

3.2.1 Use Case Diagram ... 29

3.2.1.1 Use Case Diagram Jamaah Haji ... 29

3.2.1.2 Use Case Diagram Koordinator ... 31

3.2.1.3 Use Case Diagram Administrator ... 32

3.2.2 Activity Diagram ... 34

3.2.2.1 Activity Diagram Mengirim SOS ... 34

3.2.2.2 Activity Diagram Lihat Peta Jamaah Tersesat ... 35

3.2.2.3 Activity Diagram Manajemen Regu ... 36

3.2.2.4 Activity Diagram Manajemen Koordinator ... 37

3.2.2.5 Activity Diagram Manajemen Jamaah ... 38

3.2.3 Sequence Diagram ... 39

3.2.3.1 Sequence Diagram Mengirim SOS ... 39

3.2.3.2 Sequence Diagram Lihat Peta Jamaah Tersesat ... 40

3.2.3.3 Sequence Diagram Manajemen Data Regu ... 42

3.2.3.4 Sequence Diagram Manajemen Data Koordinator ... 43

3.2.3.5 Sequence Diagram Manajemen Data Jamaah ... 44

3.2.4 Class Diagram ... 45

3.3 Perancangan Data ... 46

3.3.1 CDM (Conceptual Data Model) ... 46

3.3.2 PDM (Physical Data Model) ... 47

3.3.3 Struktur Tabel ... 48

3.4 Desain Antarmuka (Interface) ... 51

3.4.1 Desain Antarmuka Halaman Utama Jamaah Haji ... 52

3.4.2 Desain Antarmuka Halaman Koordinator ... 52

(12)

3.4.3 Desain Antarmuka Halaman Administrator ... 54

3.4.3.1 Desain Antarmuka Halaman Manajemen Regu ... 55

3.4.3.2 Desain Antarmuka Halaman Manajemen Koordinator ... 55

3.4.3.3 Desain Antarmuka Halaman Manajemen Jamaah ... 56

BAB IV IMPLEMENTASI DAN UJ I COBA ... 58

4.1 Perangkat Sistem ... 58

4.1.1 Spesifikasi Perangkat Keras ... 58

4.1.2 Spesifikasi Perangkat Lunak ... 59

4.2 Implementasi Sistem ... 60

4.2.1 Implementasi Antarmuka ... 60

4.2.1.1 Halaman Utama Jamaah Haji ... 60

4.2.1.2 Halaman Koordinator Lihat Peta Jamaah Tersesat ... 61

4.2.1.3 Halaman Koordinator Lihat Jamaah Haji ... 61

4.2.1.4 Halaman Koordinator Pencarian Rute Terpendek ... 61

4.2.1.5 Halaman Koordinator Ubah Status Jamaah ... 63

4.2.1.6 Halaman Administrator Master Data Regu ... 64

4.2.1.7 Halaman Administrator Master Data Koordinator ... 64

4.2.1.8 Halaman Administrator Master Data Jamaah ... 65

4.3 Hasil Uji Coba ... 66

4.3.1 Lingkungan Uji Coba ... 66

4.3.2 Skenario Uji Coba ... 67

4.3.3 Uji Coba Fungsionalitas ... 69

4.3.3.1 Uji Coba SOS Jamaah Haji ... 69

4.3.3.2 Uji Coba Koordinator Lihat Peta Jamaah Tersesat ... 71

4.3.3.3 Uji Coba Koordinator Pencarian Rute Terpendek ... 73

4.3.3.4 Uji Coba Koordinator Ubah Status Jamaah ... 75

4.3.3.5 Uji Coba Koordinator Lihat Jamaah Haji ... 76

4.3.3.6 Uji Coba Administrator Master Data Regu ... 77

(13)

4.3.4.1 Uji Coba Portabilitas Pada Platform iPhone ... 81

4.3.4.2 Uji Coba Portabilitas Pada Platform Android ... 87

4.3.4.3 Uji Coba Portabilitas Pada Platform BlackBerry ... 92

4.4 Validasi ... 96

4.4.1 Populasi dan Sampel ... 97

4.4.2 Tempat dan Waktu ... 97

4.4.3 Soal Kuesioner ... 97

4.4.4 Uji Validitas ... 98

BAB V PENUTUP ... 103

5.1Kesimpulan ... 103

5.2Saran ... 103

DAFTAR PUSTAKA ... 105

(14)

Gambar 2.2 Logo HTML5 ... 14

Gambar 3.3 Use Case Diagram Koordinator ... 31

Gambar 3.4 Use Case Diagram Administrator ... 32

Gambar 3.5 Activity Diagram Mengirim SOS ... 34

Gambar 3.6 Activity Diagram Lihat Daftar Jamaah Tersesat ... 35

Gambar 3.7 Activity Diagram Manajemen Regu ... 36

Gambar 3.8 Activity Diagram Manajemen Koordinator ... 37

Gambar 3.9 Activity Diagram Manajemen Jamaah ... 38

Gambar 3.10 Sequence Diagram Mengirim SOS ... 40

Gambar 3.11 Sequence Diagram Lihat Peta Jamaah Tersesat ... 41

Gambar 3.12 Sequence Diagram Manajemen Data Regu ... 42

Gambar 3.13 Sequence Diagram Manajemen Data Koordinator ... 44

Gambar 3.14 Sequence Diagram Manajemen Data Jamaah ... 45

Gambar 3.15 Class Diagram ... 46

Gambar 3.16 CDM (Conceptual Data Model) ... 47

Gambar 3.17 PDM (Physical Data Model) ... 48

Gambar 3.18 Desain Antarmuka Halaman Utama Jamaah Haji ... 52

Gambar 3.19 Desain Antarmuka Halaman Lihat Peta Jamaah Tersesat ... 53

Gambar 3.20 Desain Antarmuka Halaman Form Pencarian Rute Terpendek .. 53

Gambar 3.21 Desain Antarmuka Halaman Form Ubah Status Jamaah ... 54

Gambar 3.22 Desain Antarmuka Halaman Manajemen Data Regu ... 55

Gambar 3.23 Desain Antarmuka Halaman Manajemen Koordinator... 56

Gambar 3.24 Desain Antarmuka Halaman Manajemen Jamaah Haji ... 56

(15)

Gambar 4.4 Halaman Koordinator Lihat Jamaah Haji ... 62

Gambar 4.5 Halaman Koordinator Pencarian Rute Terpendek ... 63

Gambar 4.6 Halaman Koordinator Ubah Status Jamaah ... 63

Gambar 4.7 Halaman Administrator Master Data Regu ... 64

Gambar 4.8 Halaman Administrator Master Data Koordinator ... 64

Gambar 4.9 Halaman Administrator Master Data Jamaah ... 65

Gambar 4.10 iPhone 4S ... 67

Gambar 4.11 Hisense Android ... 67

Gambar 4.12 Blackberry Curve 9220 ... 68

Gambar 4.13 Shortcut Aplikasi ... 69

Gambar 4.14 Halaman SOS Jamaah Haji ... 70

Gambar 4.15 Pesan Pengiriman Lokasi Berhasil ... 70

Gambar 4.16 Pesan Error SOS Jamaah Haji ... 71

Gambar 4.17 Notifikasi SMS Untuk Koordinator ... 71

Gambar 4.18 Halaman Login Koordinator ... 72

Gambar 4.19 Halaman Koordinator Lihar Peta Jamaah Tersesat ... 72

Gambar 4.20 Halaman Koordinator Pencarian Rute Terpendek ... 73

Gambar 4.21 Dialog Box SMS Konfirmasi Jamaah ... 73

Gambar 4.22 Notifikasi SMS Untuk Jamaah ... 74

Gambar 4.23 Halaman Koordinator Hasil Pencarian Rute Terpendek ... 74

Gambar 4.24 Halaman Koordinator Ubah Status Jamaah ... 75

Gambar 4.25 Pesan Konfirmasi Ubah Status Jamaah ... 75

Gambar 4.26 Halaman Koordinator Lihat Jamaah Haji ... 76

Gambar 4.27 Halaman Koordinator Lihat Detail Jamaah Haji ... 76

Gambar 4.28 Halaman Administrator Master Data Regu ... 77

Gambar 4.29 Form Input Data Regu ... 77

Gambar 4.30 Pesan Error Input Data Regu ... 78

Gambar 4.31 Halaman Administrator Master Data Koordinator ... 78

(16)

Gambar 4.35 Form Input Data Jamaah ... 80

Gambar 4.36 Pesan Error Input Data Jamaah ... 81

Gambar 4.37 Membuka Pengunci Layar iPhone... 82

Gambar 4.38 Home Menu Pada iPhone... 82

Gambar 4.39 Halaman SOS Jamaah Haji Pada iPhone ... 83

Gambar 4.40 Pesan Sukses SOS Jamaah Haji Pada iPhone ... 83

Gambar 4.41 Home Menu Pada iPhone... 84

Gambar 4.42 Halaman Login Koordinator Pada iPhone ... 84

Gambar 4.43 Halaman Koordinator Lihat Peta Tersesat Pada iPhone ... 85

Gambar 4.44 Submenu Pencarian Rute Terpendek Pada iPhone ... 85

Gambar 4.45 Hasil Pencarian Rute Terpendek Pada Iphone ... 86

Gambar 4.46 Ubah Status Jamaah Pada iPhone ... 86

Gambar 4.47 Membuka Pengunci Layar Android ... 87

Gambar 4.48 Home Menu Pada Android ... 87

Gambar 4.49 Halaman SOS Jamaah Haji Pada Android ... 88

Gambar 4.50 Pesan Sukses SOS Jamaah Haji Pada Android... 88

Gambar 4.51 Home Menu Pada Android ... 89

Gambar 4.52 Halaman Login Koordinator Pada Android ... 89

Gambar 4.53 Halaman Koordinator Lihat Peta Tersesat Pada Android ... 90

Gambar 4.54 Submenu Pencarian Rute Terpendek Pada Android ... 90

Gambar 4.55 Hasil Pencarian Rute Terpendek Pada Android ... 91

Gambar 4.56 Ubah Status Jamaah Pada Android ... 91

Gambar 4.57 Home Menu Pada BlackBerry ... 92

Gambar 4.58 Halaman SOS Jamaah Haji Pada BlackBerry ... 92

Gambar 4.59 Pesan Sukses SOS Jamaah Haji Pada BlackBerry ... 93

Gambar 4.60 Home Menu Pada BlackBerry ... 93

Gambar 4.61 Halaman Login Koordinator Pada BlackBerry... 94

Gambar 4.62 Halaman Koordinator Lihat Peta Tersesat Pada BlackBerry ... 94

(17)
(18)

Tabel 3.1 Penjelasan Use Case Diagram Jamaah Haji ... 30

Tabel 3.2 Penjelasan Use Case Diagram Koordinator ... 31

Tabel 3.3 Penjelasan Use Case Diagram Administrator ... 33

Tabel 3.4 Penjelasan Tabel User ... 49

Tabel 3.5 Penjelasan Tabel Regu... 49

Tabel 3.6 Penjelasan Tabel Koordinator ... 50

Tabel 3.7 Penjelasan Tabel History Pelacakan... 51

Tabel 4.1 Skala Pilihan Jawaban Kuesioner ... 98

(19)
(20)

1.1 Latar Belakang

Dalam penyelenggaraan ibadah haji seringkali terdapat sejumlah masalah yang muncul setiap tahunnya. Berbagai permasalahan masih saja dialami oleh jamaah haji, mulai dari persoalan tempat tinggal, transportasi dari penginapan ke tempat ibadah, persoalan kesehatan, makanan, jamaah tersesat dan berbagai persoalan lain yang belum semuanya dapat dipecahkan secara tuntas. Memang tidak mungkin semua permasalahan tersebut dapat dipecahkan dengan sempurna karena perbedaan yang sangat drastis antara Indonesia dan Arab Saudi telah mempengaruhi secara langsung kondisi jamaah haji baik secara fisik maupun mental, sehingga persoalan yang dihadapi oleh jamaah pun berbeda-beda satu sama lain. (VOA-islam, 2012)

Salah satu hal yang mungkin tidak bisa diabaikan adalah permasalahan banyaknya jamaah haji yang tersesat. Meskipun sebelum berangkat setiap jamaah haji sudah dibekali persiapan yang tidak sedikit, seringkali masalah tersesatnya jamaah haji masih muncul. Selain persiapan fisik dan mental, satu hal yang tidak bisa diabaikan begitu saja adalah informasi seputar berbagai tempat yang ada di Arab Saudi. Hal ini penting adanya agar terhindar dari hilangnya komunikasi dan tersesat di tempat tersebut. (Okezone, 2011)

(21)

phone. Dengan semakin pintarnya fungsi dan kegunaan dari mobile phone saat ini

tentunya dapat kita manfaatkan dengan membuat aplikasi yang berguna bagi kehidupan sehari-hari, khususnya dalam hal ini membuat sebuah aplikasi mobile yang bertujuan agar memudahkan para koordinator regu jamaah haji untuk menangani jamaah haji yang tersesat di suatu tempat yang belum ia ketahui sebelumnya.

Penelitian relokasi jamaah haji tersesat bukanlah pertama kali ini saja. Sebelumnya sudah ada penelitian dengan permasalahan serupa dan dengan berbagai metode penyelesaian yang digunakan dapat menghasilkan kelebihan dan kekurangan masing-masing. Salah satunya adalah penelitian aplikasi mobile SOS jamaah haji dengan menggunakan platform berbasis Android. Aplikasi tersebut sudah mampu memberikan solusi para koordinator dalam mempersingkat waktu pencarian jamaah haji yang tersesat. Akan tetapi salah satu kendala dari aplikasi tersebut adalah hanya bisa digunakan pada smartphone berbasis Android saja. Dengan menjamurnya berbagai platform yang ada pada smartphones sekarang ini, seperti Android itu sendiri, kemudian Blackberry, Symbian, hingga iOS, tentunya akan membutuhkan waktu dan biaya yang mahal untuk membuat aplikasi sejenis berdasarkan platform yang ada. (Juni Hardi Tiyo, 2013)

(22)

pengguna untuk menemukan lokasi lintang dan bujur seseorang. Cara kerja Geolocation API sendiri tidak hanya mengambil lokasi bersumber dari GPS, melainkan bisa melalui sinyal menara BTS terdekat atau bisa juga IP Address. Kemudian didukung pula oleh Google Maps API versi 3 yang juga disempurnakan untuk lebih mendukung kecepatan akses suatu peta dari mobile

browser, maka aplikasi mobile berbasis web dengan memanfaatkan HTML5

diharapkan bisa menjadi alternatif sebuah aplikasi yang dapat digunakan oleh berbagai jenis platform mobile phone pada masa mendatang. (Yousuf Hasan, Mustafa Zaidi, Najmi Haider, W.U.Hasan dan I.Amin, 2012)

1.2 Rumusan Masalah

Berdasarkan dari uraian latar belakang di atas maka dapat dirumuskan suatu permasalahan, yaitu :

a. Bagaimana cara merancang dan membuat aplikasi mobile SOS jamaah haji yang bisa diakses oleh smartphones dengan jenis platform yang berbeda? b. Bagaimana cara mengimplementasikan pengembangan aplikasi mobile

SOS jamaah haji berbasis web dengan memanfaatkan Geolocaion API dan Google Maps API?

1.3 Batasan Masalah

Agar dalam pengerjaan tugas akhir ini dapat lebih terarah, maka pembahasan penulisan dibatasi pada ruang lingkup pembahasan sebagai berikut :

(23)

b. Aplikasi mobile SOS jamaah haji berbasis web ini bisa digunakan dengan menggunakan smartphones yang sudah memiliki dan mengaktifkan GPS

reciever didalamnya.

c. Daerah yang ditempati user dalam menggunakan aplikasi mobile SOS jamaah haji berbasis web harus berada dalam kawasan yang bisa mengakses internet.

d. Dalam mengakses aplikasi mobile SOS jamaah haji berbasis web ini harus mempunyai paket internet full service atau minimal memiliki pulsa yang cukup untuk mengakses internet.

e. Untuk pencarian rute terpendek, menggunakan fasilitas Google Maps

Direction.

1.4 Tujuan

Adapun tujuan yang ingin dicapai dalam permasalahan di atas adalah merancang dan membuat aplikasi mobile SOS jamaah haji yang dapat mengetahui posisi keberadaan para jamaah haji yang tersesat serta dapat diakses oleh

smartphone yang memiliki jenis platform berbeda-beda.

1.5 Manfaat

Adapun manfaat dari penelitian ini antara lain, yaitu :

a. Bagi koordinator regu akan mempermudah untuk mengetahui posisi para jamaah haji yang tersesat, sehingga dapat ditangani dengan cepat.

(24)

1.6 Metode Penelitian

Metodologi yang digunakan supaya tepat dan akurat adalah dengan melalui studi pustaka, pengumpulan data maupun berkas, analisis suatu sistem, merancang sistem tersebut yang kemudian melakukan test awal serta mengimplementasikannya. Adapun tahap penelitiannya adalah sebagai berikut :

a. Studi Literatur, yaitu dengan membaca buku-buku dan literatur yang berhubungan dengan analisis dan perancangan sistem informasi.

b. Analisis Kebutuhan, yaitu mengumpulkan kebutuhan dari berbagai sumber secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap. c. Perancangan Sistem dan Program, yaitu merancang atau mendesain sistem

sesuai dengan hasil analisis, baik rancangan input, output maupun cara kerja sistem yang akan dirancang. Desain program dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.

d. Implementasi dan Pengujian Unit, yaitu desain program diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji baik secara unit.

e. Pengujian Sistem, yaitu penyatuan unit-unit program kemudian diuji secara keseluruhan (system testing).

1.7 Sistematika Penulisan

(25)

BAB I PENDAHULUAN

Bab ini berisikan latar belakang, rumusan masalah, tujuan dan manfaat, batasan masalah, metodologi dan sistematika penulisan laporan.

BAB II TINJ AUAN PUSTAKA

Bab ini menguraikan tentang dasar teori pendukung yang digunakan dalam menyelesaikan tugas akhir, seperti teori yang terkait dengan aplikasi mobile SOS jamaah haji berbasis web. BAB III ANALISIS DAN PERANCANGAN

Bab ini menjelaskan mengenai analisis dan perancangan sistem yang dilakukan untuk membangun aplikasi mobile SOS jamaah haji berbasis web.

BAB IV IMPLEMENTASI, UJ I COBA DAN EVALUASI

Pada bab ini menjelaskan implementasi dari program yang telah dibuat meliputi spesifikasi kebutuhan implementasi dan tampilan aplikasi. Kemudian untuk tahap uji coba akan dilakukan dengan kriteria pengujian fungsionalitas sistem, kompabilitas sistem, dan efisiensi sistem. Sasaran dari uji coba dan evaluasi adalah untuk menemukan kesalahan-kesalahan dari aplikasi yang mungkin terjadi sehingga dapat diperbaiki

BAB V PENUTUP

Pada bab ini akan dijelaskan kesimpulan dan saran dari uraian-uraian yang terdapat pada bab-bab sebelumnya mengenai aplikasi

(26)

DAFTAR PUSTAKA

(27)

TINJ AUAN PUSTAKA

Bab ini menguraikan tentang dasar teori pendukung yang digunakan dalam menyelesaikan tugas akhir, yaitu teori yang terkait dengan aplikasi mobile SOS jamaah haji berbasis web.

2.1 Penelitian Pendahuluan

Tersesat tentu tidak terlepas dari kurangnya pemahaman tentang bahasa, usia sudah lanjut, dan seluk beluk bangunan kota Arab Saudi yang penuh dengan manusia yang berpakaian sama dengan jumlah ribuan. Karena itu telah dilakukan pengembangan SOS ke arah aplikasi mobile sehingga dapat mempermudah penggunaan aplikasi mobile baik para pengguna atau jamaah haji yang minim pengetahuan akan perkembangan teknologi dan mempermudah pencarian oleh para petugas atau koordinator rombongan yang sedang bertugas.

Aplikasi mobile SOS jamaah haji berbasis android ini adalah aplikasi yang terbagi atas client (jamaah haji) dan server (koordinator regu), memungkinkan bagi jamaah haji yang tersesat dengan menggunakan smartphones ber-platform

Android mengirimkan lokasi titik koordinat tempat ia tersesat. Kemudian

koordinator kelompok dimana tempat jamaah haji tersesat dinaungi dapat mengetahui lokasi jamaah tersesat. Adapun aplikasi menggunakan Application

Programming Interface (API) sebagai jembatan untuk mengirimkan informasi

berupa koordinat atau posisi terakhir jamaah haji yang sedang tersesat kepada

(28)

dapat memberikan solusi mempermudah koordinator mempersingkat waktu dalam pencarian jamaah haji yang tersesat. (Juni Hardi Tiyo, 2013)

Dalam penelitian sebelumnya ini, aplikasi yang dibangun berdasarkan

platform Android, sehingga tidak bisa berjalan pada lintas platform seperti Blackberry, Symbian ataupun iOS. Untuk fitur yang ada pada aplikasi berbasis

android ini tampilan untuk koordinator masih minim informasi tentang berapa jumlah total jamaah haji yang tersesat pada waktu bersamaan, jadi hanya bisa menampilkan maksimal satu buah titik koordinat jamaah yang tersesat. Sehingga jika terdapat jamaah tersesat lebih dari satu pada waktu bersamaan, aplikasi tersebut tidak dapat menampilkannya semua.

2.2 Pengertian Haji

Haji secara etimologi adalah berkunjung. Adapun secara terminologi adalah mengunjungi Baitul Haram dengan amalan tertentu, pada waktu tertentu. Ibadah haji adalah ibadah yang wajib dilakukan oleh umat islam yang mampu atau kuasa untuk melaksanakannya baik secara ekonomi, fisik, psikologis, keamanan, perizinan dan lain-lain sebagainya. Pergi haji adalah ibadah yang masuk dalam rukun islam yakni rukun islam ke lima yang dilakukan minimal sekali seumur hidup. (DR. Ahmad Zain An-Najah, M.A., 2011)

2.2.1 Penyebab J amaah Haji Tersesat

(29)

a. Salah pintu masjid.

Banyak jamaah yang tersesat diawali dengan kelirunya mengambil pintu (gate) keluar dari Masjidil Haram. Mungkin mereka tidak perhatian pada nomor pintu (gate), khususnya yang dari pelataran ka’bah. Hal ini bisa dimaklumi karena memang jumlah pintu Masjidil Haram ada 94 pintu dan mayoritas mereka yang tersesat karena berbeda pintu ketika masuk dan saat keluar.

b. Usia jamaah haji.

Tidak bisa dipungkiri bahwa mayoritas jamaah haji asal Indonesia adalah jamaah haji yang berusia lanjut. Hal itu pula yang sering menjadi penyebab tersesatnya mereka.

c. Terpisah dengan kelompok.

Kebanyakan, mereka terlepas dari rombongan ketika melakukan thawaf. Perlu diketahui bahwa thawaf di pelataran ka’bah kadang berseiko terputus dari rombongan. Itu dikarenakan padatnya pelataran ka’bah, khusunya di daerah Maqom Ibrahim, dimana kepadatan manusia sulit sekali diterobos. (Okezone, 2011)

2.2.2 Pr osedur Penanganan J amaah Ter sesat

Terdapat lima prosedur operasi standar apabila jemaah haji tersesat : a. Sebelum melakukan kegiatan petugas memberikan instruksi untuk

(30)

b. Petugas mencatat nomor telepon atau kontak pimpinan rombongan atau pembimbing haji rombongan.

c. Petugas memberikan instruksi agar membiasakan berangkat untuk bepergian bersama rombongan jamaah haji.

d. Saat ditemukan jamaah haji tersesat kemudian diantar ke Balai Pengobatan Haji Indonesia (BPHI) Mekkah. Petugas mengantar jamaah haji tersesat ke penginapan atau pondokkan tempat jamaah haji tinggal.

2.3 Geolocation API

Geolocation API adalah sebuah prosedur high-level interface dimana memungkinkan pelacakan atau pemetaan informasi lokasi seperti garis lintang dan bujur berdasarkan permintaan dari sebuah permintaan sebuah perangkat. Secara umum permintaan sebuah lokasi lintang dan bujur bersumber dari Global Position

Location (GPS) dan lokasi dari sinyal jaringan seperti alamat IP, RFID, WiFi,

MAC Address dari Bluetooth, Cell ID dari jaringan GSM/CDMA atau bisa juga berasal dari masukan pengguna. (W3C, 2013)

Geolocation API dirancang untuk memungkinkan suatu permintaan lokasi dan dapat di-update secara berulang-ulang, serta mempunyai kemampuan untuk menyimpan query lokasi lintang dan bujur tersebut kedalam sebuah cache.

(31)

Beberapa perangkat mobile populer seperti iPhone atau Android, mendukung dua metode untuk mencari sebuah lokasi dari pengguna. Metode pertama yaitu tringulasi, dimana Geolocation API akan mencari tahu lokasi berdasarkan kedekatan relatif dari perangkat mobile dengan menara BTS dari

operator seluler yang digunakan oleh pengguna. Metode ini cepat dan tidak

memerlukan penggunaan dari GPS khusus, namun hanya memberikan gambaran dimana pengguna berada. Tergantung dari berapa banyak menara BTS di daerah tersebut, Tingkat akurasi bisa hanya satu blok dari posisi pengguna sebenarnya atau bahkan bisa mencapai 1000 meter segala arah dari menara BTS tersebut.

Metode kedua benar-benar menggunakan perangkat keras GPS yang sudah ada pada perangkat mobile tersebut dimana GPS akan berkomunikasi dengan satelit. GPS biasanya dapat menentukan lokasi pengguna dengan akurasi hanya radius beberapa meter.

Cara kerja dari Geolocation API yang berbeda-beda ini adalah tergantung dari pengembang aplikasi. Bisa saja aplikasi tersebut tidak membutuhkan tingkat akurasi yang tinggi. Disisi lain, bisa saja pengembang aplikasi benar-benar membutuhkan lokasi dengan tingkat akurasi tinggi. Penggunaan kebutuhan tingkat akurasi yang tinggi itu sendiri akan berpengaruh terhadap penggunaan sumber daya dari perangkat mobile. Semakin tinggi akurasi yang dihariskan semakin banyak pula penggunaan dari sumber daya perangkat tersebut. (Mark Pilgrim, 2010)

(32)

browser akan menangani ini dengan memunculkan sebuah popup berisi pesan

untuk meminta izin tadi.

Gambar 2.1 Contoh Permintaan Izin Geolocation dari Pengguna

Geolocation API telah didukung oleh banyak browser pada perangkat

desktop dan mobile. Untuk beberapa browser dan perangkat lama dapat

mendukung fitur ini dengan menggunakan library tambahan. Saat ini Geolocation API didukung oleh browser desktop berikut:

a. Firefox 3.5+ b. Chrome 5.0+ c. Safari 5.0+ d. Opera 10.60+

e. Internet Explorer 9.0+

Sedangkan dukungan untuk perangkat mobile, adalah seperti berikut: a. Android 2.0+

b. iPhone 3.0+

c. Opera Mobile 10.1+

d. Symbian (S60 3rd & 5th generation) e. Blackberry OS 6

(Natha Fatima, 2012)

2.4 HTML5

(33)

web statis sederhana yang dimaksud adalah halaman web yang hanya terdiri dari beberapa teks statis dan gambar sederhana tanpa animasi apapun.

Gambar 2.2 Logo HTML5

Seiring dengan pertumbuhan dan popularitas dunia World Wide Web dengan kebutuhan akan website yang lebih interaktif dengan konten dinamis pula, adalah suatu kebutuhan yang harus dikembangkan untuk beberapa hal kompleks aplikasi. Dikarenakan keterbatasan HTML, banyak pengembang yang akhirnya bergantung kepada plugin dari pihak ketiga seperti Flash atau Silverlight demi membuat halaman website mereka lebih dinamis. Kerugian terbesar dari penggunaan plugin pihak ketiga adalah bahwa pengguna diharuskan untuk menginstal plugin tersebut untuk melihat halaman web. Kerugian lainnya adalah dengan semakin menjamurnya plugin dari pihak ketiga didalam aplikasi atau

browser membuat sebuah aplikasi web susah untuk menembus banyak browser.

Hal ini dikarenakan setiap plugin mempunyai cara yang berbeda-beda baik cara penulisan source code ataupun cara kerjanya.

Untuk pengembangan HTML menjadi bahasa markup yang lebih universal, sejak tahun 2006 W3C (World Wide Web Consortium) telah bekerja sama dengan WHATWG (Web Hypertext Application Technology Working

Group). WHATWG merupakan kelompok kerja pengembang web dan aplikasi,

(34)

pengembangan. Tujuan utama pengembangan HTML5 diantaranya untuk memperbaiki teknologi HTML agar mendukung teknologi multimedia terbaru, mudah dibaca oleh manusia dan juga mudah dimengerti oleh mesin.

Teknologi baru dalam HTML5 sendiri bukan hanya ada terdapat penambahan tag atau penyempurnaan tag. Memang benar hal itu merupakan bagian penting dari apa yang baru dari HTML5, tapi bukan itu inti keseluruhan dari teknologi baru yang bernama HTML5. Spesifikasi HTML5 juga mendefinisikan bagaimana tag-tag HTML5 dapat berinteraksi dengan JavaScript, melalui Document Object Model (DOM). Sebagai contoh dalam tag <video>, HTML5 tidak hanya mendefinisikan sebagai tag <video> untuk memuat video, tetapi terdapat sebuah DOM API yang sesuai untuk objek video dalam DOM. API ini dapat digunakan untuk mendeteksi apakah dokumen ini mendukung format video yang lain, dapat melacak berapa banyak video yang telah di-download, dan segala sesuatu yang dibutuhkan untuk mendukung sebuah penanganan video. (Mark Pilgrim, 2010)

2.4.1 Elemen canvas.

Dengan elemen ini sekarang bisa memungkinkan untuk membuat sebuah diagram, grafis atau sebuah animasi yang kompleks. Jika dahulu untuk membuat sebuah animasi dalam halaman web dibutuhkan sebuah plugin flash maka dengan elemen canvas sudah bisa membuat sebuah animasi. Elemen canvas sederhana namun sangat kuat karena hampir semua jenis grafis 2D dapat dibuat dengan sangat mudah dengan bantuan elemen canvas.

Untuk membuat sebuah grafis yang kompleks bisa memadukan dengan

(35)

semua jenis gambar dan grafis yang digambar memakai Javascript. Dengan menggunakan Javascript kita bisa mendapatkan grafis yang diperlukan dengan sangat mudah.

2.4.2 Local Storage

Salah satu keterbatasan terbesar dari HTML adalah tidak adanya kemampuan penyimpanan data. Teknologi masa depan bukan tidak mungkin mengharuskan adanya sebuah penyimpanan data pada sisi perangkat pengguna. Karena jelas ini adalah lahan dimana aplikasi bawaan dari suatu perangkat mobile memiliki keuntungan besar dibandingkan aplikasi web bahwa aplikasi native telah memiliki media penyimpanan sendiri.

Hal itu pula yang coba dipecahkan solusinya oleh HTML5 dengan memperkenalkan kemampuan penyimpanan data. Salah satu media penyimpanan lokal yang mendukung HTML5 adalah database SQLite. SQLite adalah database yang sudah tertanam dalam browser dimana dia menyediakan semua kemampuan ditetapkan dan terstruktur penyimpanan data. Sebagai media penyimpanan data yang tertanam di browser tidak memerlukan instalasi. Ukuran standar masing-masing database 5Mb dan dapat diperbesar dengan izin pengguna.

2.4.3 HTML5 Geolocation API

(36)

lintang dan bujur. HTML5 Geolocation API menemukan lokasi pengguna melalui GPS, menggunakan sinyal menara BTS terdekat atau menggunakan sumber-sumber lain seperti Alamat IP. (Mark Pilgrim, 2010)

2.5 Google Maps API

Saat ini Google Maps adalah layanan pemetaan berbasis web yang populer. Google Maps adalah layanan aplikasi dan teknologi peta berbasis web yang disediakan oleh Google secara gratis (bukan untuk kepentingan komersial), temasuk di dalamnya website Google Maps (http://maps.google.com), Google Ride Finder, Google Transit, dan peta yang dapat disisipkan pada website lain melalui Google Maps API.

Gambar 2.3 Logo Google Maps

Google Maps API adalah sebuah layanan yang disediakan untuk pengembang yang ingin memanfaatkan Google Maps untuk ditampilkan pada aplikasi. Google Maps API dapat ditambahkan ke dengan menggunakan JavaScript. API tersebut menyediakan banyak fasilitas dan utilitas untuk memanipulasi peta dan menambahkan konten ke peta melalui berbagai layanan, memungkinkan untuk membuat aplikasi berbasis geografis.

(37)

Seperti layanan aplikasi Google lainnya. Google Maps dibangun dengan menggunakan javascript, seperti ketika user menggeser pada peta, sepetak peta akan di-download dari server dan ditampilkan pada user tanpa harus memperbarui seluruh halaman web. Sebuah lokasi yang ditunjukkan dengan sebuah pin sebenarnya adalah berupa file PNG transparan yang diletakkan di atas peta. Teknik yang digunakan untuk memberikan interaktifitas yang tinggi dengan cara melakukan request secara asynchronous dengan Javascript dan XML yang juga dikenal dengan AJAX.

Versi terakhir dari Google Maps API adalah versi 3 akan tetapi JavaScript API yang digunakan mirip dengan versi sebelumnya. Versi 3 didesain lebih cepat, khusunya untuk mobile browser seperti Android dan iPhone.

Untuk mulai menggunakan Google Maps API terlebih dahulu harus mempunyai Google Maps API key dan untuk mendapatkannya harus mendaftarkan diri pada situs http://code.google.com/apis/maps/signup.html, tentunya terlebih dahulu harus mempunyai akun di Gmail.

2.5.1 Google Maps Dir ections

(38)

2.6 PHP Fr amewor k CodeIgniter

CodeIgniter adalah aplikasi open source yang berupa framework dengan

model MVC (Model, View, Controller) untuk membangun website dinamis dengan menggunakan PHP. CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat dan mudah dibandingkan dengan membuatnya dari awal. CodeIgniter dirilis pertama kali pada 28 Februari 2006. Versi terakhir adalah 2.1.0 dapat dilihat di situs resminya.

Gambar 2.4 Logo CodeIgniter

Sebelum membahas lebih jauh tentang salah satu framework PHP ini, mungkin kalian ada yang masih bingung apa itu Framework, apa itu VMC (Model, View, Controller).

Framework secara sederhana dapat diartikan kumpulan dari

fungsi-fungsi/prosedur-prosedur dan class-class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang pemrograman, tanpa harus membuat fungsi atau class dari awal.

Ada beberapa alasan mengapa menggunakan Framework:

a. Mempercepat dan mempermudah pembangunan sebuah aplikasi web. b. Relatif memudahkan dalam proses maintenance karena sudah ada pola

(39)

c. Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM,

pagination, multiple database, scaffolding, pengaturan session, error

handling, dll).

d. Lebih bebas dalam pengembangan jika dibandingkan CMS.

2.6.1 Konsep Model-View-Controller (MVC)

Model View Controller merupakan suatu konsep yang cukup populer

dalam pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk,

MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang

membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu:

a. View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model.

b. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.

c. Controller, merupakan bagian yang mengatur hubungan antara bagian

model dan bagian view, controller berfungsi untuk menerima request dan

(40)

Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara

programmer dan designer dalam menangani variabel-variabel yang akan

ditampilkan.

2.6.2 Kelebihan dar i CodeIgniter

Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP lain, diantaranya:

a. Performa sangat cepat : salah satu alasan tidak menggunakan framework adalah karena eksekusinya yang lebih lambat daripada PHP from the

scracth, tapi codeigniter sangat cepat bahkan mungkin bisa dibilang

codeigniter merupakan framework yang paling cepat dibanding framework

yang lain.

b. Konfigurasi yang sangat minim (nearly zero configuration) : tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standard, anda hanya perlu merubah sedikit saja file pada folder config.

(41)

d. Dokumentasi yang sangat lengkap : Setiap paket instalasi codeigniter sudah disertai user guide yang sangat bagus dan lengkap untuk dijadikan permulaan, bahasanya pun mudah dipahami.

(Supono, 2010)

2.7 MySQL

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL

(bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat

MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial

untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.

Gambar 2.5 Logo MySQL

Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius.

MySQL adalah sebuah implementasi dari sistem manajemen basisdata

(42)

(General Public License). Setiap pengguna dapat secara bebas menggunakan

MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan

produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya. SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.

Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basis data kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.

(43)

a. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.

b. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.

c. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.

d. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan

dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.

e. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.

f. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query). g. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level

subnetmask, nama host, dan izin akses user dengan sistem perizinan yang

mendetail serta sandi terenkripsi.

(44)

i. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).

j. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.

k. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).

l. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.

(45)

Bab ini menjelaskan mengenai analisis dan perancangan sistem yang dilakukan untuk membangun Aplikasi Mobile SOS Jamaah Haji Berbasis Web.

3.1 Analisis Sistem

Analisis bertujuan untuk mengidentifikasi permasalahan-permasalahan yang terdapat pada sistem dalam penelitian sebelumnya serta menentukan kebutuhan-kebutuhan dari sistem yang akan dibangun. Analisis ini dimaksudkan agar perangkat lunak yang dibangun tidak keluar dari cakupan sistem yang ada.

3.1.1 Ar sitektur Sistem

Dalam membangun aplikasi mobile SOS jamaah haji berbasis web agar nantinya dapat digunakan pada smartphone dengan berbagai macam jenis

platform, pengembangan aplikasi mobile SOS jamaah haji ini akan menggunakan

arsitektur sistem yang berbeda dari penelitian sebelumnya. Seperti yang telah dijelaskan pada bab sebelumnya, tentang penjelasan alur pada penelitian terdahulu, jika pada penelitian sebelumnya menggunakan platform Android maka pada pengembangan aplikasi ini akan menggunakan teknologi berbasis web dengan tujuan agar aplikasi mobile SOS jamaah haji ini dapat digunakan pada

smartphone dengan berbagai macam jenis platform.

Secara umum, rancangan arsitektur dari sistem aplikasi mobile SOS jamaah haji berbasis web yang akan dibuat adalah seperti gambar 3.1. Aplikasi tersimpan pada web server. Jamaah haji dan koordinator regu dapat mengakses aplikasi pada

(46)

Gambar 3.1 Arsitektur Sistem Aplikasi Mobile SOS Jamaah Haji Berbasis Web Apabila seorang jamaah haji merasa tersesat atau tertinggal dari rombongan regunya, jamaah dapat menekan tombol SOS yang terdapat pada aplikasi tersebut. Kemudian browser smartphones akan memanfaatkan fasilitas dari HTML5 yaitu Geolocation API untuk mendapatkan lokasi lintang dan bujur dari satelit. Untuk tampilan peta adalah bersumber dari request aplikasi kepada Google Maps Server dengan memanfaatkan Google Map API. Kemudian sebagai notifikasi pesan SOS dari jamaah haji kepada koordinator menggunakan SMS

Gateway yang sudah ter-install pada web server.

(47)

3.1.2 Analisis Fungsional

Analisis fungsional merupakan paparan mengenai fitur-fitur yang akan dimasukkan ke dalam Aplikasi Mobile SOS Jamaah Haji Berbasis Web. Fitur-fitur tersebut antara lain sebagai berikut:

a. Menu untuk jamaah haji menggunakan satu tombol yang mana bertujuan untuk memberikan kemudahan sesuai dengan terbatasnya pengetahuan tentang teknologi yang dimiliki oleh jamaah haji.

b. Menu untuk koordinator regu memiliki beberapa fungsi diantaranya, melihat peta jamaah tersesat, melihat data jamaah, mencari rute terpendek, dan mengubah status jamaah. Pengembangan fungsional aplikasi dari penelitian sebelmnya adalah pada tampilan lihat peta jamaah tersesat akan langsung memberikan tampilan berupa semua titik lokasi jamaah haji yang tersesat sekaligus.

c. Menu untuk administrator memiliki tugas untuk manajemen aplikasi diantaranya manajemen master data regu, master data koordinator, dan master data jamaah haji.

3.2 Perancangan Sistem

Dalam merancang sistem penilaian subyektif menggunakan diagram UML (Unified Modeling Langunge) yang terdiri dari 4 macam diagram yaitu diagram

use case untuk mengetahui aktor dan use case yang berperan dan hubungan antara

(48)

3.2.1 Use Case Diagram

Use case diagram digunakan untuk menggambarkan fungsionalitas yang

diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Aktor yang berperan dalam aplikasi mobile SOS berbasis web adalah sebagai berikut :

a. Jamaah Haji

Merupakan aktor yang berperan sebagai pengguna yang dapat memanfaatkan aplikasi ini untuk bisa mengirim lokasi koordinat saat dia tersesat.

b. Koordinator

Merupakan aktor yang berperan untuk mengawasi ada atau tidaknya jamaah haji yang menjadi anggota regunya yang tersesat.

c. Administrator

Merupakan aktor yang berperan untuk mengawasi dan mengelola data manajemen aplikasi.

Adapun use case diagram pada perancangan sistem dari aplikasi mobile SOS berbasis web adalah sebagai berikut.

3.2.1.1Use Case Diagram J amaah Haji

Use case diagram dari jamaah haji adalah tampak seperti pada gambar 3.2,

proses yang dapat dilakukan oleh jamaah haji adalah mengirim SOS. Pada use

case “mengirim sos” terdapat include untuk use case “update lokasi” dan use case

(49)

Gambar 3.2 Use Case Diagram Jamaah Haji

Dari Gambar 3.2 di atas dapat dijelaskan skenario dari aktor yang terlibat, nama use case yang dilakukannya, dan deskripsi use case dalam bentuk tabel sebagai berikut:

Tabel 3.1 Penjelasan Use Case Diagram Jamaah Haji Nama Use Case Aktor Deskr ipsi Use Case

Mengirim SOS Jamaah Haji Jamaah haji mengirim SOS

Update lokasi titik tersesat Jamaah Haji Jamaah haji mengirim data titik koordinat tempat jamaah tersesat Mengirim sms notifikasi Jamaah Haji Jamaah haji mengirim sms notifikasi

sebagai alert bahwa ia tersesat

(50)

3.2.1.2Use Case Diagram Koordinator

Use case diagram dari koordinator regu adalah tampak seperti pada

gambar 3.3.

Gambar 3.3 Use Case Diagram Koordinator

Proses yang dapat dilakukan oleh koordinator adalah melihat daftar jamaah tersesat, mencari rute terdekat, dan mengubah status jamaah. Pada use

case “lihat daftar jamaah tersesat” dapat memicu use case “mencari rute

terpendek” dan use case “mengubah status jamaah”. Use case “mengirim sms respon” akan di-include dalam use case “mencari rute terpendek”. Gambar 3.3 di atas dapat dijelaskan skenario dari aktor yang terlibat dalam bentuk tabel berikut:

Tabel 3.2 Penjelasan Use Case Diagram Koordinator

Nama Use Case Aktor Deskr ipsi Use Case

Lihat daftar jamaah tersesat Koordinator Koordinator dapat melihat semua posisi koordinat jamaah yang tersesat

(51)

Lanjutan Tabel 3.3 Penjelasan Use Case Diagram Administrator

Nama Use Case Aktor Deskr ipsi Use Case

Update status jamaah Koordinator Koordinator dapat mengubah status jamaah yang tersesat menjadi sudah tidak tersesat

Pada aktor koordinator terdapat tiga use case, diantaranya use case melihat daftar jamaah tersesat dengan maksud koordinator dapat melihat semua posisi koordinat jamaah yang tersesat. Kemudian use case mencari rute terdekat, koordinator dapat mencari rute terdekat menuju posisi koordinat jamaah yang tersesat. Terakhir adalah use case update status jamaah, koordinator dapat mengubah status jamaah yang tersesat menjadi sudah tidak tersesat.

3.2.1.3Use Case Diagram Administrator

Use case diagram dari administrator adalah sebagaimana tampak pada

gambar 3.4 di bawah ini.

Gambar 3.4 Use Case Diagram Administrator

(52)

“manajemen data koordinator”, dan use case “manajemen data jamaah”. Dari Gambar 3.4 dapat dijelaskan skenario dari aktor yang terlibat, nama use case yang dilakukannya, dan deskripsi use case dalam bentuk tabel sebagai berikut:

Tabel 3.3 Penjelasan Use Case Diagram Administrator Nama Use Case Aktor Deskr ipsi Use Case Melihat daftar jamaah

tersesat

Administrator Administrator dapat melihat semua posisi koordinat jamaah yang tersesat

Manajemen data regu Administrator Administrator dapat menambah, mengubah dan menghapus data regu

Manajemen data jamaah Administrator Administrator dapat menambah, mengubah dan menghapus data jamaah

Pada aktor administrator terdapat empat use case, diantaranya use case melihat daftar jamaah tersesat dengan maksud administrator dapat melihat semua posisi koordinat jamaah yang tersesat. Kemudian untuk use case manajemen data regu, administrator dapat menambah, mengubah dan menghapus data regu. Untuk

use case manajemen data koordinator, administrator dapat menambah, mengubah

(53)

3.2.2 Activity Diagr am

Activity Diagram merupakan suatu bentuk flow diagram yang

menggambarkan suatu proses dan urutan aktivitas sebuah proses. Activity diagram dipakai pada business modeling untuk memperlihatkan urutan aktivitas proses.

Berkaitan dengan use case diagram pada sub-bab sebelumnya, maka terdapat beberapa activity diagram yang dapat digambarkan, diantaranya adalah:

3.2.2.1Activity Diagr am Mengirim SOS

Activity Diagram Mengirim SOS ini merupakan alur kerja jamaah haji

untuk mengirim pesan bahwa ia sedang merasa tersesat. Pada gambar 3.5 berikut adalah activity diagram untuk use case “mengirim sos”.

Gambar 3.5 Activity Diagram Mengirim SOS

(54)

form SOS dan jamaah dapat menekan tombol SOS. Oleh sistem akan dilanjutkan

mencari titik koordinat lokasi tempat jamaah berada dengan memanfaatkan

geolocation. Setelah titik koordinat ditemukan maka sistem akan mengirim titik

koordinat dan mengirim sms notifikasi kepada koordinator regu.

3.2.2.2Activity Diagr am Lihat Peta J amaah Tersesat

Pada Gambar 3.6 berikut ini menjelaskan tentang Activity Diagram Lihat Daftar Jamaah Tersesat.

Gambar 3.6 Activity Diagram Lihat Daftar Jamaah Tersesat

(55)

jamaah haji tersesat. Koordinator dapat mencari rute terpendek menuju titik koordinat jamaah haji kemudian sistem akan mencari rute terpendek dan menampilkannya dalam bentuk peta rute terpendek. Setelah titik lokasinya ditemukan dan dilakukan penjemputan, koordinator dapat mengubah status tersesat jamaah.

3.2.2.3Activity Diagr am Manajemen Regu

Pada Gambar 3.7 berikut ini menjelaskan tentang Activity Diagram Manajemen Regu.

Gambar 3.7 Activity Diagram Manajemen Regu

(56)

selesai mengubah data, sistem akan validasi data hasil dari input-an administrator. Jika valid maka sistem akan menampilkan pesan sukses dan sebaliknya jika terdapat input-an yang tidak valid maka sistem akan menampilkan pesan error. Untuk menu menghapus data regu, ketika administrator menekan tombol hapus maka sistem akan melakukan validasi terhadap data yang akan dihapus, dan jika valid maka sistem akan menghapus data tersebut dari database.

3.2.2.4Activity Diagr am Manajemen Koordinator

Pada Gambar 3.8 berikut ini menjelaskan tentang Activity Diagram Manajemen Koordinator.

Gambar 3.8 Activity Diagram Manajemen Koordinator

(57)

dapat menekan tombol klik edit data dan sistem akan menampilkan form edit data koordinator. Saat administrator selesai mengubah data, sistem akan validasi data perubahan dari administrator. Jika valid maka sistem akan menampilkan pesan sukses dan sebaliknya jika terdapat perubahan yang tidak valid maka sistem akan menampilkan pesan error. Untuk hapus data koordinator, administrator dapat menekan tombol hapus dan sistem akan melakukan validasi terhadap data yang akan dihapus, dan jika valid maka sistem akan menghapus data tersebut.

3.2.2.5Activity Diagr am Manajemen J amaah

Pada Gambar 3.9 berikut ini menjelaskan tentang Activity Diagram Manajemen Jamaah.

Gambar 3.9 Activity Diagram Manajemen Jamaah

(58)

akan menampilkan pesan sukses. Untuk mengubah data jamaah, sistem akan menampilkan form edit data jamaah. Setelah administrator selesai mengubah data, sistem akan validasi data perubahan dari administrator. Jika valid maka sistem akan menampilkan pesan sukses dan jika terdapat perubahan yang tidak valid maka sistem akan menampilkan pesan error. Untuk hapus data jamaah, sistem akan melakukan validasi terhadap data yang akan dihapus, dan jika valid maka sistem akan menghapus data tersebut

3.2.3 Sequence Diagram

Data Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).

Sequence diagram biasa digunakan untuk menggambarkan skenario atau

rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. Berawal dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Sequence Diagram yang digambarkan dalam perancangan sistem dari adalah sebagai berikut :

3.2.3.1Sequence Diagram Mengirim SOS

Berikut adalah sequence diagram dari Mengirim SOS. Aktor yang berperan disini adalah jamaah haji. Objek yang terlibat diantaranya adalah objek

(59)

Gambar 3.10 Sequence Diagram Mengirim SOS

Proses dimulai saat Jamaah Haji membuka halaman utama aplikasi, kemudian Jamaah Haji menekan tombol SOS untuk kemudian objek

frmSOSTracking akan memanggil message dirinya sendiri untuk mendapatkan

lokasi koordinat dengan memanfaatkan Geolocation yang ada pada objek

frmSOSTracking. Kemudian hasil koordinat dikirim kepada objek Tracking untuk

kemudian dimasukkan kedalam database oleh objek TrackingModel. Selain itu saat proses update location ke database barjalan, Objek Tracking juga meminta

request kepada server untuk mengirim sms alert kepada Koordinator melalui sms gateway sebagai notifikasi bahwa terdapat jamaah yang sedang tersesat.

3.2.3.2Sequence Diagram Lihat Peta J amaah Ter sesat

Gambar 3.11 adalah sequence diagram dari Lihat Peta Jamaah Tersesat. Aktor yang berperan adalah Koordinator. Kemudian objek yang terlibat adalah objek frmTampilTracking sebagai boundary object, Tracking sebagai controller

(60)

Gambar 3.11 Sequence Diagram Lihat Peta Jamaah Tersesat

Proses dimulai saat Koordinator membuka halaman Tampil Peta Jamaah, objek frmTampilTracking akan mengirimkan request tampilan peta dan request data titik koordinat jamaah tersesat dalam bentuk data XML. Request tersebut akan dijalankan oleh objek Tracking untuk kemudian mengirimkan request data kepada database lewat objek TrackingModel. Kemudian hasilnya akan dikirimkan kembali melalui objek Tracking berupa tampilan peta beserta data titik koordinatnya dalam bentuk Marker di Google Maps.

Trigger selanjutnya terjadi apabila Koordinator meminta rute terpendek

antara koordinator berada menuju lokasi dari jamaah. Ketika objek

frmTampilTracking request rute, akan langsung diproses oleh objek Tracking

dengan menampilkan rute terpendek.

Proses selanjutnya yang mungkin terjadi adalah pada saat Koordinator ingin mengubah status jamaah yang tersesat menjadi tidak tersesat lagi. Objek

(61)

Tracking kepada objek entity TrackingModel untuk kemudian akan memproses

update database dan hasilnya akan dikembalikan sampai kepada tampilan browser.

3.2.3.3Sequence Diagram Manajemen Data Regu

Untuk manajemen Administrator, berikut adalah sequence diagram dari Manajemen Data Regu. Aktor yang berperan adalah Administrator. Kemudian objek yang terlibat adalah objek frmRegu sebagai boundary object, Regu sebagai

controller object, dan ReguModel sebagai entity object.

Gambar 3.12 Sequence Diagram Manajemen Data Regu

(62)

Administrator mengisi form dan mengirimnya, objek frmRegu akan melakukan validasi terhadap masukan dari Administrator. Jika valid maka data akan diteruskan kepada objek Regu untuk langung dihubungkan kepada ReguModel yang bertugas melakukan request masukan ke dalam database.

Untuk trigger edit data regu juga sama, dimulai saat Administrator request halaman form edit, Administrator mengubah data pada form, kemudian objek

frmRegu melakukan validasi masukan dari Administrator. Jika valid maka data

akan diteruskan oleh objek Regu untuk dikirim kepada ReguModel dan

ReguModel akan melakukan update database.

Trigger hapus data regu, jika ada request dari Administrator untuk

menghapus data regu, frmReg akan mengirim request data hapus kepada objek

Regu untuk dikirim kepada ReguModel dan ReguModel akan melakukan proses

hapus data pada database.

3.2.3.4Sequence Diagram Manajemen Data Koordinator

Pada manajemen data koordinator, berikut adalah sequence diagram dari Manajemen Data Koordinator. Aktor yang berperan adalah Administrator. Kemudian objek yang terlibat adalah objek frmTambahKoor sebagai boundary

object, Koordinator sebagai controller object, dan KoordinatorModel sebagai

entity object.

Proses trigger pada manajemen data koordinator adalah saat Administrator

request form tambah data, form edit data, dan request hapus data. Pada

masing-masing trigger tersebut proses awal request ditangani oleh objek

frmTambahKoor, kemudian melakukan validasi masukan dari Administrator. Jika

(63)

menghubungkan dengan objek entity yaitu KoordinatorModel untuk kemudian melakukan eksekusi request kepada database.

Gambar 3.13 Sequence Diagram Manajemen Data Koordinator

Untuk request hapus data, proses awal request ditangani oleh objek

hapusKoor kemudian akan dilanjutkan kepada objek Koordinator yang

menghubungkan dengan objek entity yaitu KoordinatorModel untuk kemudian melakukan eksekusi request kepada database.

3.2.3.5Sequence Diagram Manajemen Data J amaah

Pada manajemen data jamaah, berikut adalah sequence diagram dari Manajemen Data Jamaah. Aktor yang berperan tetap sama yaitu Administrator. Kemudian objek yang terlibat adalah objek frmJamaah sebagai boundary object,

(64)

Gambar 3.14 Sequence Diagram Manajemen Data Jamaah

Proses trigger pada manajemen data jamaah adalah saat Administrator

request form tambah data, form edit data, dan request hapus data. Pada

masing-masing trigger tersebut proses awal request ditangani oleh objek frmJamaah, kemudian melakukan validasi masukan dari Administrator. Jika valid maka request akan dilanjutkan kepada objek Jamaah yang menghubungkan dengan objek entity yaitu JamaahModel untuk kemudian melakukan eksekusi request kepada database.

3.2.4 Class Diagram

(65)

Gambar 3.15 Class Diagram

Diagram di atas menggambarkan class diagram yang ada pada sistem Aplikasi Mobile SOS Jamaah Haji Berbasis Web. Diantaranya adalah class Jamaah, Regu, Tracking, dan Koordinator. Class-class tersebut akan diimplementasikan dengan bahasa pemrograman PHP Framework CodeIgniter.

3.3 Perancangan Data

Perancangan data digunakan untuk membuat suatu struktur database yang dibutuhkan oleh sistem dan merupakan tahapan untuk memetakan model konseptual ke model basis data yang akan dipakai. Perancangan data akan dilakukan dengan tahap perancangan struktur tabel secara konseptual dan fisik.

3.3.1 CDM (Conceptual Data Model)

Gambar

Gambar 2.4 Logo CodeIgniter
Gambar 2.5 Logo MySQL
Gambar 3.1 Arsitektur Sistem Aplikasi Mobile SOS Jamaah Haji Berbasis Web
Tabel 3.3 Penjelasan Use Case Diagram Administrator
+7

Referensi

Dokumen terkait

pidana atau perdata, atas permintaan hakim sesuai dengan Hukum Acara Pidana dan Hukum Acara Perdata, Bupati dapat memberi izin tertulis kepada pejabat sebagaimana

Hal ini dapat dilihat dengan tidak adanya zona hambat yang terbentuk pada media bakteri sehingga aqua sebagai larutan kontrol tidak ada pengaruhnya terhadap larutan

Begitu juga menurut Pipit Novita Lestari Metode Demonstrasi yang digunakan dalam pembelajaran Fiqih di SMAYayasan pondok pesantren Nurul Huda sangatlah bagus sebab dengan

Penelitian ini bertujuan untuk (1) mendeskripsikan prosesi pertunjukan dalam kesenian sintren di Desa Paduraksa Kecamatan Pemalang Kabupaten Pemalang (2) menjelaskan makna

3) Kesepakatan para piha.k yang berselisih tersebut dinyatakan secara tertulis dalam surat perjanjian arbitrase, yang dibuat rangkap tiga (Pasal 32 ayat (2)). 4) Apabila para

Dengan menggunakan log dosis herbisida dan rata-rata persen kerusakan yang telah dirubah ke dalam nilai probit untuk setiap jenis gulma diketahui bahwa dosis

Hila saya tidak bisa tidur pada malam hari, biasanya orangtua: aa. menyuruh dan memaksn

Dosen dan Teknisi Jurusan Teknik Kimia Politeknik Negeri Sriwijaya Palembang yang selalu memberi bantuan dan dukungan kepada penulis sehingga laporan akhir