Tidak ada review pada koleksi ini: 51328
ABSTRAK
Nama Penulis : Mario Serano
Antonius Anggito Arissaputro
Rafi Muhammad
Program Studi : Ilmu Komputer
Judul : Implementasi Peningkatan Performa pada Aplikasi
Bikunku
Pembimbing : Dr. Rizal Fathoni Aji, S.Kom., M.Kom.
Muhammad Hafizhuddin Hilman, S.Kom., M.Kom., Ph.D.
Bikunku merupakan suatu aplikasi penunjang informasi bis kuning (bikun); sara-
na transportasi di lingkungan Universitas Indonesia; yang dibuat oleh Alamsyah
et al. melalui penelitiannya pada tahun 2022. Salah satu fitur penting yang di-
tawarkan dalam aplikasi ini adalah tracking lokasi bikun yang sedang beroperasi
secara real-time. Meskipun secara keseluruhan sistem ini dapat menjalankan tugas-
nya melakukan tracking lokasi bikun, sistem yang menggunakan frontend React,
komunikasi WebSocket, dan database PostgreSQL ini kurang optimal untuk me-
nangani data lokasi yang dikirim oleh driver bikun dan dibaca oleh ribuan sivitas
akademik Universitas Indonesia. Penelitian ini bertujuan melakukan improvement
berupa peningkatan performa pada sistem tracking bikun pada aplikasi Bikunku
yang meliputi pengukuran end-to-end response time, throughput, CPU usage, me-
mory usage, FPS dan rendering speed. Penelitian terdiri dari pengembangan dari
sisi backend protokol komunikasi menggunakan gRPC dengan Kafka, sisi database
menggunakan Firebase Cloud Firestore sebagai Realtime Database pada backend,
dan sisi frontend menggunakan Flutter sebagai aplikasi mobile. Implementasi fron-
tend Flutter pada akhirnya diinkorporasikan dengan pilihan implementasi backend
dengan hasil performa yang terbaik. Dengan pengembangan menggunakan tekno-
logi tersebut, improvement yang dilakukan pada penelitian ini meliputi pengubahan
cara penyaluran data lokasi tracking dan database dari sistem polling menjadi sis-
tem pushing, pengubahan arsitektur sistem yang lebih performant, digunakannya
protokol komunikasi yang lebih unggul, perbaikan implementasi pada autentikasi
driver sebagai salah satu penyebab bottleneck, pengubahan aplikasi menjadi mobile
app, dan digunakannya implementasi maps yang lebih siap untuk production. Pe-
ngetesan dilakukan dengan load testing membandingkan performa masing-masing
x
xi
sistem implementasi baru terhadap sistem terdahulu Alamsyah. Skenario pengetes-
an sistem backend dan database meliputi request pengiriman lokasi oleh 11 driver
bikun, disertai 1800 concurrent user di sisi client untuk membaca simulasi data
lokasi terbaru bikun yang beroperasi. Sementara pada sisi frontend dilakukan pe-
ngetesan dengan resource profiling dan observasi terhadap simulasi bikun yang ber-
jalan di frontend. Hasil pengetesan menunjukkan sistem gRPC-Kafka lebih cepat
sebesar 96% dengan throughput yang dihasilkan lebih baik 216% dibandingkan de-
ngan sistem Alamsyah, sistem Firebase lebih cepat sebesar 91% dengan throughput
yang dihasilkan lebih baik 127% dibandingkan sistem Alamsyah. Dari hasil yang
didapat, sistem gRPC-Kafka kemudian dipilih sebagai sistem backend yang diin-
korporasikan dengan implementasi Flutter. Hasil pengetesan sistem Flutter dengan
gRPC-Kafka mendapatkan hasil yang lebih baik pada OS Android di semua ske-
nario dengan peningkatan performa metrik CPU usage, max CPU usage, memory
usage, dan rendering speed sebesar 27%, 18%, 42%, dan 33%. Sistem Flutter de-
ngan gRPC-Kafka mayoritas lebih baik pada OS iOS di semua skenario, yakni pada
metrik memory usage, FPS, dan rendering speed dengan peningkatan performa se-
besar 40%, 28%, dan 16%. Sementara dari segi CPU usage dan max CPU usage,
sistem Alamsyah lebih baik sebesar 9% dan 0,3% dari sistem Flutter dengan gRPC-
Kafka.
Kata kunci:
tracking, performa, bikun, Bikunku, gRPC, Kafka, Firebase, Flutter