Fakultas Ilmu Komputer
Universitas Brawijaya 2017
Pengembangan Perangkat Lunak Aplikasi Monitoring Klimatologi
Menggunakan Metode RESTful Web service Berbasis Android
(Studi Kasus : Stasiun Klimatologi Karangploso Malang)
Faisal Roufa Rohman1, Arief Andy Soebroto2, Agi Putra Kharisma3Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email : 1faisalroufa@gmail.com , 2ariefas@ub.ac.id , 3agi@ub.ac.id
Abstrak
Monitoring iklim dilakukan dengan menggunakan peralatan canggih yang berfungsi untuk mencatat perubahan data-data yang diamati. Stasiun Klimatologi Karangploso Malang merupakan salah satu stasiun BMKG yang bertugas untuk mencatat data-data bidang Klimatologi. Variabel-variabel yang diamati antara lain curah hujan, suhu, kecepatan angin, kelembaban. Data variabel tersebut dikirim ke server dari alat pencatat kemudian diolah dan ditampilkan pada aplikasi berbasis desktop dan web. Aplikasi berbasis desktop saat ini belum bisa diakses dari luar kantor. Aplikasi berbasis web atau mobile/bergerak dapat digunakan sebagai alternatif agar data BMKG dapat diakses dari luar. Aplikasi yang dipilih adalah aplikasi berbasis mobile karena lebih cepat untuk mengakses data iklim. Aplikasi mobile tersebut mendapatkan data klimatologi dengan merequest data dari web service yang menggunakan metode RESTful. Data tersebut ditampilkan berupa tabel dan chart pada sisi client. Berdasarkan hasil perancangan pada skripsi ini didapat 3 kebutuhan fungsional dan 3 kebutuhan non fungsional. Berdasarkan pengujian dapat disimpulkan bahwa pegembangan aplikasi perangkat lunak monitoring klimatologi menggunakan metode RESTful web service berbasis android ini telah memenuhi kriteria sesuai dengan perancangan.
Kata kunci : android, klimatologi, Representational State Transfer(REST), RESTful, web service Abstract
Climate Monitoring is done by using sophisticated instruments that have a function to record the changing climate data. Karangploso Malang climate station is one of the station that records climate data. Variables that have been monitored such as rainfall, temperature, wind speed, and humidity. The data then sent to the Server then get processed and displayed to desktop based application and web. Desktop based application right now can’t be accessed from outside the office. Web based application or mobile application can be use as alternatives so BMKG data can be accessed outside. The application that was choosed is mobile based application because it can access the climate data more faster. The mobile application get the climate data by requesting the data from a web service that use RESTful method. The data then representated in table and chart on client side. Based on design result in this research, obtained 3 functional requirements and 3 non functional requirements. Based on testing result, it is concluded that the development of software application for climate monitoring using RESTful web service method in android is meet the requirement of the design.
Key words : Android, Climatology, Representational State Transfer(REST), RESTTful, web service
PENDAHULUAN
Klimatologi merupakan ilmu yang mempelajari tentang jenis iklim dan penyebabnya (Tjasyono, 1999). Monitoring iklim dilakukan menggunakan peralatan canggih yang berfungsi untuk mencatat perubahan
data-data yang diamati. Stasiun Klimatologi Karangploso Malang merupakan salah satu stasiun BMKG yang bertugas untuk mencatat data-data bidang klimatologi. Variabel-variabel yang diamati antara lain curah hujan, suhu, kecepatan angin, kelembaban. Data variabel tersebut dikirim ke Server dari alat pencatat
kemudian diolah dan ditampilkan menggunakan aplikasi desktop atau website. Akan tetapi desktop memiliki kelemahan yaitu tidak dapat melihat data iklim jika tidak menggunakan komputer. Sehingga apabila petugas berada di luar ruangan maka akan kesulitan untuk melihat data iklim. Website dapat diakses menggunakan browser di smartphone, akan tetapi data yang ditampilkan tidak selengkap di dekstop. Sehingga untuk memenuhi kebutuhan diatas, maka dibutuhkan sebuah aplikasi yang dapat diakses menggunakan smartphone serta dapat menampilkan data yang lengkap sehingga mempermudah petugas dalam hal monitoring data iklim.
Seiring berkembangnya teknologi, penggunaan perangkat mobile meningkat pesat di Indonesia terutama untuk jenis smartphone. Survey yang dilakukan oleh Baidu, dari sekian jenis perangkat mobile, smartphone merupakan perangkat mobile paling banyak digunakan untuk mengakses internet yaitu 60% dan 87% diantaranya merupakan smartphone yang menggunakan OS Android (Baidu Indonesia, 2014). Kecepatan akses internet di Indonesia berkisar 2,4 Mbps (Akamai Technologies,Inc, 2014) dengan page load untuk desktop 20,3 detik dan jika menggunakan perangkat mobile sekitar 12,9 detik (Ruth, 2013). Dengan hasil tersebut maka perangkat mobile memiliki keunggulan dari sisi kecepatan dan kepraktisan. Sehingga solusi pengembangan perangkat lunak untuk bandwidth yang kecil dan juga kecepatan aksesnya lebih cepat yaitu menggunakan mobile application dan web service.
Server mengirimkan data ke Client membutuhkan suatu mekanisme, salah satunya adalah menggunakan mekanisme web service. Web service adalah teknologi yang mengubah kemampuan internet dengan menambahkan kemampuan transactional web, yaitu kemampuan web untuk saling berkomunikasi dengan pola program-to- program (P2P) (Deviana, 2011). Web service bekerja ketika user me-request suatu fungsi pada Server dan kemudian Server melakukan perintah sesuai dengan layanan yang diinginkan user. Dua arsitektur yang mendukung teknologi web service dalam pengirim data web service yaitu antara lain Simple Object Access Protocol(SOAP) dan Representational State Transfer(REST). SOAP merupakan web service
data dan HTTP sebagai protokol pengiriman data. REST merupakan architectural design untuk distributed hypermedia system dan untuk mengidentifikasi resource, REST menggunakan Uniform Resource Identifier(URI) (Belqasmi, et al., 2012)].
Tujuan dari pengunaan web service adalah Client yang menggunakan pelbagai macam platform baik itu desktop, website, mobile apps dapat mengakses layanan yang berada di web service. Selain itu penggunaan data seminimal mungkin dan kecepatan akses yang singkat merupakan tujuan lain dari penggunan web service. Menurut penelitian yang dilakukan oleh Dudhe dan Sherekar, metode RESTful memiliki keunggulan pada requested data yang lebih kecil dibandingkan metode SOAP. Requested size data yang lebih kecil memungkinkan transmission time yang lebih singkat, konsumsi daya lebih rendah dan web service yang lebih cepat dibanding dengan SOAP (Dudhe & Sherekar, 2014). Penggunaan data yang minimal menjadikan RESTful web service memiliki kompabilitas yang tinggi dengan platform mobile.
Penelitian yang menggunakan RESTful web service yaitu “Rancang Bangun Restful Web service Untuk Optimalisasi Kecepatan Akses Studi Kasus Aplikasi Sistem Pakar Berbasis Web” membahas tentang optimasi system pakar perawatan cabai berbasis web menggunakan metode restful (Luthfillah, 2014). Penelitian lain dengan judul “A Framework for Environmental monitoring with Arduino-based Sensors using Restful Web service” membahas tentang perancangan arsitektur yang dapat mengoleksi berbagai data dari berbagai sensor, kemudian
menyimpannya dalam database dan
menampilkannya pada user interface. Penelitian ini menggunakan sensor arduino untuk mencatat data dan restful untuk berkomunikasi dengan sensor arduino (Lee, et al., 2014).
Penelitian ini bertujuan untuk menerapkan metode RESTful web service pada studi kasus data klimatologi. Data klimatologi disimpan pada sisi Server dan diakses menggunakan metode REST oleh Client. Sisi Client dibangun dengan menggunakan Operating System Android merupakan OS yang dikembangkan oleh Google untuk platform mobile. Android memiliki keunggulan yaitu diklaim sebagai OS dengan pengguna terbanyak di dunia, sehingga
dikembangkan dengan menggunakan bahasa pemrograman java sehingga disebut native android. Hasil yang diharapkan dari penelitian ini adalah pengembangan aplikasi yang lebih efektif, efisien dan praktis dalam hal monitoring klimatologi.
METODOLOGI
Pengembangan aplikasi monitoring klimatologi menggunakan metode RESTful web service dan android. RESTful web service digunakan sebagai server untuk melayani data request sedangakan android digunakan sebagai client untuk menampilkan data.
2.1. Studi literatur
Mempelajari ilmu-ilmu yang berkaitan dengan pengembangan aplikasi menggunakan android dan RESTful web service diantaranya:
1. Representational State Transfer(REST) 2. Java
3. Pengujian aplikasi
4. Berbagai paper, jurnal dan buku yang terkait dengan REST API
Literatur tersebut dipaparkan dalam bentuk paper, jurnal, dan buku.
2.2. Analisis kebutuhan sistem
Analisis kebutuhan merupakan proses untuk menentukan kebutuhan apa saja yang dibutuhkan oleh sistem.
Aplikasi mobile dipilih karena dapat mengakses data klimatologi dengan cepat. Tidak perlu membuka browser untuk mengakses halaman untuk data klimatologi. Transmisi data yang diperlukan juga lebih sedikit karena yang direquest hanya data klimatologi bukan seluruh page seperti web. Data yang ditampilkan di aplikasi mobile lebih lengkap dibanding di web karena hanya menampilkan data rata-rata perhari.. Kebutuhan tersebut yaitu:
1. Kebutuhan fungsional, yang
merupakakan tujuan dikembangkannya sistem.
2. Kebutuhan non fungsional, yang merupakan ukuran performa dari sistem. 2.3. Perancangan
Perancangan aplikasi Monitoring klimatologi ini memiliki dua tahapan, yaitu analisis kebutuhan perangkat lunak dan perancangan perangkat lunak.
Gambar 1. Pohon Perancangan
Sistem yang akan dibangun memiliki dua sisi, yaitu sisi Client dan sisi Server. Pada sisi Server sebagai sisi yang menyediakan data klimatologi untuk dikirimkan pada Client. Sisi Server menggunakan RESTfull webservice dan akan dibangun menggunakan php dan framework codeigniter.
REST Server terdiri dari dua bagian, yaitu model, controller. Controller berfungsi untuk menerima request dari Client juga untuk mengatur alur dari data. Model berfungsi untuk mengambil data dari database. Webservice tidak menggunakan tampilan User interface karena berfokus pada layanan. Client merupakan aplikasi yang langsung terhubung dengan user. Client menggunakan User interface sebagai perantara untuk berkomunikasi antara User dan Server.
Gambar 2. Hubungan rest web service dengan Client Alur komunikasi antara Client dengan Server akan sebagai berikut :
1) User memasukkan waktu awal dan waktu akhir dari klimatologi untuk melihat besar variabel.
2) Hasil input waktu oleh klien dirubah menjadi string.
CLIENT
CONTROLLER MODEL
JSON ENCODE REQUEST URI
WAKTU AWAL dan WAKTU AKHIR
Respon server Data hasil berupa JSON
DATABASE
3) Client mengirimkan input ke Server menggunakan HTTP dengan method GET 4) Input diterima oleh Server.
5) Server mengambil data dari database sesuai dengan input dari Client.
6) Hasil data klimatologi di-encode menjadi JSON.
7) JSON dikembalikan kepada Client sebagai respon.
8) Client menangkap respon JSON dan melakukan decode.
9) Hasil decode data klimatologi ditampilkan pada user interface Client.
Use Case Diagram
Pada sistem ini pengguna adalah petugas BMKG. Petugas dapat melakukan tiga kegiatan yaitu login, monitoring, dan log out.
Gambar 3. Use case diagram 2.4. Implementasi
Implementasi merupakan tahapan untuk membangun aplikasi monitoring klimatologi. Implementasi antarmuka login
Gambar 4. Antarmuka login
Pada bagian ini petugas memasukkan username dan password pada masing masing kolom. Setelah memasukkan data tersebut kemudian User menekan tombol Login. Setelah menekan tombol Login, system akan
Implementasi antarmuka monitoring
Gambar 5. Antarmuka monitoring
Pada bagian ini, petugas memasukkan tanggal awal, tanggal akhir, jam awal, jam akhir dengan menekan tombol pada masing-masing parameter.
Gambar 6. Antarmuka Tabel klimatologi
Gambar 7. Antarmuka Chart klimatologi Implementasi antarmuka log out
Antarmuka ini berfungsi untuk keluar dari aplikasi.
uc Use Case Model
Si stem Petugas Login Monitoring Logout «Pre-condition» {Petugas sudah l ogi n}
«Pre-condition» {Petugas sudah l ogi n}
Pengguna memilih menu log out dengan menggeser tepi kiri aplikasi. Kemudian menekan button log out. Kemudian akan keluar tampilan konfirmasi untuk keluar.
Gambar 9. Antarmuka konfirmasi log out HASIL DAN PEMBAHASAN
Dari hasil implementasi pada sistem aplikasi monitoring klimatologi menggunakan metode RESTful web service berbasis android maka dilakukan pengujian blackbox, availability, response time dan ukuran data.
3.1 Pengujian black box
Pada pengujian black box terdapat 8 kasus uji untuk kebutuhan fungsional.
Tabel 1. Tabel Pengujian black box
nama kasus uji hasil yang diharapkan hasil yang diperoleh validitas Kasus Uji login Penguji dapat masuk ke dalam halaman monitoring Penguji dapat masuk ke dalam halaman monitoring Valid Kasus Uji login username salah password benar Penguji tidak dapat login Penguji tidak dapat login Valid Kasus Uji username benar password salah Penguji tidak dapat login Penguji tidak dapat login Valid Kasus Uji username salah password salah Penguji tidak dapat login Penguji tidak dapat login Valid Kasus Uji monitoring Sistem dapat menampilkan data klimatologi sesuai tanggal dan jam yang telah ditentukan Sistem dapat menampilkan data klimatologi sesuai tanggal dan jam yang telah ditentukan Valid Kasus Uji monitoring Tanggal akhir lebih awal Sistem tidak dapat menampilkan data klimatologi Sistem tidak dapat menampilkan data klimatologi Valid Kasus Uji monitoring Jam akhir lebih awal Sistem tidak dapat menampilkan data klimatologi Sistem tidak dapat menampilkan data klimatologi Valid
Kasus Uji log out Sistem menghapus session Penguji dan kembali ke layar login Sistem menghapus session Penguji dan kembali ke layar login Valid
Analisis dari pengujian didapat 8 kasus uji. Setelah dilakukan pengujian pada kasus uji tersebut didapat hasil 8 kasus uji berjalan sesuai dengan harapan dengan tingkat keberhasilan sebesar 100%. Dengan begitu kebutuhan fungsional dari spesifikasi perancangan telah terpenuhi.
Pengujian availability
Pengujian ini bertujuan untuk mengukur ketersedian server API untuk data klimatologi.
Pengujian menggunakan website
contentsitemonitor.com. Pengujian dilakukan pada tanggal 28-05-2017 Jam 16:16 sampai dengan tanggal 05-06-2017 Jam 05:25.
Tabel 2. Tabel Pengujian Availability
no waktu status 1 5/28/2017 4:16 PM OK 2 5/28/2017 5:16 PM OK 3 5/28/2017 6:17 PM OK 4 5/28/2017 7:22 PM OK 5 5/28/2017 8:26 PM OK 6 5/28/2017 9:26 PM OK 7 5/28/2017 10:26 PM OK 8 5/28/2017 11:27 PM OK 9 5/29/2017 12:29 AM OK 10 5/29/2017 1:32 AM OK
11 5/29/2017 2:37 AM OK 12 5/29/2017 3:43 AM OK 13 5/29/2017 4:47 AM OK 14 5/29/2017 5:52 AM OK 15 5/29/2017 7:03 AM OK 16 5/29/2017 8:08 AM OK 17 5/29/2017 9:11 AM OK 18 5/29/2017 10:14 AM OK 19 5/29/2017 11:15 AM OK 20 5/29/2017 12:17 PM OK
Analisis dari Pengujian ini
menghasilkan 174 data uji. Dari hasil pegujian diketahui bahwa Server API faisalroufa.com tersedia sebanyak 174 kali. Dengan begitu Server API tersedia 100%. Hasil ini menunjukkan bahwa kebutuhan non fungsional availability dari spesifikasi perancangan telah telah memenuhi spesifikasi perancangan. Pengujian response time
Pengujian response time bertujuan untuk mengukur kecepatan response dari server. Pengujian menggunakan advanced REST client.
Tabel 3. Tabel pengujian response time
kasus uji date time date time2 hasil waktu 1 21/06/2014 14:00 21/07/2014 14:00 523ms 2 22/06/2014 14:00 22/07/2014 14:00 164ms 3 23/06/2014 14:00 23/07/2014 14:00 243ms 4 24/06/2014 14:00 24/07/2014 14:00 256ms 5 25/06/2014 14:00 25/07/2014 14:00 275ms 6 26/06/2014 14:00 26/08/2014 14:00 586ms 7 27/06/2014 14:00 27/08/2014 14:00 398ms 8 28/06/2014 14:00 28/12/2014 14:00 403ms 9 29/06/2014 14:00 29/12/2014 14:00 374ms 10 30/06/2014 14:00 30/12/2014 14:00 380ms
Analisis dari pengujian didapat 10 kasus uji. Setelah dilakukan pengujian pada 10 kasus uji tersebut didapat hasil 10 kasus uji sesuai dengan harapan dengan tingkat keberhasilan uji sebesar 100%. Dengan hasil ini maka kebutuhan non fungsional response time telah memenuhi spesifikasi perancangan.
Pengujian ukuran data
Pengujian ukuran data bertujuan untuk menguji seberapa besar data yang dikirimkan oleh server. Pengujian menggunakan advanced REST client dengan request sebanyak 100 data. Target pengujian adalah 100Kb per 100 baris data.
Tabel 4. Tabel pengujian ukuran data
kasus uji
date 1 date2 hasil
1 21/06/2014 15:39 27/06/2014 17:00 19396Bytes 2 27/06/2014 19:00 05/07/2014 1:00 19628Bytes 3 05/07/2014 2:00 09/07/2014 12:00 20186Bytes 4 09/07/2014 13:00 13/07/2014 16:00 20179Bytes 5 13/07/2014 17:00 17/07/2014 22:00 20180Bytes 6 17/07/2014 23:00 22/07/2014 3:00 20179Bytes 7 22/07/2014 4:00 26/07/2014 8:00 20185Bytes 8 26/07/2014 9:00 03/08/2014 8:00 20176Bytes 9 03/08/2014 9:00 07/08/2014 13:00 20174Bytes 10 07/08/2014 14:00 11/08/2014 18:00 20179Bytes
Analisis dari pengujian didapat 10 kasus uji. Setelah dilakukan pengujian pada 10 kasus uji tersebut didapat hasil 10 kasus uji sesuai dengan harapan dengan tingkat keberhasilan 100%. Dengan hasil ini maka kebutuhan non fungsional ukuran data telah memenuhi spesifikasi perancangan.
KESIMPULAN
Kesimpulan dari penelitian yang telah dilakukan untuk pengembangan perangkat unak aplikasi Monitoring klimatologi menggunakan metode RESTful Web service Berbasis Android adalah sebagai berikut :
1. Pada perancangan perangkat lunak aplikasi Monitoring klimatologi berbasis android menggunkan metode RESTful web service terdapat 6 kebutuhan sistem yang terdiri dari 3 kebutuhan fungsional dan 3 kebutuhan non fungsional. Aplikasi Monitoring klimatologi yang telah berhasil dibuat terdiri dari 3 fitur yaitu Login yang berfungsi untuk mengautentikasi petugas, Monitoring yang berfungsi untuk melihat data klimatologi yang berada di Server, dan log out yang
2. Berdasarkan pengujian black box yang dilakukan, terdapat total 8 kasus uji terhadap aplikasi Monitoring klimatologi dan didapat tingkat keberhasilan sebesar 100%. Sedangkan pada pengujian kebutuhan non fungional, pengujian Availability menunjukkan tingkat keberhasilan sebesar 100%. Pengujian Response Time sebanyak 10 kali menghasilkan tingkat keberhasilan sebesar 100%. Pengujian ukuran data sebanyak 10 kali menghasikan tingkat keberhasilan sebesar 100%.
DAFTAR PUSTAKA
Akamai Technologies,Inc, 2014. Akamai's State of the Internet, Massachusetts: Akamai Technologies, inc.
Baidu Indonesia, 2014. Jelajah Dunia Mobile
Indonesia. [Online]
Available at:
http://ue.baidu.com/2014/index2.html [Diakses 4 Mei 2015].
Belqasmi, F., Singh, J., Melhem, S. Y. B. & Glitho, a. R. H., 2012. SOAP-Based vs. RESTful Web Services A Case Study for Multimedia Conferencing. IEEE Internet Computing, 16(4), pp. 54-63. Deviana, H., 2011. Penerapan XML Web service
Pada Sistem Distribusi Barang. Jurnal Generic. , Volume Vol. 6, No. 2, Juli 2011, pp. 61-70.
Dudhe, A. & Sherekar, S., 2014. Performance Analysis of SOAP and RESTful Mobile Web Services in Cloud Environment. IJCA Special Issue on Recent Trends in Information Security, Volume RTINFOSEC, pp. 1-4.
Lee, S., Jo, J., Kim, Y. & Stephen, H., 2014. A
Framework for Environmental
Monitoring with Arduino-Based Sensors Using Restful Web Service. Services Computing, pp. 275-282. Luthfillah, I., 2014. Rancang Bangun Restful
Web Service Untuk Optimalisasi Kecepatan Akses Studi Kasus Aplikasi Sistem Pakar Berbasis Web, Malang: Universitas Brawijaya Malang.
Ruth, E., 2013. Deskripsi Kualitas Layanan Jasa Akses Internet Indonesia Dari Sudut Pandang Penyelenggara. BULETIN POS DAN TELEKOMUNIKASI : Media
Komunikasi Ilmiah, Volume Vol.11 No.2 Juni 2013, pp. 137-146.
Tjasyono, B., 1999. Klimatologi Umum. Bandung: Penerbit ITB.