User Manual: HR Appraisal Survey Scoring¶
Panduan Administrator¶
Modul: HR Appraisal Survey Scoring v18.0.1.3.0 Tanggal: 3 Maret 2026
Daftar Isi¶
- Pendahuluan
- Arsitektur & Workflow Modul
- Instalasi & Dependensi
- Konfigurasi Scoring Rules
- Konfigurasi Survey (Pertanyaan)
- Membuat Appraisal
- Proses Scoring Otomatis
- Konfigurasi Bobot & Divisor pada Appraisal
- Melihat Hasil Scoring
- Analisis & Reporting
- Cetak Laporan PDF
- Cron Job (Safety Net)
- Manajemen Hak Akses
- Band Klasifikasi
- Tips & Troubleshooting
1. Pendahuluan¶
Modul HR Appraisal Survey Scoring mengotomasi proses penilaian kinerja karyawan dengan mengintegrasikan modul Appraisal dan Survey di Odoo 18. Modul ini menghitung skor performa berdasarkan jawaban survey yang dikategorikan ke dalam dua area:
- Behaviour (Professional Quality) — Penilaian kualitas perilaku profesional
- KPI (Key Performance Indicator) — Penilaian pencapaian target kerja
Setiap jawaban survey dikonversi menjadi skor menggunakan Scoring Rules yang dapat dikonfigurasi, kemudian diagregasi menjadi Final Score dengan klasifikasi Band I - IV.
2. Arsitektur & Workflow Modul¶
Diagram Alur Kerja¶
┌─────────────────────────────────────────────────────────────┐
│ FASE PERSIAPAN (Admin) │
├─────────────────────────────────────────────────────────────┤
│ │
│ 1. Setup Scoring Rules (threshold → score mapping) │
│ ↓ │
│ 2. Buat/Edit Survey │
│ └── Konfigurasi pertanyaan: │
│ ├── Area (Behaviour / KPI) │
│ ├── Target Rating / Target Value │
│ ├── Bobot (KPI) │
│ ├── Kode & Faktor │
│ └── Evidence (opsional) │
│ ↓ │
│ 3. Buat Appraisal untuk karyawan │
│ └── Kirim survey ke responden │
│ │
└────────────────────────┬────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ FASE PENGISIAN (Responden) │
├─────────────────────────────────────────────────────────────┤
│ │
│ 4. Responden mengisi survey │
│ ├── Jawab pertanyaan (skala/angka) │
│ ├── Upload evidence (jika diaktifkan) │
│ └── Submit survey │
│ │
└────────────────────────┬────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ FASE SCORING (Otomatis) │
├─────────────────────────────────────────────────────────────┤
│ │
│ 5. Survey selesai → Trigger otomatis │
│ ├── Tentukan tipe rater (self/manager/colleague/dll) │
│ ├── Untuk setiap jawaban: │
│ │ ├── Ekstrak nilai numerik │
│ │ ├── Hitung achievement = nilai / target │
│ │ ├── Lookup score dari Scoring Rules │
│ │ └── Hitung weighted score (KPI) │
│ └── Buat Fact records │
│ ↓ │
│ 6. Agregasi hasil │
│ ├── Behaviour: rata-rata per kode → score → subtotal │
│ ├── KPI: rata-rata per kode → score × bobot → subtotal │
│ └── Final Score = (Beh.Avg × Bobot) + (KPI × Bobot) │
│ ↓ │
│ 7. Klasifikasi Band (I/II/III/IV) │
│ │
└────────────────────────┬────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ FASE REVIEW (Admin/Manager) │
├─────────────────────────────────────────────────────────────┤
│ │
│ 8. Review hasil di form Appraisal │
│ 9. Analisis via Pivot/Graph │
│ 10. Cetak laporan PDF │
│ │
└─────────────────────────────────────────────────────────────┘
Alur Detail Scoring¶
Jawaban Survey (numerik)
↓
Achievement = Jawaban / Target
↓
Score = Scoring Rule lookup (area, achievement)
↓
┌────┴────┐
│ │
Behaviour KPI
│ │
│ Weighted Score = Score × Weight
│ │
↓ ↓
Subtotal A Subtotal B
(sum score) (sum weighted score)
│ │
↓ ↓
Avg A = KPI Total =
Subtotal/ Subtotal B
Divisor
│ │
↓ ↓
Final = (Avg A × Bobot Behaviour) + (KPI Total × Bobot KPI)
↓
Band I/II/III/IV
3. Instalasi & Dependensi¶
Dependensi Modul¶
| Modul | Keterangan |
|---|---|
oh_appraisal | Modul appraisal dasar |
survey | Modul survey Odoo |
hr | Modul Human Resources |
Langkah Instalasi¶
- Salin folder modul
hr_appraisal_survey_scoringke direktori addons Odoo - Restart server Odoo
- Masuk menu Apps, klik Update Apps List
- Cari "HR Appraisal Survey Scoring" dan klik Install
- Setelah instalasi, scoring rules default akan otomatis dibuat
4. Konfigurasi Scoring Rules¶
Scoring Rules menentukan bagaimana rasio achievement dikonversi menjadi skor numerik.
Mengakses Scoring Rules¶
Menu: Appraisals → Configuration → Scoring Rules
Default Rules¶
Modul ini menyediakan 8 rules default yang langsung aktif setelah instalasi:
Behaviour Rules¶
| Range Achievement | Score |
|---|---|
| ≤ 80% | 1.0 |
| 80% - 100% | 2.0 |
| 100% - 130% | 3.0 |
| > 130% | 4.0 |
KPI Rules¶
| Range Achievement | Score |
|---|---|
| ≤ 70% | 1.0 |
| 70% - 90% | 2.0 |
| 90% - 110% | 3.0 |
| > 110% | 4.0 |
Membuat/Mengubah Scoring Rule¶
- Buka menu Scoring Rules
- Klik New atau edit rule yang ada
- Isi field berikut:
| Field | Keterangan | Contoh |
|---|---|---|
| Name | Deskripsi rule | "Behaviour: (80%, 100%] → Score 2" |
| Area | Kategori penilaian | Behaviour atau KPI |
| Threshold From | Batas bawah (eksklusif) | 0.80 |
| Threshold To | Batas atas (inklusif) | 1.00 |
| Score | Nilai yang diberikan | 2.0 |
| Sequence | Urutan evaluasi | 10 |
| Active | Aktif/non-aktif | ✓ |
| Company | Multi-company (opsional) | - |
Penting: - Threshold From bersifat eksklusif (tidak termasuk nilai tersebut) - Threshold To bersifat inklusif (termasuk nilai tersebut) - Gunakan nilai sangat kecil (mis. -9999) untuk batas bawah terkecil - Gunakan nilai sangat besar (mis. 9999) untuk batas atas terbesar - Rules dievaluasi berdasarkan Sequence (urutan)
5. Konfigurasi Survey (Pertanyaan)¶
Setiap pertanyaan survey yang akan ikut dinilai harus dikonfigurasi melalui tab khusus di form pertanyaan.
Langkah Konfigurasi¶
- Buka survey yang akan digunakan untuk appraisal
- Masuk ke detail pertanyaan (klik pada pertanyaan)
- Isi konfigurasi di dua tab berikut:
Tab: Appraisal Scoring Mapping¶
| Field | Keterangan | Wajib |
|---|---|---|
| Appraisal Scoring Enabled | Centang untuk mengaktifkan scoring pada pertanyaan ini | Ya |
| Area | Pilih: Behaviour atau KPI | Ya |
| Item Code | Kode unik untuk pengelompokan (mis. "B1", "KPI-01") | Ya |
| Factor | Nama faktor/grup (mis. "Communication", "Sales Target") | Tidak |
| Target Rating | Target untuk Behaviour (default: 3.0) | Ya (Behaviour) |
| Target Value | Target untuk KPI dalam angka bulat (default: 100 = 100%) | Ya (KPI) |
| Weight | Bobot untuk item KPI dalam angka bulat (mis. 15 = 15%) | Ya (KPI) |
Tab: Evidence Settings¶
| Field | Keterangan |
|---|---|
| Allow Evidence Link | Izinkan responden mengirim URL sebagai bukti |
| Allow Evidence File | Izinkan responden mengupload file sebagai bukti |
Tipe Pertanyaan yang Didukung¶
| Area | Tipe Pertanyaan | Keterangan |
|---|---|---|
| Behaviour | Scale (Likert) | Nilai skala diekstrak sebagai angka |
| KPI | Numerical Box | Angka langsung dari input |
Contoh Konfigurasi Behaviour¶
Pertanyaan: "Bagaimana kemampuan komunikasi karyawan?"
├── Appraisal Scoring Enabled: ✓
├── Area: Behaviour
├── Item Code: B1
├── Factor: Communication
├── Target Rating: 3.0
└── Evidence: (opsional)
Contoh Konfigurasi KPI (Persentase)¶
Pertanyaan: "Berapa pencapaian target penjualan? (dalam %)"
├── Appraisal Scoring Enabled: ✓
├── Area: KPI
├── Item Code: KPI-01
├── Factor: Sales
├── Target Value: 100 (baseline 100%)
├── Weight: 25 (25%)
└── Evidence: ✓ Link & File
Responden mengisi angka bulat, misal: 90 untuk pencapaian 90%.
Contoh Konfigurasi KPI (Nilai Absolut)¶
Pertanyaan: "Berapa total penjualan yang dicapai? (dalam milyar)"
├── Appraisal Scoring Enabled: ✓
├── Area: KPI
├── Item Code: KPI-02
├── Factor: Revenue
├── Target Value: 5.0 (target 5 milyar)
├── Weight: 25 (25%)
└── Evidence: ✓ Link & File
Responden mengisi angka realisasi, misal: 4.5 untuk 4.5 milyar.
Tips Konfigurasi Pertanyaan¶
- Item Code yang sama pada pertanyaan berbeda akan diagregasi (rata-rata) saat scoring
- Total Weight semua KPI sebaiknya berjumlah 100 (100%)
- Pertanyaan yang tidak dicentang "Appraisal Scoring Enabled" akan diabaikan saat scoring
- Satu survey bisa memiliki campuran pertanyaan Behaviour dan KPI
6. Membuat Appraisal¶
- Buka menu Appraisals
- Buat appraisal baru untuk karyawan
- Isi field identitas appraisal:
| Field | Keterangan | Contoh |
|---|---|---|
| Appraisal No | Nomor urut otomatis (auto-generated) | AP001, AP002, ... |
| Appraisal Name | Nama/judul periode penilaian | "Penilaian Q1 2026" |
| Period Start | Tanggal awal periode penilaian | 01/01/2026 |
| Period End | Tanggal akhir periode penilaian | 31/03/2026 |
- Kirim survey ke responden yang ditentukan (employee, manager, colleague, dll.)
- Sistem akan otomatis mendeteksi tipe rater:
| Tipe Rater | Keterangan |
|---|---|
| Employee | Karyawan yang dinilai (self-assessment) |
| Manager | Atasan langsung karyawan |
| Collaborator | Bawahan/subordinat |
| Colleague | Rekan kerja |
| Unknown | Tidak terdeteksi |
7. Proses Scoring Otomatis¶
Scoring dihitung secara otomatis ketika responden menyelesaikan survey. Alur:
- Responden mengklik Submit pada survey
- Status survey berubah menjadi
done - Hook
_mark_done()otomatis memanggilaction_compute_scoring() - Sistem:
- Menghapus fact records lama (jika ada)
- Membuat fact records baru untuk setiap jawaban
- Mengagregasi hasil ke summary fields di appraisal
- Menentukan scoring state dan band
Manual Recompute¶
Jika perlu menghitung ulang (misalnya setelah mengubah scoring rules):
- Buka form Appraisal
- Klik tombol Compute Scoring
- Scoring akan dihitung ulang dari awal
Catatan: Proses ini bersifat idempotent — menjalankan ulang akan menghasilkan hasil yang sama selama data tidak berubah.
8. Konfigurasi Bobot & Divisor pada Appraisal¶
Setiap appraisal memiliki konfigurasi bobot yang dapat disesuaikan di tab Scoring Summary.
Bobot Area¶
| Field | Default | Keterangan |
|---|---|---|
| Behaviour Weight | 0.30 (30%) | Bobot kontribusi Behaviour ke Final Score |
| KPI Weight | 0.70 (70%) | Bobot kontribusi KPI ke Final Score |
Behaviour Divisor (Otomatis)¶
| Field | Keterangan |
|---|---|
| Behaviour Divisor | Auto-computed dari jumlah kode behaviour unik yang ada di jawaban survey |
| Manager Profile | Centang jika karyawan adalah manager (untuk referensi, tidak mengubah divisor) |
Divisor dihitung otomatis saat scoring dijalankan. Misalnya jika survey memiliki 13 kode behaviour unik (B1 s.d. B13), maka divisor = 13. Jika hanya 6 kode (B1 s.d. B6), maka divisor = 6.
Formula Final Score:
Final Score = (Behaviour Average × Behaviour Weight) + (KPI Weighted Total × KPI Weight)
Dimana:
Behaviour Average = Behaviour Subtotal / Divisor (auto-computed)
KPI Weighted Total = Σ (KPI Score × Weight / 100)
9. Melihat Hasil Scoring¶
Pada Form Appraisal¶
Setelah scoring dihitung, tab Scoring Summary menampilkan:
| Field | Keterangan |
|---|---|
| Scoring State | Not Computed / Partial / Computed |
| Last Computed | Tanggal dan waktu terakhir dihitung |
| Behaviour Subtotal | Total score behaviour |
| Behaviour Average | Rata-rata behaviour (subtotal/divisor) |
| KPI Weighted Subtotal | Total weighted score KPI |
| Final Score | Skor akhir performa |
| Band | Klasifikasi: I, II, III, atau IV |
Smart Button¶
Di bagian atas form appraisal terdapat smart button yang menampilkan Final Score. Klik untuk membuka detail fact records dalam pivot view.
List View Appraisal¶
Kolom tambahan pada list view: - Final Score - Band - Scoring State
10. Analisis & Reporting¶
Pivot & Graph Analysis¶
Menu: Appraisals → Reporting → Performance Review Analysis
View yang tersedia: - Pivot View: Analisis multi-dimensi (baris: employee, area, kode; ukuran: score, weighted score) - Graph View: Grafik batang per kode item - List View: Detail semua fact records termasuk evidence
Filter & Group By¶
| Filter | Keterangan |
|---|---|
| Area: Behaviour | Tampilkan hanya data behaviour |
| Area: KPI | Tampilkan hanya data KPI |
| Rater: Employee | Self-assessment saja |
| Rater: Manager | Penilaian atasan saja |
| Group By | Keterangan |
|---|---|
| Employee | Per karyawan |
| Appraisal | Per periode appraisal |
| Area | Per area (Behaviour/KPI) |
| Factor | Per faktor |
| Rater Type | Per tipe penilai |
| Code | Per kode item |
11. Cetak Laporan PDF¶
Langkah Cetak¶
- Buka form Appraisal yang sudah memiliki scoring
- Klik tombol Print Performance Review
- PDF akan diunduh/ditampilkan
Isi Laporan PDF¶
Laporan berjudul "PENILAIAN HASIL KERJA DAN POTENSI KARYAWAN" berisi:
- Header — Identitas karyawan (Nama, NIK, Jabatan, Perusahaan, Department, Level, Periode) + Appraisal No, Appraisal Name, Period Start/End
- Section A: Professional Quality (Behaviour) — Tabel faktor, kode, indikator, target, final rating, achievement %, score
- Section B: Pencapaian Kerja (KPI) — Tabel kode, deskripsi, target, realisasi, achievement %, nilai, bobot, nilai akhir
- Total Nilai dan Bobot — Tabel komponen, nilai, bobot, hasil akhir
- Ranking Penilaian Umum — Tabel band I-IV dengan tanda centang pada band yang sesuai
- Rekomendasi — Checkbox rekomendasi yang dipilih (lihat daftar di bawah)
- Final Evaluation — Evaluasi naratif (jika diisi)
Rekomendasi (v18.0.1.3.0)¶
Di form Appraisal, admin/manager dapat mencentang rekomendasi berikut yang akan muncul di laporan PDF:
| Checkbox | Keterangan |
|---|---|
| Pengakhiran PKWT | Mengakhiri kontrak kerja waktu tertentu |
| Perpanjangan PKWT 12 Bulan | Memperpanjang kontrak 12 bulan |
| Diangkat Pegawai Tetap | Direkomendasikan menjadi karyawan tetap |
| Promosi (Jabatan/Golongan) | Direkomendasikan naik jabatan/golongan |
| Kenaikan Gaji (Khusus/Berkala) | Direkomendasikan kenaikan gaji |
| Mutasi / Rotasi | Direkomendasikan untuk mutasi/rotasi |
12. Cron Job (Safety Net)¶
Modul ini memiliki cron job harian sebagai jaring pengaman:
- Nama: Appraisal: Recompute Scoring (Safety Net)
- Frekuensi: Setiap hari
- Fungsi: Mencari appraisal yang:
- Sudah dikirim (
check_sent = True) - Scoring state belum
computed - Memiliki minimal 1 survey response yang selesai
- Aksi: Otomatis menghitung ulang scoring
Cron ini menangani kasus dimana trigger otomatis terlewat (misalnya karena error server saat survey di-submit).
13. Manajemen Hak Akses¶
Security Groups¶
| Group | Hak Akses | Anggota Default |
|---|---|---|
| Scoring Viewer | Lihat scoring facts dan report | Semua karyawan appraisal |
| Scoring Manager | CRUD scoring rules, compute scoring, kelola semua data | Administrator |
Aturan Akses Model¶
| Model | Manager | Viewer | User |
|---|---|---|---|
| Scoring Rule | CRUD | Read | Read |
| Appraisal Survey Fact | CRUD | Read | Read |
Record Rules¶
| Rule | Keterangan |
|---|---|
| Fact (Employee) | Viewer hanya bisa melihat fact dari appraisal yang dia buat atau appraisal tentang dirinya |
| Fact (Manager) | Manager bisa melihat semua fact |
| Scoring Rule (Multi-company) | Rules terlihat jika tanpa company atau company sesuai user |
Visibilitas Tombol¶
- Tombol Compute Scoring hanya terlihat oleh group
scoring_manager - Tombol Print Performance Review terlihat oleh group
scoring_manager - Menu Configuration → Scoring Rules hanya untuk
scoring_manager - Menu Reporting → Performance Review Analysis untuk
scoring_viewer
14. Band Klasifikasi¶
| Band | Range Score | Keterangan |
|---|---|---|
| Band IV | 3.6 – 4.0 | Excellent / Sangat Baik |
| Band III | 2.6 – 3.5 | Good / Baik |
| Band II | 1.6 – 2.5 | Needs Improvement / Perlu Peningkatan |
| Band I | < 1.6 | Poor / Kurang |
15. Tips & Troubleshooting¶
Checklist Sebelum Memulai Appraisal¶
- Scoring Rules sudah dikonfigurasi (atau gunakan default)
- Survey sudah dibuat dengan pertanyaan yang benar
- Setiap pertanyaan yang relevan sudah diaktifkan scoring mapping-nya
- Area, kode, faktor, dan target sudah diisi
- Total bobot KPI = 1.0 (100%)
- Evidence settings sudah diatur sesuai kebutuhan
Masalah Umum¶
| Masalah | Penyebab | Solusi |
|---|---|---|
| Scoring state "Not Computed" | Belum ada survey yang selesai | Tunggu responden submit survey |
| Scoring state "Partial" | Hanya satu area yang punya data | Pastikan kedua area (Behaviour & KPI) memiliki jawaban |
| Score 0 pada item | Pertanyaan tidak diaktifkan scoring | Centang "Appraisal Scoring Enabled" pada pertanyaan |
| Behaviour Average terlalu kecil | Kode behaviour kurang lengkap | Pastikan semua pertanyaan behaviour memiliki Item Code unik yang benar |
| Final Score tidak berubah setelah edit rules | Scoring belum dihitung ulang | Klik "Compute Scoring" untuk recompute |
| Evidence tidak muncul di fact | Evidence fields belum diaktifkan | Aktifkan di tab Evidence Settings pertanyaan |
Best Practices¶
- Konsistensi Kode: Gunakan format kode yang konsisten (mis. B1-B13 untuk behaviour, KPI-01 s.d. KPI-10 untuk KPI)
- Test Dulu: Sebelum deploy, buat appraisal uji coba dan isi survey untuk memastikan scoring berjalan benar
- Backup Rules: Catat scoring rules yang digunakan sebelum mengubah, untuk audit trail
- Review Bobot: Pastikan
Behaviour Weight + KPI Weight = 1.0untuk hasil yang akurat - Divisor: Divisor dihitung otomatis dari jumlah kode behaviour unik — pastikan kode (Item Code) di pertanyaan survey sudah benar dan konsisten
Dokumen ini adalah panduan administrator untuk modul HR Appraisal Survey Scoring v18.0.1.3.0