# PRD Implementasi Lengkap

## 1. Ringkasan

Aplikasi berbasis web untuk mengelola usulan perbaikan inventaris di Perwakilan BKKBN Provinsi Sumatera Utara.

## 2. Tujuan

- satu kanal digital untuk seluruh proses;
- notifikasi otomatis;
- SLA teknisi;
- foto bukti penyelesaian;
- riwayat per aset;
- laporan;
- audit trail.

## 3. Ruang Lingkup

### Termasuk

- autentikasi;
- role-based access;
- pengguna;
- unit;
- inventaris;
- tiket;
- foto kerusakan;
- verifikasi TU;
- revisi;
- persetujuan pimpinan;
- SLA;
- penugasan teknisi;
- progres;
- tindakan perbaikan;
- biaya opsional;
- foto hasil;
- notifikasi;
- laporan;
- ekspor;
- audit trail.

### Tidak Termasuk

- pengadaan;
- distribusi;
- mutasi;
- penghapusan;
- akuntansi;
- pembayaran;
- vendor;
- SIMAK-BMN penuh;
- aplikasi native;
- WhatsApp;
- AI.

## 4. Status Tiket

- `DRAFT`
- `SUBMITTED`
- `REVISION_REQUIRED`
- `RESUBMITTED`
- `VERIFIED`
- `PENDING_APPROVAL`
- `REJECTED`
- `APPROVED`
- `ASSIGNED`
- `IN_PROGRESS`
- `COMPLETED`

Keterlambatan adalah indikator turunan, bukan status utama.

## 5. Aturan Bisnis Inti

1. Tiket wajib memiliki satu aset aktif.
2. Tiket wajib memiliki minimal satu foto kerusakan.
3. Nomor tiket unik dan tidak dapat diubah.
4. Revisi wajib memiliki alasan.
5. Penolakan wajib memiliki alasan.
6. Tiket ditolak tidak dapat ditugaskan.
7. SLA dan teknisi wajib tersedia sebelum pekerjaan dimulai.
8. Satu tiket hanya memiliki satu penugasan aktif.
9. Perubahan SLA atau teknisi wajib memiliki alasan.
10. Tiket tidak dapat selesai tanpa tindakan dan foto hasil.
11. Semua perubahan status wajib masuk audit trail.
12. Data selesai dan ditolak bersifat hanya-baca.

## 6. Fitur Utama

### Pegawai
- tiket baru;
- draf;
- foto kerusakan;
- riwayat;
- revisi;
- notifikasi.

### TU
- master data;
- antrean pemeriksaan;
- revisi;
- verifikasi;
- pengajuan;
- SLA;
- teknisi;
- monitoring;
- laporan.

### Pimpinan
- antrean keputusan;
- setuju;
- tolak;
- dashboard;
- laporan.

### Teknisi
- daftar tugas;
- mulai kerja;
- progres;
- tindakan;
- biaya;
- foto hasil;
- selesai.

## 7. Kebutuhan Nonfungsional

- PHP 8.2+;
- responsif minimal 360 px;
- 95% halaman utama maksimal 3 detik;
- password di-hash;
- CSRF;
- prepared statement;
- RBAC;
- audit;
- backup harian;
- zona waktu Asia/Jakarta;
- bahasa Indonesia.
