Pengembangan Backend Aplikasi Keselamatan Anak Berbasis Geofencing dengan Peningkatan Fleksibilitas dan Keamanan Pengguna
FIORENZA CELESTYN, Warsun Najib, S.T., M.Sc.; Ir. Azkario Rizky Pratama, S.T., M.Eng., Ph.D.
2024 | Skripsi | TEKNOLOGI INFORMASI
Tugas pengawasan anak menjadi suatu kewajiban orang tua, terutama pada era perkembangan teknologi ini, di mana anak telah terbiasa membawa smartphone saat bepergian. Aplikasi atau software untuk membantu tugas ini pun telah dikembangkan. Andal, kependekan dari Anak dalam Lindungan, merupakan nama salah satu aplikasi yang telah dikembangkan untuk mengawasi anak dengan penerapan geofencing. Geofencing adalah konsep pembuatan batas virtual pada lokasi geografis tertentu. Ketika obyek target melewati batas tersebut, maka aksi pada sistem akan terpicu. Batasan virtual tersebut juga dapat disebut geofence. Tetapi, Aplikasi Andal versi pertama masih memiliki beberapa kekurangan. Kekurangan pertama adalah orang tua tidak dapat menambahkan beberapa jadwal untuk satu anak. Pada kenyataannya, anak sering memiliki jadwal yang banyak dan berada di tempat berbeda-beda. Kekurangan kedua, bentuk dan ukuran batas geofence tidak dapat dikustomisasi oleh orang tua. Ketiga, terdapat celah keamanan yaitu dari cara menghubungkan akun anak dan orang tua. Akun anak dihubungkan sepihak dari orang tua. Hal ini menyebabkan data lokasi anak terekspos ke seluruh pengguna dalam sistem. Maka dari itu, penelitian ini melakukan pengembangan ulang terhadap backend aplikasi Andal dengan menaruh fokus terhadap peningkatan fleksibilitas dan keamanan pengguna.
Metodologi penelitian melibatkan perancangan, pengembangan, dan pengujian aplikasi backend. Teknologi yang digunakan adalah basis data MongoDB dan pengembangan dilakukan dalam lingkungan Javascript Node.js. Beberapa pengujian dilakukan, yaitu uji fungsionalitas, uji waktu respon, uji beban, dan uji delay notifikasi.
Hasil pengujian menunjukkan bahwa implementasi peningkatan dan perubahan ini telah berhasil secara fungsional. Waktu respon rerata sistem adalah 637 ms. Rerata waktu respon meningkat daripada aplikasi versi sebelumnya. Hal ini disebabkan karena meningkatnya kompleksitas aplikasi. Salah satunya, model basis data berubah menjadi lebih kompleks dibandingkan sebelumnya, mengikuti penambahan fitur. Sehingga, dengan arsitektur deployment yang sama, sistem baru ini relatif lebih lambat.
Pengujian beban pada endpoint anak mengirimkan lokasi menunjukkan bahwa rata-rata response time pada skenario anak mengirimkan lokasi adalah 1222 ms. Nilai ini masih dapat diterima untuk pemanggilan endpoint setiap 5 detik dari frontend. Sementara itu, dari pengujian notifikasi dengan sistem yang sudah diintegrasikan dengan client didapatkan delay notifikasi rata-rata 12,8 detik. Beberapa faktor yang mempengaruhi ini antara lain ketidakakuratan GPS pada perangkat serta ketidakstabilan jaringan internet.
Supervising children has become a parental obligation, especially in this era of technological development, where children have become accustomed to carrying smartphones when traveling. Applications or software to assist with this task of monitoring children have also been developed. "Andal", short for "Anak dalam Lindungan" (Children under Protection), is one of such application that has been developed to monitor children using geofencing technology. Geofencing is a concept that allows users to set virtual boundaries on geographical locations. When the target object crosses these boundaries, an action on the system is triggered. However, the first version of the Andal application has some drawbacks. The first shortcoming is parents cannot add more than one schedule for one child. In reality, often children have multiple schedules and various places. Second, the shape and size of the geofence boundary also cannot be customized by the parents. Third, there is a security gap, namely from how to connect child and parent accounts. The child’s account is linked unilaterally from parent. This causes the child’s location data to be exposed to all logged in users in the system. Therefore, this research focused on redeveloping the Andal application backend, with a focus on improving user flexibility and security.
The research methodology involved the design, development, and testing of the backend application. The technologies used were the MongoDB database and JavaScript runtime Node.js for development. Several tests were conducted, including functionality tests, response time tests, load tests, and notification delay tests.
The test results show that the implementation of these improvements and changes has been functionally successful. The system’s average response time is 637 ms. The average response time has increased compared to the previous version of the application. This is due to the increased complexity of the application. One of the factors is that the database model has become more complex compared to before, following the addition of features. Thus, with the same deployment architecture, this new system is relatively slower.
Load testing on the endpoint where children send their location shows that the average response time in the scenario where children send their location is 1222 ms. This is an acceptable number for continuous calls every 5 seconds from the frontend. Meanwhile, from notification testing with the system already integrated with the client, the average notification delay is 12.8 seconds. Several factors affecting this include the inaccuracy of GPS on devices and the instability of the internet network.
Kata Kunci : layanan berbasis lokasi, geofencing, RESTful API, keamanan anak