Web Development & AI
Completed
September 2025
StatiCore
Platform web Learning Management System (LMS) khusus perkuliahan statistika dengan alur kelas virtual berbasis kode gabung instan, pembagian materi dataset, pengumpulan tugas terstruktur, serta kuis ujian interaktif dengan koreksi otomatis (auto-grading).
StatiCore.view
LIVE
Ringkasan Proyek
Latar belakang dan cakupan sistem
StatiCore LMS adalah platform pembelajaran daring berbasis web yang dirancang untuk merapikan alur perkuliahan dan praktikum statistika. Mengadopsi pengalaman kelas virtual yang simpel ala Google Classroom, platform ini memfasilitasi tiga peran pengguna sekaligus (Admin, Dosen/Guru, dan Mahasiswa/Siswa).
Melalui StatiCore, pengajar dapat membuat ruang kelas dengan kode unik, membagikan modul maupun berkas dataset praktikum, mengatur tenggat pengumpulan tugas, hingga menggelar kuis berbatas waktu. Di sisi mahasiswa, sistem ini menyediakan portal terpusat untuk mengakses bahan ajar, mengunggah laporan praktikum dengan validasi format berkas, serta mengerjakan ujian interaktif dengan hasil skor yang langsung keluar secara transparan.
Melalui StatiCore, pengajar dapat membuat ruang kelas dengan kode unik, membagikan modul maupun berkas dataset praktikum, mengatur tenggat pengumpulan tugas, hingga menggelar kuis berbatas waktu. Di sisi mahasiswa, sistem ini menyediakan portal terpusat untuk mengakses bahan ajar, mengunggah laporan praktikum dengan validasi format berkas, serta mengerjakan ujian interaktif dengan hasil skor yang langsung keluar secara transparan.
Latar Belakang & Kebutuhan
Kendala operasional dan kebutuhan spesifikasi sistem
Pada perkuliahan atau praktikum statistika, materi ajar sering kali tidak hanya berupa teks, melainkan dokumen modul, slide presentasi, hingga berkas dataset (Excel, CSV, RAR) yang cukup beragam. Beberapa kendala utama di lapangan meliputi:
Penyebaran Materi & Tugas yang Tercecer: Pembagian materi dan pengumpulan tugas via grup obrolan atau email kerap membuat berkas tertukar, sulit dilacak tenggat waktunya, dan rentan hilang.
Birokrasi Pendaftaran Kelas yang Lambat: Menambahkan mahasiswa satu per satu ke dalam kelas secara manual oleh admin memakan waktu saat awal semester.
Beban Koreksi Manual: Mengoreksi lembar jawaban kuis atau ujian pilihan ganda dalam jumlah mahasiswa yang banyak menyita waktu dosen.
Masalah Penumpukan File Sampah di Server: File tugas yang sudah dihapus oleh pengajar sering kali tertinggal di folder penyimpanan server jika tidak ada manajemen penghapusan fisik otomatis.
Penyebaran Materi & Tugas yang Tercecer: Pembagian materi dan pengumpulan tugas via grup obrolan atau email kerap membuat berkas tertukar, sulit dilacak tenggat waktunya, dan rentan hilang.
Birokrasi Pendaftaran Kelas yang Lambat: Menambahkan mahasiswa satu per satu ke dalam kelas secara manual oleh admin memakan waktu saat awal semester.
Beban Koreksi Manual: Mengoreksi lembar jawaban kuis atau ujian pilihan ganda dalam jumlah mahasiswa yang banyak menyita waktu dosen.
Masalah Penumpukan File Sampah di Server: File tugas yang sudah dihapus oleh pengajar sering kali tertinggal di folder penyimpanan server jika tidak ada manajemen penghapusan fisik otomatis.
Solusi & Desain Sistem
Pendekatan arsitektur dan struktur logika sistem
Membangun solusi LMS terintegrasi yang ringan dan fokus pada kemudahan pakai:
Role-Based Access Control (RBAC): Pemisahan hak akses dan antarmuka secara tegas antara Administrator, Dosen/Guru, dan Siswa/Mahasiswa.
Class Code Enrollment System: Mahasiswa cukup memasukkan kode 6 karakter alfanumerik unik untuk langsung bergabung ke kelas mata kuliah tanpa proses admin yang berbelit.
Auto-Grading Quiz Engine: Modul kuis interaktif dengan timer hitung mundur (countdown) yang otomatis menghitung skor pilihan ganda secara instan saat waktu habis atau lembar jawaban dikirim.
Siklus Manajemen Berkas yang Rapi: Validasi ketat format ekstensi file dan ukuran unggahan, dilengkapi mekanisme penghapusan otomatis berkas fisik dari server saat data tugas dihapus.
Role-Based Access Control (RBAC): Pemisahan hak akses dan antarmuka secara tegas antara Administrator, Dosen/Guru, dan Siswa/Mahasiswa.
Class Code Enrollment System: Mahasiswa cukup memasukkan kode 6 karakter alfanumerik unik untuk langsung bergabung ke kelas mata kuliah tanpa proses admin yang berbelit.
Auto-Grading Quiz Engine: Modul kuis interaktif dengan timer hitung mundur (countdown) yang otomatis menghitung skor pilihan ganda secara instan saat waktu habis atau lembar jawaban dikirim.
Siklus Manajemen Berkas yang Rapi: Validasi ketat format ekstensi file dan ukuran unggahan, dilengkapi mekanisme penghapusan otomatis berkas fisik dari server saat data tugas dihapus.
Pendekatan Teknis & Pemilihan Teknologi
Alasan pemilihan teknologi dan alur proses data
Architecture & Pattern: Menggunakan arsitektur modular berbasis PHP Native (OOP) dengan pembagian views, includes, dan config yang terstruktur. Pengelolaan koneksi basis data dan autentikasi dibungkus dalam class reusable (Database dan Auth).
Database Design: Merancang skema relasional MySQL yang dinormalisasi dengan relasi multi-tabel (users, kelas, guru_kelas, siswa_kelas, materi, tugas, pengumpulan_tugas, quiz, soal_quiz, pilihan_jawaban, jawaban_siswa) lengkap dengan foreign key dan indexing untuk menjaga konsistensi integritas data.
Security & Data Sanitization: Mengamankan kredensial login menggunakan enkripsi password_hash() (Bcrypt), sanitasi input data untuk mencegah SQL Injection dan XSS, serta validasi session role di setiap rute halaman.
Client-Side Dynamics: Mengombinasikan Bootstrap 5.3 dengan kustomisasi CSS modern bertema gelap-terang bernuansa indigo, typography Plus Jakarta Sans, dan vanilla JavaScript untuk logika timer kuis, modal interaktif, serta efek animasi AOS (Animate On Scroll).
File System Handling: Menangani I/O unggahan materi dan tugas dengan enkripsi nama file berbasis timestamp untuk mencegah tabrakan nama file (name collision), serta eksekusi fungsi unlink() untuk mencegah file yatim piatu (orphan files).
Database Design: Merancang skema relasional MySQL yang dinormalisasi dengan relasi multi-tabel (users, kelas, guru_kelas, siswa_kelas, materi, tugas, pengumpulan_tugas, quiz, soal_quiz, pilihan_jawaban, jawaban_siswa) lengkap dengan foreign key dan indexing untuk menjaga konsistensi integritas data.
Security & Data Sanitization: Mengamankan kredensial login menggunakan enkripsi password_hash() (Bcrypt), sanitasi input data untuk mencegah SQL Injection dan XSS, serta validasi session role di setiap rute halaman.
Client-Side Dynamics: Mengombinasikan Bootstrap 5.3 dengan kustomisasi CSS modern bertema gelap-terang bernuansa indigo, typography Plus Jakarta Sans, dan vanilla JavaScript untuk logika timer kuis, modal interaktif, serta efek animasi AOS (Animate On Scroll).
File System Handling: Menangani I/O unggahan materi dan tugas dengan enkripsi nama file berbasis timestamp untuk mencegah tabrakan nama file (name collision), serta eksekusi fungsi unlink() untuk mencegah file yatim piatu (orphan files).
Peran & Tanggung Jawab
Tanggung jawab langsung dalam pengembangan modul
Berperan sebagai Full-Stack Web Developer, dengan tanggung jawab utama:
Merancang arsitektur aplikasi dan skema basis data relasional MySQL dari tahap perancangan hingga implementasi.
Mengembangkan logika backend PHP untuk autentikasi multi-role, sistem kode kelas, manajemen berkas, serta mesin kuis.
Membangun tampilan landing page yang elegan dan antarmuka dashboard responsif untuk ketiga level pengguna (Admin, Guru, Siswa).
Mengintegrasikan logika interaktif kuis berbasis JavaScript (timer pengerjaan, auto-submit, kalkulasi skor).
Mengimplementasikan alur upload berkas terproteksi lengkap dengan validasi MIME-type dan auto-cleanup storage.
Merancang arsitektur aplikasi dan skema basis data relasional MySQL dari tahap perancangan hingga implementasi.
Mengembangkan logika backend PHP untuk autentikasi multi-role, sistem kode kelas, manajemen berkas, serta mesin kuis.
Membangun tampilan landing page yang elegan dan antarmuka dashboard responsif untuk ketiga level pengguna (Admin, Guru, Siswa).
Mengintegrasikan logika interaktif kuis berbasis JavaScript (timer pengerjaan, auto-submit, kalkulasi skor).
Mengimplementasikan alur upload berkas terproteksi lengkap dengan validasi MIME-type dan auto-cleanup storage.
Hasil & Dampak Proyek
Pencapaian fungsional dan pengujian hasil implementasi
Alur Praktikum 100% Terpusat: Berhasil menyatukan ruang distribusi modul, penyerahan berkas tugas statistika, dan pengumuman kelas ke dalam satu portal web terpadu.
Efisiensi Koreksi Kuis: Evaluasi ujian pilihan ganda diproses seketika oleh sistem (instant auto-grade), memangkas waktu rekap nilai dosen hingga 100% untuk tipe soal objektif.
Proses Gabung Kelas Cepat: Mahasiswa dapat bergabung ke ruang kelas baru secara mandiri hanya dalam hitungan detik via kode kelas unik.
Penyimpanan Server Efisien: Kapasitas disk server tetap bersih dari penumpukan file tak terpakai berkat sinkronisasi antara database dan penghapusan fisik berkas.
Efisiensi Koreksi Kuis: Evaluasi ujian pilihan ganda diproses seketika oleh sistem (instant auto-grade), memangkas waktu rekap nilai dosen hingga 100% untuk tipe soal objektif.
Proses Gabung Kelas Cepat: Mahasiswa dapat bergabung ke ruang kelas baru secara mandiri hanya dalam hitungan detik via kode kelas unik.
Penyimpanan Server Efisien: Kapasitas disk server tetap bersih dari penumpukan file tak terpakai berkat sinkronisasi antara database dan penghapusan fisik berkas.