PROMPT
Saya seorang software developer. Buatkan PRD untuk aplikasi HRM, yang didalamnya ada data karyawan, cuti, payroll, absensi, dan laporan. Pastikan ada 2 role, yang pertama adalah admin, dan user. Pastikan juga ada jadwal kerja. Untuk payroll, ada komponen-komponen gaji yang wajib ada.
Untuk absensi, ada tombol clock in, colock out, pastikan dalam 1 hari hanya 1X absen.
Untuk laporan ada laporan kehadiran, laporan gaji, dan laporan cuti.
PRODUCT REQUIREMENT DOCUMENT
Product Requirements Document (PRD)
Human Resource Management System (HRM)
1. Informasi Produk
Nama Produk
HRM Pro – Human Resource Management System
Tujuan Produk
Membangun sistem manajemen sumber daya manusia yang terintegrasi untuk mengelola:
Data Karyawan
Jadwal Kerja
Absensi
Cuti
Payroll
Laporan HR
Sistem digunakan oleh perusahaan untuk meningkatkan efisiensi administrasi SDM dan meminimalkan proses manual.
2. Business Goals
Tujuan Bisnis
Mengurangi proses administrasi manual HR.
Mempermudah monitoring kehadiran karyawan.
Mengotomatisasi perhitungan payroll.
Menyediakan laporan HR secara real-time.
Menjamin transparansi data karyawan dan penggajian.
3. User Roles
Role 1: Admin
Memiliki akses penuh terhadap seluruh modul.
Hak Akses Admin
Login
Dashboard
CRUD Data Karyawan
CRUD Jadwal Kerja
Approval Cuti
Monitoring Absensi
Generate Payroll
Kelola Komponen Gaji
Cetak Slip Gaji
Export Laporan
Kelola User
Role 2: User (Karyawan)
Hak Akses User
Login
Melihat Profil
Melihat Jadwal Kerja
Clock In
Clock Out
Mengajukan Cuti
Melihat Riwayat Cuti
Melihat Slip Gaji
Melihat Riwayat Absensi
4. Modul Dashboard
Dashboard Admin
Menampilkan:
Statistik
Total Karyawan
Karyawan Aktif
Karyawan Cuti
Hadir Hari Ini
Terlambat Hari Ini
Payroll Bulan Ini
Grafik
Kehadiran Bulanan
Pengajuan Cuti
Payroll Bulanan
Dashboard User
Menampilkan:
Jadwal Kerja Hari Ini
Status Kehadiran
Sisa Cuti
Ringkasan Gaji Terakhir
Tombol Clock In
Tombol Clock Out
5. Modul Data Karyawan
Data Karyawan
Field
| Field | Tipe |
|---|---|
| Employee ID | Auto Generate |
| NIK | String |
| Nama Lengkap | String |
| Tempat Lahir | String |
| Tanggal Lahir | Date |
| Jenis Kelamin | Enum |
| Alamat | Text |
| String | |
| No HP | String |
| Jabatan | String |
| Departemen | String |
| Tanggal Masuk | Date |
| Status Karyawan | Tetap/Kontrak |
| Status Aktif | Active/Inactive |
| Foto | Upload |
6. Modul Jadwal Kerja
Master Shift
Shift Pagi
08:00 - 17:00
Shift Siang
13:00 - 22:00
Shift Malam
22:00 - 07:00
Jadwal Kerja
Admin dapat mengatur:
Shift Harian
Shift Mingguan
Shift Bulanan
Field
| Field | Tipe |
|---|---|
| Employee | FK |
| Shift | FK |
| Tanggal | Date |
| Jam Masuk | Time |
| Jam Pulang | Time |
7. Modul Absensi
Tujuan
Mencatat kehadiran karyawan.
Aturan Bisnis
Clock In
Karyawan melakukan absensi masuk.
Clock Out
Karyawan melakukan absensi pulang.
Validasi Wajib
Dalam 1 Hari Hanya 1 Kali Absensi
Contoh:
Tanggal: 01 Januari 2026
✅ Clock In = Berhasil
❌ Clock In kedua = Ditolak
Pesan:
Anda sudah melakukan absensi masuk hari ini.
Clock Out
Hanya dapat dilakukan setelah Clock In.
Jika belum Clock In:
Anda belum melakukan Clock In.
Status Kehadiran
| Kondisi | Status |
|---|---|
| Tepat waktu | Hadir |
| Terlambat | Terlambat |
| Tidak hadir | Alpha |
| Sedang cuti | Cuti |
Data Absensi
| Field |
|---|
| Employee ID |
| Tanggal |
| Clock In |
| Clock Out |
| Lokasi GPS |
| Foto Selfie |
| Status |
8. Modul Cuti
Jenis Cuti
Cuti Tahunan
12 hari/tahun
Cuti Sakit
Sesuai kebijakan perusahaan
Cuti Melahirkan
Sesuai regulasi
Cuti Khusus
Menikah, keluarga meninggal, dll
Workflow
User
→ Ajukan Cuti
Admin
→ Review
Admin
→ Approve / Reject
User
→ Notifikasi
Data Pengajuan Cuti
| Field |
|---|
| Nomor Pengajuan |
| Employee |
| Jenis Cuti |
| Tanggal Mulai |
| Tanggal Selesai |
| Jumlah Hari |
| Alasan |
| Lampiran |
| Status |
9. Modul Payroll
Tujuan
Menghitung gaji otomatis berdasarkan data karyawan dan absensi.
Komponen Gaji Wajib
Pendapatan
Gaji Pokok
Wajib
Tunjangan Jabatan
Wajib
Tunjangan Kehadiran
Wajib
Tunjangan Transport
Wajib
Tunjangan Makan
Wajib
Bonus
Opsional
Lembur
Opsional
Potongan
BPJS Kesehatan
Wajib
BPJS Ketenagakerjaan
Wajib
Pajak PPh 21
Wajib
Potongan Alpha
Wajib
Potongan Keterlambatan
Opsional
Potongan Pinjaman
Opsional
Formula Payroll
Total Pendapatan
=
Gaji Pokok
+
Tunjangan Jabatan
+
Tunjangan Kehadiran
+
Tunjangan Transport
+
Tunjangan Makan
+
Bonus
+
Lembur
Total Potongan
=
BPJS
+
PPh21
+
Alpha
+
Keterlambatan
+
Pinjaman
Take Home Pay
=
Total Pendapatan
Total Potongan
Proses Payroll
Admin memilih periode.
Sistem membaca absensi.
Sistem menghitung komponen gaji.
Sistem menghasilkan payroll.
Admin approve payroll.
Slip gaji tersedia untuk user.
Slip Gaji
Berisi:
Nama Karyawan
Periode
Pendapatan
Potongan
Take Home Pay
Tanggal Pembayaran
Format:
PDF
Excel
10. Modul Laporan
Laporan Kehadiran
Filter:
Periode
Departemen
Karyawan
Output:
PDF
Excel
Informasi:
Hadir
Terlambat
Alpha
Cuti
Laporan Payroll
Filter:
Bulan
Tahun
Departemen
Output:
PDF
Excel
Informasi:
Gaji Pokok
Tunjangan
Potongan
THP
Laporan Cuti
Filter:
Periode
Jenis Cuti
Departemen
Output:
PDF
Excel
Informasi:
Pengajuan
Approved
Rejected
Sisa Cuti
11. Notifikasi Sistem
Admin
Pengajuan cuti baru
Payroll belum diproses
Karyawan terlambat
User
Cuti disetujui
Cuti ditolak
Payroll tersedia
Jadwal kerja berubah
12. Non Functional Requirements
Security
JWT Authentication
Password Hashing (bcrypt)
Role Based Access Control (RBAC)
HTTPS
Audit Log
Performance
Response Time < 3 detik
Mendukung 1.000+ karyawan
Concurrent User > 200
Compatibility
Desktop
Tablet
Mobile
13. Database Entity Relationship (High Level)
users
id
employee_id
email
password
role
employees
id
nik
name
department_id
position_id
departments
id
name
positions
id
name
shifts
id
shift_name
start_time
end_time
work_schedules
id
employee_id
shift_id
date
attendances
id
employee_id
attendance_date
clock_in
clock_out
status
leave_requests
id
employee_id
leave_type
start_date
end_date
status
payrolls
id
employee_id
period
gross_salary
deduction
take_home_pay
salary_components
id
payroll_id
component_name
amount
14. MVP Scope (Versi 1.0)
Included
✅ Login & RBAC
✅ Dashboard
✅ Data Karyawan
✅ Jadwal Kerja
✅ Absensi Clock In / Clock Out
✅ Pengajuan Cuti
✅ Approval Cuti
✅ Payroll Otomatis
✅ Slip Gaji PDF
✅ Laporan Kehadiran
✅ Laporan Payroll
✅ Laporan Cuti
Future Version (2.0)
Face Recognition Attendance
Mobile App Android/iOS
Fingerprint Integration
WhatsApp Notification
Recruitment Module (ATS)
Performance Appraisal (KPI)
Asset Management
Training Management (LMS)
Dokumen PRD ini sudah cukup detail untuk digunakan sebagai dasar pembuatan UI/UX, ERD Database, API Specification, dan Sprint Planning pengembangan aplikasi HRM berbasis web maupun mobile.

.png)
.png)











No comments:
Post a Comment