From 9bd5506f4f4c5924afd220b5f32d9f18187be429 Mon Sep 17 00:00:00 2001 From: GuavaPopper Date: Fri, 5 Jun 2026 04:41:13 +0700 Subject: [PATCH] docs: add professor's feature suggestions to missing_features.md Co-Authored-By: Claude Sonnet 4.6 --- missing_features.md | 97 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 95 insertions(+), 2 deletions(-) diff --git a/missing_features.md b/missing_features.md index 4505a48..685d5d2 100644 --- a/missing_features.md +++ b/missing_features.md @@ -2,7 +2,7 @@ > Berdasarkan perbandingan dokumen SKPL (`D1041231009_RadityaIndraPutranto_SKPL_SIG.docx`) dengan implementasi aktual project. > -> **Terakhir diperbarui:** 2026-06-05 — setelah implementasi A-03 Konfigurasi Sistem. +> **Terakhir diperbarui:** 2026-06-05 — ditambahkan saran fitur dari dosen (anggota keluarga, riwayat bantuan, permohonan transfer). --- @@ -78,6 +78,97 @@ Data bisa ditambah dan dihapus. Untuk lokasi: drag marker (ibadah & miskin) dan --- +## 🎓 6. Saran Fitur dari Dosen (Di Luar SKPL) + +Fitur-fitur berikut diusulkan setelah SKPL final dan belum ada dalam dokumen spesifikasi awal. + +### 6.1 Data Anggota Keluarga (Tabel Baru: `anggota_keluarga`) + +Saat ini `rumah_miskin` hanya menyimpan jumlah KK dan jumlah jiwa secara agregat. Fitur ini menambahkan data **per-orang** di dalam rumah tangga. + +| Sub-fitur | Keterangan | Status | +|---|---|---| +| **Data Umur** | Simpan tanggal lahir tiap anggota, hitung umur otomatis | ❌ Belum | +| **Riwayat Pendidikan** | Tingkat pendidikan tiap anggota (tidak sekolah / SD / SMP / SMA / D3 / S1+) | ❌ Belum | +| **Status Hidup** | Status `hidup` / `meninggal` per-anggota, bisa diupdate petugas | ❌ Belum | + +**Skema yang disarankan (`anggota_keluarga`):** + +| Kolom | Tipe | Keterangan | +|---|---|---| +| `id` | BIGINT PK | | +| `id_rumah` | FK → rumah_miskin | | +| `nama` | VARCHAR | | +| `hubungan` | ENUM | kepala_keluarga, istri, anak, lainnya | +| `tanggal_lahir` | DATE | untuk hitung umur | +| `pendidikan` | ENUM | tidak_sekolah, sd, smp, sma, d3, s1_plus | +| `status_hidup` | ENUM | hidup, meninggal | +| timestamps | | | + +**Dampak implementasi:** Perlu form tambah/edit anggota di halaman `/data` (nested di dalam detail rumah miskin), dan statistik umur di dashboard. + +--- + +### 6.2 Riwayat Bantuan (Tabel Baru: `riwayat_bantuan`) + +Mencatat setiap bantuan yang telah diberikan rumah ibadah kepada keluarga miskin — membentuk jejak audit distribusi bantuan. + +| Kolom | Tipe | Keterangan | +|---|---|---| +| `id` | BIGINT PK | | +| `id_rumah` | FK → rumah_miskin | penerima bantuan | +| `ibadah_id` | FK → rumah_ibadah nullable | pemberi bantuan | +| `jenis_bantuan` | VARCHAR | contoh: sembako, uang, pakaian | +| `keterangan` | TEXT | deskripsi bebas | +| `tanggal_bantuan` | DATE | | +| `dicatat_oleh` | FK → users | | +| timestamps | | | + +**Dampak implementasi:** Tombol "Catat Bantuan" di popup marker / tabel data, halaman riwayat per-keluarga, dan statistik total bantuan di dashboard. + +**Status:** ❌ Belum + +--- + +### 6.3 Permohonan Transfer Antar Rumah Ibadah (Tabel Baru: `permohonan_transfer`) + +Ketika kapasitas jangkauan rumah ibadah sudah penuh, pengurus dapat mengajukan permohonan agar sebagian keluarga miskin dialihkan ke rumah ibadah lain yang masih mencukupi. + +**Alur:** +1. Pengurus Ibadah A melihat analisis radius → kapasitas melebihi batas +2. Pengurus mengajukan permohonan transfer → pilih keluarga miskin + pilih rumah ibadah tujuan +3. Pengurus Ibadah B menerima notifikasi → menyetujui atau menolak +4. Administrator bisa memantau semua permohonan + +| Kolom | Tipe | Keterangan | +|---|---|---| +| `id` | BIGINT PK | | +| `dari_ibadah_id` | FK → rumah_ibadah | pengaju | +| `ke_ibadah_id` | FK → rumah_ibadah | tujuan | +| `id_rumah` | FK → rumah_miskin | keluarga yang diajukan | +| `alasan` | TEXT | | +| `status` | ENUM | pending, disetujui, ditolak | +| `catatan_respons` | TEXT nullable | dari pengurus penerima | +| `diajukan_oleh` | FK → users | | +| `diproses_oleh` | FK → users nullable | | +| timestamps | | | + +**Dampak implementasi:** Halaman `/permohonan` (list + form submit + approve/reject), badge notifikasi di navbar pengurus, dan log aktivitas untuk setiap perubahan status. + +**Status:** ❌ Belum + +--- + +### Estimasi Kompleksitas + +| Fitur | Kompleksitas | Estimasi | +|---|---|---| +| Data anggota keluarga (umur + pendidikan + status hidup) | Tinggi | 1 plan penuh | +| Riwayat bantuan | Menengah | 1 plan penuh | +| Permohonan transfer antar rumah ibadah | Sangat Tinggi | 1–2 plan | + +--- + ## 📋 Ringkasan | Kategori | Selesai | Belum | @@ -89,7 +180,9 @@ Data bisa ditambah dan dihapus. Untuk lokasi: drag marker (ibadah & miskin) dan | Fitur Edit Data | ✅ 2/2 | — | | Fitur Analisis/Dashboard | ✅ 3/3 | — | | Fitur Cetak/Ekspor | ✅ 3/3 | — | -| **Total sisa** | | **0 — Semua fitur SKPL selesai ✅** | +| Fitur Saran Dosen | — | ❌ 3 fitur baru (di luar SKPL) | +| **Total sisa (SKPL)** | | **0 — Semua fitur SKPL selesai ✅** | +| **Total saran dosen** | | **~3 plan** | ---