Friday, 5 June 2026

Aplikasi HRM PRO

 


































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

FieldTipe
Employee IDAuto Generate
NIKString
Nama LengkapString
Tempat LahirString
Tanggal LahirDate
Jenis KelaminEnum
AlamatText
EmailString
No HPString
JabatanString
DepartemenString
Tanggal MasukDate
Status KaryawanTetap/Kontrak
Status AktifActive/Inactive
FotoUpload

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

FieldTipe
EmployeeFK
ShiftFK
TanggalDate
Jam MasukTime
Jam PulangTime

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

KondisiStatus
Tepat waktuHadir
TerlambatTerlambat
Tidak hadirAlpha
Sedang cutiCuti

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

  1. Admin memilih periode.

  2. Sistem membaca absensi.

  3. Sistem menghitung komponen gaji.

  4. Sistem menghasilkan payroll.

  5. Admin approve payroll.

  6. 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.




No comments:

Post a Comment

Aplikasi HRM PRO

  https://www.youtube.com/watch?v=FOZaVPXNmbI https://www.youtube.com/watch?v=XaSQZNIoyYM https://www.youtube.com/watch?v=ir_ejHWB3mE https:...