Rancang Bangun Absensi Realtime Berbasis Android dan Realtime Database Firebase

Merancang dan Membangun Aplikasi Absensi Realtime berbasis Android dengan menggunakan Realtime Database Firebase

Sulikan, A.Md., S.Kom.

1/6/20263 min baca

BAB III
ANALISA DAN PERANCANGAN SISTEM

3.1 Gambaran Umum Sistem

Sistem absensi real-time berbasis Android ini digunakan untuk mencatat kehadiran karyawan secara digital menggunakan smartphone. Sistem terintegrasi dengan Realtime Database Firebase Authentication untuk autentikasi pengguna dan Firebase Realtime Database untuk penyimpanan data absensi secara langsung (real-time).

Sistem memiliki tiga aktor utama, yaitu Karyawan, Admin dan Firebase Cloud. Karyawan melakukan absensi masuk dan pulang, sedangkan Admin bertugas mengelola data pengguna dan memantau absensi, sedangkan Firebase Cloud sebagai penyedia database realtime.

3.2 Use Case Diagram Sistem Absensi Realtime

Use Case Diagram ini menggambarkan interaksi antara aktor dan sistem absensi real-time. Karyawan melakukan absensi masuk melalui aplikasi dengan validasi lokasi. Admin/HRD memantau daftar kehadiran yang masuk secara instan tanpa perlu memuat ulang halaman. Firebase Auth memvalidasi identitas pengguna untuk mengakses fitur aplikasi.

3.3 Activity Diagram

Activity Diagram ini sangat penting untuk menunjukkan alur logika internal sistem, mulai dari aksi aktor hingga respon database. Berikut adalah 4 Activity Diagram utama untuk sistem absensi real-time:

1. Activity Diagram Melakukan Presensi (Geofencing) Diagram Ini adalah alur yang paling kritikal karena melibatkan pengecekan lokasi sebelum data masuk ke Firebase.

  • Logic: Sistem mengambil koordinat HP, membandingkannya dengan koordinat kantor. Jika jarak ≤ radius, data dikirim. Jika tidak, proses berhenti di notifikasi error.

2. Activity Diagram Monitoring Real-time (Admin) Diagram ini menunjukkan bagaimana sifat Real-time Database bekerja (sinkronisasi otomatis).

  • Logic: Admin tidak melakukan refresh. Aplikasi dalam posisi "Mendengarkan" (Listener). Begitu ada data masuk di Firebase, UI Admin berubah otomatis.

3. Activity Diagram Login & Autentikasi Menunjukkan interaksi antara input user dan validasi di Cloud Firebase.

  • Logic: Firebase Auth mengecek kredensial. Jika benar, sistem mengambil data profil/role dari database untuk menentukan apakah user masuk ke menu Admin atau Karyawan.

4. Activity Diagram Cetak Laporan Bulanan Menunjukkan proses pengambilan data massal dan konversi menjadi dokumen.

  • Logic: Fokus pada pengolahan data mentah dari Firebase menjadi format yang rapi (PDF/Excel) di memori perangkat sebelum disimpan/dibagikan.

3.3.1 Activity Diagram Melakukan Presensi

Note : Perhitungan jarak dilakukan menggunakan Rumus Haversine di dalam kode Android. Rumus ini menghitung jarak antara dua titik koordinat di permukaan bumi.

3.3.2 Activity Diagram Monitoring Real-time

3.3.3 Activity Diagram Login & Autentikasi

3.3.4 Activity Diagram Cetak Laporan Bulanan

3.3.5 Activity Diagram Kelola Data Karyawan

3.4 Sequence Diagram

3.5 Class Diagram

3.4.1 Sequence Diagram Login & Role Checking

3.4.2 Sequence Diagram Melakukan Presensi (Geofencing)

3.6 Json Firebase Database