Sistem Absensi Online Mahasiswa: Aplikasi Desktop Terintegrasi Basis Data Relasional
Mengimplementasikan pilar OOP dan konektivitas driver JDBC MySQL untuk membangun sistem pencatatan kehadiran mahasiswa yang efisien, aman, dan mudah dimodifikasi.
Efal Jovanda Tarigan
Developer & Penyusun Sistem
1. Latar Belakang Masalah
Proses pencatatan absensi atau kehadiran mahasiswa di lingkungan kampus sering kali masih menggunakan lembar absen cetak konvensional. Mekanisme tanda tangan fisik di kertas ini membawa beberapa batasan signifikan dalam manajemen administrasi kelas.
Masalah pada Absensi Fisik:
- Tingginya Risiko Kecurangan: Adanya potensi celah manipulasi seperti penitipan tanda tangan absen antar mahasiswa.
- Kerusakan Dokumen Fisik: Kertas rekap absensi rentan robek, terkena tumpahan air, atau hilang selama masa semester berjalan.
- Beban Rekapitulasi Manual: Dosen atau staf administrasi program studi harus memindahkan data satu per satu ke sistem digital di akhir semester, yang memakan waktu lama dan rawan terjadi *human error*.
"Sistem Absensi Online ini dirancang untuk menyelesaikan birokrasi manual tersebut dengan mengalihkan pencatatan ke ekosistem desktop digital terpusat yang ditenagai oleh basis data relasional."
2. Implementasi Konsep OOP & Arsitektur Basis Data
Aplikasi dikembangkan menggunakan bahasa pemrograman Java dengan menerapkan prinsip utama Pemrograman Berorientasi Objek (OOP) guna menjamin kode yang rapi, modular, serta mudah untuk dikembangkan di masa mendatang (*scalable*).
Penerapan Pilar Utama OOP:
- Encapsulation: Melindungi properti data sensitif mahasiswa (seperti NIM dan status kehadiran) menggunakan hak akses *private* yang dihubungkan melalui fungsi *getter* dan *setter*.
- Inheritance & Polymorphism: Membangun kelas induk pengguna untuk diturunkan menjadi entitas peran khusus (seperti Admin, Dosen, dan Mahasiswa) dengan kemampuan fungsi pengolahan data yang adaptif.
Untuk bagian penyimpanan jangka panjang, sistem ini terintegrasi penuh secara real-time dengan basis data MySQL menggunakan pustaka *JDBC (Java Database Connectivity Driver)*, yang bertugas mengeksekusi struktur data relasional secara konsisten.
Tangkapan layar dasbor CRUD dan pencarian data mahasiswa (Klik gambar untuk memperbesar).
3. Fitur Utama Aplikasi
- Operasi CRUD Lengkap: Pengguna dengan tingkat hak akses tertentu dapat menambah data kehadiran (*Create*), menampilkan daftar tabel (*Read*), memperbarui status (*Update*), serta menghapus riwayat log presensi yang salah (*Delete*).
- Pencarian Data Instan: Fitur pemfilteran kueri SQL dinamis untuk mencari rekap absensi berdasarkan nama, NIM, atau rentang tanggal kelas tertentu tanpa memuat ulang aplikasi.
- Integrasi Fleksibel: Antarmuka GUI (Graphical User Interface) yang dirancang interaktif untuk memudahkan dosen melihat total persentase kehadiran mahasiswa secara instan.
4. Hasil Kesimpulan Pengembangan
Melalui penyelesaian proyek tugas akhir ini, sistem absensi digital berhasil membuktikan bahwa pemanfaatan struktur pemrograman berorientasi objek yang tepat dipadukan dengan database relasional mampu memotong alur kerja manual rekapitulasi data dari berhari-hari menjadi hitungan detik dengan tingkat akurasi yang absolut.