Entity Relationship Diagram & Penjelasan Fitur
SIAGAKU-SLB adalah aplikasi edukasi mitigasi bencana gempa bumi yang dirancang khusus untuk siswa Sekolah Luar Biasa (SLB).
Catatan: Diagram menunjukkan relasi antar tabel dalam database SIAGAKU-SLB
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik instansi/sekolah |
nama |
VARCHAR(255) | Nama instansi/sekolah SLB |
alamat |
TEXT | Alamat lengkap instansi |
telepon |
VARCHAR(20) | Nomor telepon kontak |
email |
VARCHAR(255) | Email resmi instansi |
created_at |
DATETIME | Waktu pembuatan data |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik sesi/kelas |
instansi_id |
INT (FK) | ID instansi yang memiliki sesi |
nama |
VARCHAR(255) | Nama sesi (contoh: Kelas 1A) |
tahun_ajaran |
VARCHAR(20) | Tahun ajaran (contoh: 2024/2025) |
deskripsi |
TEXT | Deskripsi tambahan sesi |
status |
ENUM('aktif','tidak_aktif') | Status aktif/nonaktif sesi |
created_at |
DATETIME | Waktu pembuatan sesi |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik peserta |
season_id |
INT (FK) | ID sesi tempat peserta terdaftar |
nama |
VARCHAR(255) | Nama lengkap peserta |
jenis_kelamin |
ENUM('L','P') | L = Laki-laki, P = Perempuan |
tanggal_lahir |
DATE | Tanggal lahir peserta |
alamat |
TEXT | Alamat lengkap peserta |
created_at |
DATETIME | Waktu pendaftaran |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik admin/user |
username |
VARCHAR(50) | Username login (unique) |
password |
VARCHAR(255) | Password terenkripsi (bcrypt) |
nama |
VARCHAR(255) | Nama lengkap user |
email |
VARCHAR(255) | Email user |
role |
ENUM('admin','superadmin') | Hak akses user |
created_at |
DATETIME | Waktu pembuatan akun |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik materi |
judul |
VARCHAR(255) | Judul materi pembelajaran |
deskripsi |
TEXT | Deskripsi singkat materi |
konten |
TEXT | Isi konten materi lengkap |
file_pdf |
VARCHAR(255) | Nama file PDF (jika ada) |
video_url |
VARCHAR(255) | URL video YouTube (jika ada) |
created_at |
DATETIME | Waktu pembuatan materi |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik kuis |
materi_id |
INT (FK, NULLABLE) | ID materi terkait (opsional) |
judul |
VARCHAR(255) | Judul kuis |
deskripsi |
TEXT | Deskripsi kuis |
created_at |
DATETIME | Waktu pembuatan kuis |
Fitur Unggulan: Tabel ini mendukung multimedia penuh (gambar, audio, video) untuk pertanyaan dan semua opsi jawaban
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik soal |
kuis_id |
INT (FK) | ID kuis yang memiliki soal ini |
pertanyaan |
TEXT | Teks pertanyaan |
file_gambar |
VARCHAR(255) | Gambar pertanyaan (opsional) |
file_audio |
VARCHAR(255) | Audio pertanyaan (opsional) |
file_video |
VARCHAR(255) | Video pertanyaan (opsional) |
opsi_a_teks |
TEXT | Teks opsi A |
opsi_a_gambar |
VARCHAR(255) | Gambar opsi A (opsional) |
opsi_a_audio |
VARCHAR(255) | Audio opsi A (opsional) |
opsi_a_video |
VARCHAR(255) | Video opsi A (opsional) |
| ... (Sama untuk opsi_b_* dan opsi_c_*) | ||
jawaban |
ENUM('A','B','C') | Jawaban yang benar |
created_at |
DATETIME | Waktu pembuatan soal |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik hasil |
peserta_id |
INT (FK) | ID peserta yang mengerjakan |
kuis_id |
INT (FK) | ID kuis yang dikerjakan |
season_id |
INT (FK, NULLABLE) | ID sesi saat kuis dikerjakan |
skor |
INT | Total skor yang diperoleh |
jumlah_benar |
INT (DEFAULT 0) | Jumlah jawaban benar |
jumlah_salah |
INT (DEFAULT 0) | Jumlah jawaban salah |
tanggal |
DATETIME | Tanggal & waktu pengerjaan |
waktu |
TIME | Waktu pengerjaan |
| Nama Kolom | Tipe Data | Keterangan |
|---|---|---|
id |
INT (PK, AUTO_INCREMENT) | ID unik log |
user_id |
INT (FK, NULLABLE) | ID user yang melakukan aksi |
user_name |
VARCHAR(255) | Nama user (cadangan jika user dihapus) |
action |
VARCHAR(100) | Jenis aksi (CREATE, UPDATE, DELETE, dll) |
description |
TEXT | Deskripsi detail aktivitas |
ip_address |
VARCHAR(50) | IP address user |
created_at |
DATETIME | Waktu aktivitas dilakukan |
Desain colorful, interaktif, dan mudah dipahami khusus untuk siswa SLB dengan kebutuhan khusus
Dapat diakses optimal di HP, tablet, dan desktop dengan layout yang menyesuaikan ukuran layar
Support gambar, audio, dan video untuk soal & opsi jawaban. Cocok untuk berbagai gaya belajar
Generate sertifikat PDF otomatis untuk peserta yang lulus (≥60%) dengan design profesional
Dashboard dengan grafik Chart.js, export Excel/PDF, statistik detail, dan analisis performa
Password bcrypt, session management, SQL injection protection, XSS prevention, CSRF token
Optimasi query database, caching, lazy loading, compressed assets, dan gzip compression
Music player floating untuk atmosfer belajar lebih menyenangkan dengan kontrol play/pause
URL SEO-friendly tanpa .php extension menggunakan Apache mod_rewrite (.htaccess)
© 2025 SIAGAKU-SLB • Sistem Informasi Mitigasi Gempa untuk SLB