BAB IV
IMPLEMENTASI DAN PENGUJIAN
Bab ini menjelaskan mengenai implementasi dari prototype aplikasi pencarian lokasi rumah sakit BPJS berbasis android yang akan dibuat dan hasil pengujian terhadap aplikasi pada perangkat android. Pada bagian implementasi akan dibahas mengenai rancangan antarmuka aplikasi dan kode program yang akan diterapkan, sedangkan pengujian aplikasi menggunakan metode pengujian kotak hitam (black box testing). Metode pengujian ini dilakukan untuk mengetahui apakah aplikasi dapat berjalan sesuai yang diinginkan. 4.1
Implementasi Setelah sistem dianalisis dan didesain secara rinci, tahap selanjutnya
adalah implementasi. Implementasi sistem merupakan tahap meletakkan sistem sehingga siap untuk dioperasikan. Implementasi bertujuan untuk mengkonfirmasi modul-modul perancangan, sehingga pengguna dapat memberi masukan kepada pengembangan sistem. 4.1.1 Implementasi Basis Data Database terdapat pada server, database ini mempunyai 1 table, yaitu table tb_rumahsakit. Berikut merupakan SQL statement dari database ini. 1. SQL statement tb_rumahsakit CREATE TABLE IF NOT EXISTS `tb_rumahsakit` ( `id` int(11) NOT NULL, `nama_rs` varchar(50) NOT NULL, `alamat_rs` varchar(100) NOT NULL, `telepon_rs` varchar(15) NOT NULL, `latitude` double NOT NULL, `longitude` double NOT NULL,
49 http://digilib.mercubuana.ac.id/
50
`gambar` varchar(255) NOT NULL ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;
4.1.2
Implementasi Penulisan Kode Penulisan kode atau biasa disebut dalam bahasa inggris coding merupakan
bagian utama dalam pembuatan aplikasi ini. penulisan kode pada aplikasi ini menggunkan bahasa Javascript dan HTML5 sebagai penggunaan bahasa utamanya dengan editor Eclipse di running dengan menggunakan smartphone android, Sedangkan untuk database menggunakan MySQL acuannya adalah apakah aplikasi yang dibuat telah berjalan dengan seharusnya. Bila belum maka kode atau source code akan di perbaiki sampai di dapatkan aplikasi yang berjalan dan berfungsi dengan baik. Pada bagian ini akan dijabarkan penulisan kode dari aplikasi ini secara rinci. 4.1.2.1 Penulisan Kode Pada Halaman Menu Kode pada halaman menu merupakan tampilan awal setelah user membuka aplikasi. Pada halaman ini terdapat gambar marker, lima buah listview, header dan footer. Ketika salah satu Listview pada halaman menu aplikasi di tekan maka akan mengarahkan aplikasi ke halaman yang ditekan oleh user.
Berikut adalah tampilan halaman menu:
Gambar 4.1 Halaman Menu 4.1.2.2 Penulisan Kode Pada Halaman Rumah Sakit Terdekat Kode pada halaman rumah sakit terdekat merupakan tampilan map setelah user menekan rumah sakit terdekat pada halaman menu. Pada halaman ini terdapat map, marker posisi user, menampilkan marker rumah sakit mana saja yang
http://digilib.mercubuana.ac.id/
52
terdekat, tombol kembali, header dan footer. Ketika salah satu marker rumah sakit pada halaman rumah sakit terdekat di tekan maka akan menampilkan window nama rumah sakit dan terdapat tombol kembali untuk ke halaman sebelumnya.
Pada halaman ini terdapat kode untuk menghitung jarak dengan menggunakan rumus haversine untuk mengetahui rumah sakit terdekat dengan posisi pengguna dimana latitude/longitude rumah sakit didapat dari server dan latitude/longitude posisi pengguna didapat dengan menggunakan GPS pada handphone. Berikut adalah potongan kodenya: if (typeof(Number.prototype.toRad) === "undefined") { Number.prototype.toRad = function() { return this * Math.PI / 180; } } var lat2 = parseFloat(loaddata.latitude); var lon2 = parseFloat(loaddata.longitude); var lat1 = position.coords.latitude; var lon1 = position.coords.longitude; var R = 6371; // metres
http://digilib.mercubuana.ac.id/
53
var dlat1 = lat1.toRad(); var dlat2 = lat2.toRad(); var slat = (lat2-lat1).toRad(); var slon = (lon2-lon1).toRad(); var a = Math.sin(slat/2) * Math.sin(slat/2) + Math.cos(dlat1) * Math.cos(dlat2) * Math.sin(slon/2) * Math.sin(slon/2); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); var d = R * c;
Berikut adalah tampilan halaman rumas sakit terdekat:
Gambar 4.2 Halaman rumah sakit terdekat 4.1.2.3 Penulisan Kode Pada Halaman Daftar Rumah Sakit Kode pada halaman daftar rumah sakit merupakan tampilan listview nama dan gambar rumah sakit yang diambil dari server berupa JSON setelah user menekan cari rumah sakit pada halaman menu. Pada halaman ini terdapat lisview nama dan rumah sakit, textbox cari rumah sakit, header dan footer. Ketika salah
http://digilib.mercubuana.ac.id/
54
satu listview rumah sakit pada halaman daftar rumah sakit di tekan maka akan mengarahkan user ke halaman info rumah sakit dan terdapat tombol kembali untuk ke halaman sebelumnya.
Pada halaman ini terdepat kode untuk mengambil data JSON pada web server dan menampilkan pada android PhoneGap. Berikut potongan kode tersebut: function getlistrs() { $.getJSON(url + 'pilihrs.php', function(data) { var listrs = data.items; $.each(listrs, function(index, loaddata) { $('#RsList').append('
href="detailrute.html?id='
loaddata.id + 'data-transition="flip" rel="external">' + '' + loaddata.nama_rs + '
'); }); $('#RsList').listview('refresh'); }); }
http://digilib.mercubuana.ac.id/
+
55
Berikut adalah tampilan halaman daftar rumah sakit:
Gambar 4.3 Halaman Cari Rumah Sakit 4.1.2.4 Penulisan Kode Pada Halaman Info Rumah Sakit Kode pada halaman info rumah sakit merupakan tampilan detail rumah sakit yang diambil dari server berupa JSON berdasarkan id setelah user menekan salah satu rumah sakit pada halaman daftar rumah sakit. Pada halaman ini terdapat informasi gambar, nama, alamat, telepon, latitude/longitude, tombol panggil, tombol lihat rute header dan footer. Terdapat tombol lihat rute. Jika user menekan tombol panggil maka akan mengarahkan user ke menu panggilan. Jika user menekan tombol lihat rute maka akan mengarahkan user ke halaman rute rumah sakit dan terdapat tombol kembali untuk ke halaman sebelumnya.
id="gambarRS"
http://digilib.mercubuana.ac.id/
style="height:150px;
56
width:230px;"/>
data-role="listview"
data-inset="true"
data-theme="d"
data-
dividertheme="d">
Pada halaman ini terdapat kode untuk mengambil data rumah sakit berdasarkan rumah sakit yang dipilih dan akan menampilkan info rumah sakit dan di tampilkan dalam bentuk listview. Berikut potongan kode tersebut: function getdetailrs() { $.getJSON(url + 'ambildetailrs.php?id='+id, function(data) { loaddetailrs = data.items; console.log(loaddetailrs); $('#gambarRS').attr('src',
'http://bpjs-data.hol.es/gambar/'
+loaddetailrs.gambar); $('#namaRS').text('Nama : '+loaddetailrs.nama_rs); $('#alamatRS').text('Alamat : '+loaddetailrs.alamat_rs); $('#teleponRS').text('Telepon : '+loaddetailrs.telepon_rs); $('#latRS').text('Latitude : '+loaddetailrs.latitude);
http://digilib.mercubuana.ac.id/
57
$('#lngRS').text('Longitude : '+loaddetailrs.longitude); }); }
Berikut adalah tampilan halaman info rumah sakit:
Gambar 4.4 Halaman detail rumah sakit 4.1.2.5 Penulisan Kode Pada Halaman Rute Rumah Sakit Kode pada halaman Rute rumah sakit merupakan tampilan map dan informasi rute menuju rumah sakit setelah user menekan tombol lihat rute pada halaman info rumah sakit. Pada halaman ini terdapat marker rute dari posisi user sampai tujuan, informasi rute jalan, header dan footer. Ketika salah satu marker atau informasi rute pada halaman rute rumah sakit di tekan maka akan menampilkan window pada map alamat tersebut dan terdapat tombol kembali untuk ke halaman sebelumnya.
http://digilib.mercubuana.ac.id/
58
KembaliRute
© Copyright 2015
Pada halaman ini terdepat kode untuk menampilkan informasi rute dan jalan menuju rumah sakit yang dipilih sebelumnya. Kode ini memanfaatkan Google Map API untuk mendapatkan data-data informasi jalan dan map. Berikut potongan kode tersebut: var posisi = position.coords.latitude + ',' + position.coords.longitude; var tujuan = new google.maps.LatLng(loaddata.latitude, loaddata.longitude); var request = { origin:posisi, destination:tujuan, travelMode: google.maps.DirectionsTravelMode.DRIVING }; directionsService.route(request, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); } });
Berikut adalah tampilan halaman rute rumah sakit:
http://digilib.mercubuana.ac.id/
59
Gambar 4.5 Halaman rute 4.1.2.6 Penulisan Kode Pada Halaman Bantuan Kode pada halaman bantuan merupakan tampilan informasi bantuan bagaimana menggunakan aplikasi ini, setelah user menekan lisview bantuan. Pada halaman ini terdapat gambar , text, tombol kembali, header dan footer. Menampilkan informasi bantuan dalam menggunakan aplikasi dan terdapat tombol kembali untuk ke halaman sebelumnya.
http://digilib.mercubuana.ac.id/
60
Berikut adalah tampilan halaman bantuan:
Gambar 4.6 Halaman bantuan 4.1.2.7 Penulisan Kode Pada Halaman Tentang Kode pada halaman Tentang merupakan tampilan profil aplikasi, setelah user menekan lisview tentang. Pada halaman ini terdapat gambar , text, tombol kembali, header dan footer. Menampilkan profil aplikasi dan terdapat tombol kembali untuk ke halaman sebelumnya.
© Copyright 2015
http://digilib.mercubuana.ac.id/
62
Berikut adalah tampilan halaman tentang:
Gambar 4.7 halaman tentang 4.2
Pengujian Fungsionalitas Proses pengujian ini di lakukan dengan cara install aplikasi pada device.
Dalam hal ini penulis akan menggunakan metode pengujian aplikasi blackbox. Untuk melihat apakah fungsi-fungsi pada aplikasi berjalan dengan baik atau tidak dan juga mengetahui di bagian mana saja terdapat kesalahan pada aplikasi ini untuk segera dapat di perbaiki oleh penulis. 4.2.1
Lingkungan Pengujian Aplikasi Pencarian lokasi Rumah Sakit berfasilitas BPJS ini diuji
menggunakan Smartphone Android. Spesifikasi Android:
ASUS Zenfone 4
Display – 480 x 800 pixels
Memory Internal – 8GB
RAM – 1GB
http://digilib.mercubuana.ac.id/
63
4.2.2
CPU – Dual_core 1.2GHz
Chipset – Intel Atom Z2520
OS – Android Jelly Bean v4.3
Skenario Pengujian Pengujian aplikasi ini dilakukan menggunakan SmartPhone ASUS
Zenfone 4. Item yang diuji antara lain: Tabel 4.1 Skenario Pengujian Aplikasi No
Nama Tes
Sifat Kegiatan
Hasil Yang diharapkan
1.
Masuk halaman menu
Normal
Menampilkan halaman menu
2.
Memilih rumah sakit Normal
Menampilkan halaman map
terdekat
rumah sakit terdekat Tidak normal
3.
Memilih
cari
rumah Normal
sakit 4
Menampilkan alert Menampilkan halaman daftar rumah sakit
Memilih rumah sakit
Tidak normal
Menampilkan alert
Normal
Menampilkan halaman info rumah sakit
5.
Memilih lihat rute
Tidak normal
Menampilkan alert
Normal
Menampilkan halaman map informasi rute
6.
Memilih bantuan
Tidak normal
Menampilkan alert
Normal
Menampilkan
halaman
bantuan 7.
Memilih tentang
Normal
Menampilkan
halaman
tentang 8. 9.
Kembali ke halaman Normal
Menampilkan
sebelumnya
sebelumnya
Memilih keluar aplikasi
Normal
Keluar aplikasi
http://digilib.mercubuana.ac.id/
halaman
64
4.2.3
Hasil Pengujian
Tabel 4.2 Hasil Pengujian Aplikasi No 1. 2.
Nama Tes
Sifat
Hasil
Kegiatan
diharapkan
Masuk halaman Normal
Menampilkan
menu
halaman menu
Memilih
rumah Normal
sakit terdekat
Yang Hasil Pengujian Sesuai
Menampilkan
Sesuai
halaman map rumah sakit terdekat Tidak
Menampilkan alert
Sesuai
Menampilkan
Sesuai
normal 3.
Memilih
cari Normal
rumah sakit
halaman daftar rumah sakit Tidak
Menampilkan alert
Sesuai
Menampilkan
Sesuai
normal 4
Memilih
rumah Normal
sakit
halaman detail rumah sakit Tidak
Menampilkan alert
Sesuai
Menampilkan
Sesuai
normal 5.
Memilih
lihat Normal
rute
halaman
map
informasi rute Tidak
Menampilkan alert
Sesuai
Menampilkan
Sesuai
normal 6.
Memilih bantuan
Normal
halaman bantuan
http://digilib.mercubuana.ac.id/
65
Lanjutan Tabel 4.2 7.
Memilih tentang
Normal
Menampilkan
Sesuai
halaman tentang 8.
Kembali
ke Normal
halaman
Menampilkan
Sesuai
halaman sebelumnya
sebelumnya 9.
Memilih
keluar Normal
Keluar aplikasi
Sesuai
aplikasi
4.3
Analisis Hasil Pengujian Setelah tahap pengujian blackbox diatas terhadap semua fungsi pada
Aplikasi pencarian lokasi rumah sakit BPJS berbasis android yang sudah dijalankan, maka dapat disimpulkan: 1. Aplikasi berjalan baik pada Android karena pada saat pembuatan penulis menggunakan smartphone android untuk mengetahui error dan yang lainnya. 2. Fungsi-fungsi pada aplikasi berjalan dengan baik seperti, mengambil data JSON pada web server, menampilkan map rumah sakit terdekat dengan jarak masing-masing rumah sakit dari posisi pengguna, menampilkan map rute menuju rumah sakit dari posisi pengguna dan menampilkan informasi rute. 3. Aplikasi membutuhkan waktu untuk mengakses data rumah sakit dan map karena membutuhkan koneksi internet.
http://digilib.mercubuana.ac.id/
66
http://digilib.mercubuana.ac.id/