Pengembangan Aplikasi Pendeteksi Rambu Lalu Lintas pada Perangkat Bergerak dengan menerapkan Konsep Context Awareness dan Geofencing menggunakan Geofire berbasis Android
Kata Kunci:
Android, rambu lalu lintas, kesadaran konteks, GeoFire, geofencing, text-to-speechAbstrak
Kecelakaan lalu lintas adalah salah satu penyebab kematian tertinggi di Indonesia. Di Kota Malang, ada lebih dari seratus kejadian kecelakaan lalu lintas yang terjadi selama kurun waktu 2019-2020. Pelanggaran terhadap rambu lalu lintas menjadi salah satu faktor penyebab terjadinya kecelakaan. Hasil survei menunjukkan 46 dari 55 responden pernah melakukan pelanggaran lalu lintas dengan jenis pelanggaran tertinggi adalah melanggar rambu dan menerobos lampu lalu lintas. Lebih dari 70% responden yang pernah melanggar rambu lalu lintas menyatakan faktor penyebabnya adalah ketidakfokusan serta posisi rambu yang tidak terlihat jelas. Untuk mengatasi masalah tersebut, solusi yang ditawarkan adalah sebuah aplikasi Android yang dapat mendeteksi rambu lalu lintas saat berkendara. Aplikasi ini diharapkan dapat meningkatkan fokus pengemudi sehingga meminimalkan terjadinya kecelakaan lalu lintas. Ada empat rambu lalu lintas yang dapat dideteksi dalam aplikasi ini, yaitu rambu larangan berhenti, larangan parkir, batas kecepatan maksimum, dan lampu lalu lintas. Aplikasi mendeteksi setiap rambu tersebut berdasarkan input kontekstual yang diterima oleh ponsel cerdas Android. Rambu batas kecepatan maksimum dan lampu lalu lintas dideteksi menurut posisi jalan dan radius dari lokasi pengguna, sedangkan rambu larangan parkir dan berhenti dideteksi apabila pengguna berada di dalam radius rambu tersebut dengan kelajuan kurang dari 5 km/jam. Metode deteksi rambu menggunakan GeoFire, sebuah pugasan Firebase yang menerapkan konsep geofencing. Saat dijalankan, aplikasi akan memberi tahu rambu yang berhasil dideteksi kepada pengguna melalui pesan notifikasi dan text-to-speech. Dalam hal pengembangannya, aplikasi ini dirancang menggunakan pola perancangan Model-View-Presenter (MVP) dan diimplementasikan dengan bahasa pemrograman Kotlin, Java, dan XML. Pengujian fungsional aplikasi dilakukan menggunakan pengujian validasi yang menghasilkan status valid untuk setiap kasus uji. Untuk parameter nonfungsional, dilakukan pengujian terhadap kinerja dan kebergunaan aplikasi. Hasil pengujian kinerja menampilkan bahwa aplikasi ini mampu bekerja dan memanfaatkan sumber daya perangkat secara optimal dan hasil pengujian kebergunaan menghasilkan skor SUS sebesar 87 (sangat baik).