Buku Panduan 04: Penyelenggara Ujian (Organizer & Backoffice Manual)¶
Panduan operasional resmi bagi Ketua Penyelenggara (Organizer Owner), Manajer Ujian (Exam Manager), dan Administrator Kompetisi (Competition Admin) dalam mengoperasikan seluruh modul pengelolaan pada sistem Scola Assessment Standalone CBT (Baseline OS-v1.0).
Dokumen ini memandu siklus hidup persiapan lomba hingga penutupan hasil resmi: mulai dari pembentukan event & babak sesi, pembuatan butir soal dengan formula KaTeX, impor massal spreadsheet Excel/CSV, pendaftaran peserta massal dan penerbitan kode akses, hingga pembekuan peringkat olimpiade dan ekspor data yang aman dari manipulasi formula.
1. Lingkup Wewenang Penyelenggara¶
Sesuai matriks otorisasi OS-v1.0: - Exam Manager & Competition Admin berwenang mengelola struktur hierarki event, mengimpor peserta, dan membekukan form ujian sebelum pengerjaan dimulai (pre-admission freeze). - Author berwenang menyusun butir soal, kunci jawaban, dan rubrik analitik. - Organizer Owner & Named Approver berwenang memberikan persetujuan formal (approval note) untuk membekukan dan mempublikasikan hasil peringkat resmi ke publik. - Kemandirian 100% Produk: Seluruh modul operasional berjalan murni secara independen tanpa ketergantungan pada database, akun siswa, rombel, atau modul Odoo.
2. Navigasi Terpadu Penyelenggara (OrganizerNavbar.vue)¶
Bilah navigasi atas (top navigation bar) selalu tersedia di seluruh halaman backoffice untuk memudahkan perpindahan antar-modul:
+---------------------------------------------------------------------------------------------------------------+
| ⚡ Scola Assessment | 📊 Dashboard | 🗓️ Event & Sesi | 📝 Bank Soal | 👥 Peserta | 🛡️ Pengawas | ⚖️ Koreksi | 🏆 Hasil |
| CBT Standalone v1.0 | 💻 Cek SEB | [● Online] 👤 [email protected]|
+---------------------------------------------------------------------------------------------------------------+
Menu Navigasi & Tautannya:¶
- 📊 Dashboard (
/organizer): Pusat ringkasan statistik, telemetri, dan akses cepat ke sesi ujian aktif. - 🗓️ Event & Sesi (
/organizer/events): Pengaturan struktur kompetisi bertingkat, babak penyisihan s.d. final, dan durasi menit. - 📝 Bank Soal (
/organizer/questions): Pembuatan dan perbaikan soal, ekspresi KaTeX, impor Excel/CSV, serta kunci jawaban. - 👥 Peserta (
/organizer/participants): Impor massal CSV biodata peserta dan penerbitan kode akses terisolasi. - 🛡️ Pengawas (
/proctor/sess-1): Tautan langsung ke Command Center pengawasan ruang ujian. - ⚖️ Koreksi Esai (
/grading/sess-1): Tautan langsung ke antrean penilaian esai buta. - 🏆 Hasil & Ranking (
/organizer/results/sess-1): Rekapitulasi nilai, pembekuan peringkat resmi, dan ekspor berkas CSV. - 💻 Cek SEB (
/readiness): Halaman diagnostik untuk menguji kesiapan perangkat klien. - 👤 Profil & Keluar: Menampilkan email aktif beserta peran (Admin/Staff) dan tombol
Keluar(Logout).
3. Langkah 1: Pengelolaan Event & Sesi Ujian (/organizer/events)¶
Halaman ini digunakan untuk membentuk struktur perlombaan dan menentukan jendela waktu pengerjaan.
A. Membuat Event Baru:¶
- Pada bilah navigasi atas, klik menu
🗓️ Event & Sesi. - Di sudut kanan atas halaman, klik tombol biru:
👉+ Buat Event Baru - Jendela dialog modal Buat Event Ujian Baru akan terbuka:
- Judul Event: Masukkan nama lengkap kompetisi (contoh: Olimpiade Sains Matematika Nasional 2026).
- Slug URL: Masukkan identitas unik tautan huruf kecil dan tanda hubung tanpa spasi (contoh:
osmn-smp-2026). - Tipe Event: Pilih kategori yang sesuai dari dropdown:
Olimpiade(untuk kompetisi resmi dengan peringkat standar).Tryout(untuk simulasi / latihan peserta).Ujian Standar(untuk asesmen berkala).
- Deskripsi: Tuliskan ringkasan cakupan lomba atau petunjuk teknis pelaksanaan.
- Klik tombol:
Simpan Event - Event baru akan muncul dalam daftar kartu event backoffice.
B. Memeriksa Status Sesi & Tombol Aksi Cepat:¶
Setiap kartu event menampilkan daftar sesi yang telah dijadwalkan:
- Badge Status Form:
- 🔒 Published (Terkunci) (Pill Hijau): Soal dan aturan sesi telah dibekukan (frozen), siap digunakan untuk pengerjaan peserta. Sesi yang telah dimulai dilarang diubah strukturnya.
- 📝 Draft (Pill Kuning): Sesi masih dalam tahap penyusunan soal atau pendaftaran.
- Tombol Akses Cepat pada Baris Sesi:
- Tombol 🛡️ Pengawas: Membuka Command Center pengawasan untuk sesi tersebut.
- Tombol ⚖️ Koreksi: Membuka antrean penilaian esai untuk sesi tersebut.
- Tombol 🏆 Hasil: Membuka halaman audit peringkat resmi sesi tersebut.
- Tombol 💻 Runner: Menjalankan simulasi pengerjaan soal sebagai peserta uji.
4. Langkah 2: Manajemen Bank Soal & KaTeX Math (/organizer/questions)¶
Scola CBT mendukung formula matematika kompleks melalui KaTeX/LaTeX, toleransi angka numerik, dan rubrik analitik esai multi-kriteria.
A. Menambah Butir Soal Secara Manual:¶
- Klik menu
📝 Bank Soalpada bilah navigasi. - Klik tombol biru di pojok kanan atas:
👉+ Tambah Soal Manual - Formulir modal Tambah Butir Soal Baru akan terbuka:
- Kode Soal (Unik): Masukkan kode pengenal soal (contoh:
MATH8-Q01). - Tipe Soal: Pilih salah satu dari 3 tipe soal resmi OS-v1.0:
Pilihan Ganda (Single Answer)Isian Numerik (Angka / Toleransi)Esai / Uraian (Rubrik Analitik)
- Konten Soal: Ketikkan naskah soal. Untuk rumus matematika, apit formula dengan tanda dollar tunggal
$formula$(inline) atau tanda dollar ganda$$formula$$(blok tengah), contoh:
"Nilai dari $x^2 + \frac{1}{x^2}$ jika $x + \frac{1}{x} = 5$ adalah ..." - Mengisi Kunci Jawaban Sesuai Tipe:
- Untuk Pilihan Ganda:
- Tuliskan teks untuk opsi A, B, C, dan D.
- Pilih radio button lingkaran di sebelah kiri opsi yang merupakan kunci jawaban benar.
- Untuk Isian Numerik:
- Nilai Target Numerik: Masukkan angka jawaban benar (contoh:
23.0). - Toleransi Nilai (±): Masukkan toleransi pembulatan yang dapat diterima (contoh:
0.01).
- Nilai Target Numerik: Masukkan angka jawaban benar (contoh:
- Untuk Esai:
- Kunci jawaban akan dievaluasi melalui rubrik analitik di modul penilaian esai.
- Pembahasan Soal (Opsional): Tuliskan langkah penyelesaian lengkap untuk catatan panitia.
- Klik tombol:
Simpan Butir Soal
B. Mengimpor Soal Massal via Spreadsheet (Excel .xlsx / CSV):¶
Untuk memasukkan puluhan soal olimpiade secara cepat:
1. Klik tombol:
📥 Unduh Template CSV
(Simpan berkas contoh template_soal_scola.csv ke komputer Anda).
2. Buka template tersebut di Microsoft Excel atau Google Sheets. Isi kolom-kolom berikut:
- question_code: Kode unik soal.
- question_type: multiple_choice_single, numeric, atau essay.
- content: Teks soal (mendukung formula KaTeX).
- option_a, option_b, option_c, option_d: Teks opsi (khusus PG).
- correct_key: Huruf kunci benar (A, B, C, atau D).
- numeric_target: Angka target (khusus isian numerik).
- numeric_tolerance: Rentang toleransi desimal.
- explanation: Teks pembahasan soal.
3. Kembali ke halaman Bank Soal, klik tombol:
👉 📤 Impor Excel/CSV
4. Klik area file input dan pilih file .xlsx atau .csv yang telah Anda isi.
5. Tahap 1: Uji Validasi (Dry-Run):
- Klik tombol 🔍 Uji Validasi (Dry-Run).
- Sistem akan memeriksa seluruh baris, memastikan sintaks KaTeX valid, dan mengecek duplikasi kode soal tanpa memasukkan data ke database.
- Periksa ringkasan: Total Baris, Valid & Siap, serta daftar kesalahan jika ada baris yang gagal.
6. Tahap 2: Simpan ke Bank Soal (Commit):
- Jika hasil validasi telah bersih (0 error), klik tombol biru:
👉 💾 Simpan ke Bank Soal
- Seluruh butir soal akan otomatis masuk ke database dan siap dirakit ke dalam sesi ujian.
C. Merevisi Versi Butir Soal (Version Bump):¶
Jika ditemukan salah ketik atau perbaikan redaksi pada soal yang sudah tersimpan:
1. Temukan soal tersebut pada tabel Bank Soal.
2. Klik tombol + Revisi Versi pada kolom Aksi.
3. Konfirmasi dialog peramban. Sistem akan menaikkan versi soal (misal dari v1 menjadi v2).
4. Langkah ini melindungi integritas data: rekaman riwayat pengerjaan siswa lama tetap merujuk pada versi awal, sementara pengerjaan baru akan menggunakan versi revisi.
5. Langkah 3: Pendaftaran Peserta & Kredensial Akses (/organizer/participants)¶
Pendaftaran peserta pada CBT mandiri dilakukan secara terisolasi per event tanpa melibatkan pembuatan akun pengguna Odoo.
A. Alur Impor Biodata Peserta:¶
- Pada bilah navigasi, klik menu
👥 Peserta. - Klik tombol
📥 Unduh Template CSV. Berkas template memuat 4 kolom wajib:
participant_number,full_name,email,school_name - Lengkapi berkas CSV dengan data seluruh peserta lomba (contoh):
participant_number,full_name,email,school_name OSN-MAT-001,Ahmad Dani,[email protected],SMA Negeri 1 Yogyakarta OSN-MAT-002,Budi Santoso,[email protected],SMA Taruna Nusantara OSN-MAT-003,Citra Kirana,[email protected],SMA Negeri 8 Jakarta - Klik tombol Choose File pada kotak drop area dan pilih file CSV Anda.
- Klik tombol biru:
👉🚀 Mulai Impor CSV - Sistem memproses pendaftaran massal:
- Memverifikasi ketiadaan nomor peserta ganda (duplicate participant number).
- Menolak baris yang memiliki email atau nama kosong.
- Menampilkan kartu ringkasan hasil impor (Total Baris, Berhasil, Gagal).
B. Distribusi Kredensial Peserta:¶
Setelah impor sukses, tabel Kredensial Diterbitkan akan terisi secara otomatis:
- No. Peserta: Nomor identitas resmi (contoh: OSN-MAT-001).
- Nama Lengkap: Nama siswa.
- Slug Masuk Ujian: Tautan akses unik (contoh: /enter/ahmad-dani-8a12).
- Kode Akses (Access Code): Kode rahasia 6 karakter (contoh: K7X9W2).
[!TIP] CARA DISTRIBUSI KE SISWA:
Bagikan kepada masing-masing siswa hanya 3 informasi: Event Slug, Slug Masuk Ujian, dan Kode Akses. Setiap kode akses terikat khusus pada siswa tersebut dan hanya sah untuk 1 sesi pengerjaan terproteksi.
6. Langkah 4: Pembekuan Hasil & Peringkat Resmi (/organizer/results/:session_id)¶
Setelah seluruh peserta menyelesaikan ujian dan 100% soal esai telah selesai dinilai serta dimoderasi oleh dewan juri, penyelenggara berwenang membekukan dan mempublikasikan hasil.
A. Aturan Perangkingan Olimpiade Resmi (OS-v1.0):¶
- Menggunakan standar kompetisi murni: Standard Competition Ranking (1, 1, 3).
- Contoh: Jika peringkat 1 diraih oleh 2 siswa dengan nilai sama (misal 95.00 dan 95.00), maka keduanya menempati Peringkat #1, dan peserta berikutnya menempati Peringkat #3 (tidak ada peringkat 2).
- Larangan Speed Tie-Break (D05): Waktu penyerahan ujian atau kecepatan pengerjaan DILARANG KERAS dijadikan faktor penentu peringkat. Peringkat murni ditentukan oleh akumulasi skor.
B. Membekukan & Menerbitkan Hasil:¶
- Buka halaman hasil sesi melalui menu
🏆 Hasil & Rankingatau melalui tombolHasildi daftar sesi. - Tinjau tabel Peringkat Resmi Hasil Ujian:
- Pastikan nama, asal sekolah, total skor, dan nomor peringkat telah teragregasi secara benar.
- Di sudut kanan atas halaman, klik tombol hijau:
👉Bekukan & Publikasikan Hasil - Jendela modal konfirmasi akan muncul:
- Catatan Persetujuan & Justifikasi Dewan: Ketikkan berita acara keputusan (contoh: "Seluruh penilaian esai telah selesai dimoderasi dan disahkan oleh Ketua Dewan Juri Nasional").
- Kotak Centang
Publikasikan hasil untuk dapat dilihat peserta/publik: Beri tanda centang jika hasil boleh diakses secara terbuka. - Klik tombol hijau:
Konfirmasi Publikasi. - Sistem akan membuat snapshot versi publikasi baru yang bersifat Append-Only (versi bertambah monoton, misal dari
v1menjadiv2). Versi lama tetap tersimpan utuh di riwayat (Audit Trail Supersession - RM-009).
C. Mengunduh Rekapitulasi Data (Ekspor CSV Terproteksi):¶
Di sudut kanan atas halaman, tersedia 3 tombol ekspor data:
- 📥 Rekap Nilai CSV: Berkas rekapitulasi nilai akhir seluruh peserta lengkap dengan rincian skor per tipe soal.
- 📋 Presensi CSV: Berkas rekapitulasi kehadiran, waktu mulai, waktu submit, dan durasi pengerjaan.
- ⚠️ Insiden CSV: Berkas rekapitulasi seluruh insiden, catatan peringatan pengawas, dan log tindakan beralasan.
[!NOTE] PROTEKSI FORMULA INJECTION (AC-20):
Seluruh berkas CSV yang diunduh dari sistem telah disanitasi secara otomatis terhadap karakter berisiko (=,+,-,@) sehingga aman dibuka menggunakan Microsoft Excel tanpa risiko eksekusi formula berbahaya.
7. Catatan Kebijakan Rilis Certified v1 (Penonaktifan Sertifikat)¶
Sesuai keputusan arsitektur D04 / AC-26 / RM-011:
- Fitur cetak dan verifikasi sertifikat publik dinonaktifkan pada rilis Certified v1 (seluruh endpoint publik terkait sertifikat mengembalikan HTTP 404 Not Found).
- Kolom Status Sertifikat pada tabel peringkat menampilkan label "Dinonaktifkan di v1".
- Bukti kelulusan dan pengakuan kejuaraan resmi sepenuhnya bersandar pada Laporan Rekapitulasi Peringkat Resmi, tanda terima durabel peserta, dan berita acara penutupan event.