Bagi sekolah di era digital, menyelenggarakan ujian berbasis komputer (Computer Based Test / CBT) adalah agenda wajib penentu nasib evaluasi belajar siswa. Namun, realita di lapangan sering kali diwarnai drama tahunan yang memicu keringat dingin: server lokal lab mendadak down tepat jam 07.30 pagi, file VHD rusak, sinkronisasi gagal, gambar soal silang merah (pecah), hingga siswa kehilangan jawaban saat router WiFi padam.
Jika sekolah pada umumnya terbelenggu oleh arsitektur monolitik jadul (seperti Candy CBT, BeeSMART, atau Moodle lokal tanpa proteksi beban), CBT Sekar 7 menghadirkan standar baru: High-Availability Dual-Origin Architecture yang mengawinkan server utama us.sekolahkartini7.web.id (ArenHost) dengan server cadangan otomatis cbt.sekolahkartini7.web.id (Railway Cloud Standby Container).
Klarifikasi Anti-Gimmick: "Apakah Ini Jebakan Marketing (Bait-and-Switch)?" — Mari Buka-Bukaan!
Banyak software di luar sana memberi embel-embel 'Gratis di awal', namun begitu data ribuan siswa masuk dan ujian tengah berjalan, tiba-tiba akun dikunci dan sekolah dipaksa membayar tagihan mahal untuk membuka akses (menyandera masa depan ujian sekolah).
Di CBT Sekar 7, praktik kotor tersebut TIDAK AKAN PERNAH terjadi karena:
- Tidak Ada Penguncian Fitur Paksa: Status Mitra Swadaya tetap bebas memakai bank soal, ujian, monitoring, dan download nilai tanpa paksaan membayar.
- Data Milik Sekolah Sendiri: Skema database terisolasi memastikan data siswa dan soal adalah milik penuh sekolah dan dapat diekspor kapan saja ke format CSV / Excel / SQL.
- Pengadaan Resmi via SIPLah: Kemitraan Gotong Royong dilakukan resmi melalui SIPLah Toko Ladang (sah dana BOS, ada faktur pajak, kuitansi digital, & SPJ). Tidak ada pungutan liar ke rekening pribadi.
- Misi Pendidikan Berkelanjutan: Lahir dari gerakan gotong royong digital Pekalongan & Batang, bukan skema komersialisasi predator.
📐 1. Diagram Arsitektur Sebenarnya: Dual-Origin High-Availability
TOPOLOGI END-TO-END CBT SEKAR 7 (DUAL-ORIGIN ACTIVE FAILOVER)
[ 📱/💻 600 - 1.000+ Siswa & Guru (Web Browser / Smartphone / Lab PC / Barcode Scan) ]
│
▼ (HTTPS / TLS 1.3 / HTTP/3 QUIC)
┌────────────────────────────────────────────────────────────────────────────────┐
│ CLOUDFLARE EDGE NETWORK (DNS & WAF PROXY) │
│ - Anycast DNS & Origin IP Masking (Anti-Direct Port Scanning) │
│ - Brotli Compression (~76% Hemat Kuota) & HTTP/3 QUIC Multiplexing │
│ - Edge Static Cache (HIT pada Assets & JS Bundle, DYNAMIC pada Simpan Jawaban)│
└───────────────────┬────────────────────────────────────────┬───────────────────┘
│ (Primary Node) │ (Standby Backup Node)
▼ ▼
┌────────────────────────────────────────┐ Dual-Sync ┌────────────────────────────────────────┐
│ ARENHOST PRODUCTION │◄────────────►│ RAILWAY CLOUD STANDBY │
│ (us.sekolahkartini7.web.id) │ (FastAPI & │ (cbt.sekolahkartini7.web.id) │
│ - CloudLinux LVE / PHP 8.2 LiteSpeed │ FTP Bridge) │ - FrankenPHP Caddy Standalone │
│ - Auto-Redirect via BackupService │ │ - 1-Klik Tujuan Failover Barcode │
│ - Smart Remote Image Fetching │ │ - Image Mirror Fallback Source │
└───────────────────┬────────────────────┘ └───────────────────┬────────────────────┘
│ │
▼ ▼
┌────────────────────────────────────────┐ ┌────────────────────────────────────────┐
│ REDIS CACHE & DRAFT BUFFER │ │ POSTGRESQL 15/16 TIER │
│ - Debounce Batch Answer (500ms-2s) │◄────────────►│ - Dedicated Schema Isolation (121) │
│ - Redis Hash Draft Buffer │ │ - Timeout Guard 7 Detik / 500 Pool │
│ - Circuit Breaker (Fallback to DB) │ │ - Staggered Heartbeat (25-35 Detik) │
└────────────────────────────────────────┘ └────────────────────────────────────────┘
⚙️ 2. Perubahan Spesifikasi Nyata: Bedah Fitur Failover & Backup CBT
🎯 Inovasi Baru: 1-Klik Barcode Redirect ke cbt.sekolahkartini7.web.id
Zero Re-Print Guarantee
Masalah Klasik Ujian: Jika server utama down, operator sekolah biasanya panik mencetak ulang ratusan lembar kartu barcode meja yang berisi URL baru, atau meminta guru menuliskan alamat link pengganti di papan tulis yang memicu kebingungan siswa.
Solusi Nyata CBT Sekar 7 (services/BackupRedirectService.php):
Sistem dilengkapi tombol toggle darurat di portal proktor. Ketika server ArenHost dialihkan, modul index.php otomatis mencegat seluruh request scan barcode (?seat_token), halaman login, maupun link exam, lalu me-redirect siswa secara instan (HTTP 302) ke cbt.sekolahkartini7.web.id.
🖼️ Dual-Mirror Image Auto-Healing (Solusi Tuntas Gambar Soal Pecah)
Spesifikasi Teknis: Diimplementasikan pada index.php & question_sanitizer.js. Jika sebuah gambar soal tidak ditemukan di disk server lokal (misalnya baru diunggah guru di salah satu node atau sinkronisasi tertunda), sistem secara otomatis:
- Mengecek ketersediaan di MinIO Public Cloud Object Storage.
- Jika MinIO belum ada, engine melakukan smart remote fetch ke mirror seberang (
cbt.sekolahkartini7.web.id↔us.sekolahkartini7.web.id). - Memverifikasi validitas berkas biner (magic bytes header JPEG, PNG, GIF, WEBP, SVG) untuk mencegah injeksi skrip berbahaya.
- Menyimpan otomatis ke cache lokal dengan izin
0644dan melayani browser dengan headerX-CBT-Image-Source: Remote-Cached+Cache-Control: immutable.
⚡ Redis Hash Draft Buffer & Debounced Batch Answer Sync
Spesifikasi Teknis (Update 2026): Berdasarkan integrasi core/Cache.php dan assets/student_exam_storage_addon.js, saat 1.000 siswa serentak memilih opsi jawaban (A/B/C/D), data tidak langsung memukul kueri UPDATE PostgreSQL.
- Jawaban dikumpulkan terlebih dahulu di peramban siswa dengan Debounce Timer (500ms – 2.000ms).
-
Setibanya di backend, jawaban ditampung di Redis Hash Draft Buffer (
exam_draft:{tenant}:{exam_id}:{user_id}). - Kueri database dieksekusi secara batch bulk commit, memangkas write I/O PostgreSQL hingga 95% dan meniadakan risiko database lock / deadlock saat detik-detik akhir ujian.
💾 Offline Encrypted CSV Answer Backup + Live Preview Integrity Check
Spesifikasi Teknis: Jika BTS seluler sekolah tersambar petir atau kabel fiber optik putus total, ujian siswa tetap berjalan mulus di browser (React SPA + LocalStorage).
-
Siswa dapat mengekspor jawaban terenkripsi (AES-256) ke dalam file
.csvcadangan langsung dari HP masing-masing. -
Di sisi proktor, hadir fitur Offline Answer Import Service with Live Preview (
services/OfflineAnswerImportService.php). Proktor dapat mengunggah CSV, melihat preview komparasi jawaban siswa sebelum di-ingest, memverifikasi tanda tangan HMAC integritas, dan mengimpor nilai ke database tanpa risiko salah timpa.
Pemberitahuan Kejujuran Siber: Memahami Keamanan Tanpa Ilusi "100% Kebal Celah"
Dalam etika rekayasa perangkat lunak modern (Software Engineering Standard), siapapun yang berani mengklaim sistemnya "100% mutlak aman tanpa celah" sesungguhnya sedang menjual ilusi kosong. Baik platform raksasa kelas dunia sekaliber Google, Microsoft, maupun sistem perbankan terpusat, selalu memiliki potensi risiko celah baru seiring berkembangnya teknik eksploitasi.
Lantas, bagaimana kita menyikapi kenyataan teknis ini secara bijak? CBT Sekar 7 menerapkan 3 Prinsip Ketahanan Terbuka (Open Resilience):
📊 3. Hasil Uji Beban Nyata & Bukti Forensik Log Request (Bukan Hoax / Brosur Palsu)
Klaim kapasitas tanpa metode uji terbuka adalah omong kosong. Di CBT Sekar 7, hasil pengujian beban ini dieksekusi secara nyata menggunakan Grafana k6 (open-source enterprise load testing) dengan simulasi ramp-up 600 hingga 1.000 siswa aktif serentak yang mengirimkan heartbeat jawaban berkala setiap 25–35 detik.
| Parameter Pengujian | Standar Toleransi k6 | Hasil Nyata CBT Sekar 7 | Status Kelulusan |
|---|---|---|---|
| Simulasi Pengguna Serentak | 600 – 1.000 VUs (Virtual Users) | 600 – 1.000 Siswa Aktif | ✅ Lolos Optimal |
| Tingkat Kegagalan (Failure Rate) | Target Wajib 0.00% | 0.00% (Nol Error 500 / 502 / 504) | ✅ Sempurna |
| Rata-Rata Respon Server (Avg) | Maksimal < 200 ms | ~ 45 – 110 ms | ⚡ Super Cepat |
| Respon 95% Pengguna (p95) | Maksimal < 500 ms | ~ 180 – 260 ms | 🚀 Sangat Stabil |
Pemberitahuan & Jawaban Kritis: "Tabel Uji Beban di Atas Kertas Begitu, Jangan-Jangan Cuma Gimmick Brosur?"
Kami sangat memaklumi jika muncul keraguan atau statement kritis seperti: "Ah, semua aplikasi juga kalau bikin tabel promosi pasti nulisnya 1.000 siswa tanpa down, 0% error, dan respon puluhan milidetik. Giliran dipakai hari-H ujian di sekolah, servernya langsung rontok dan layar putih!"
Pertanyaan kritis seperti ini justru sangat sehat dan beralasan, karena terlalu banyak sekolah yang pernah dikecewakan oleh janji manis vendor software. Mari kita dudukkan perkaranya secara profesional:
- Beda Gimmick vs Bukti Teknis (Reproducibility): Gimmick adalah angka yang dikarang di aplikasi desain grafis tanpa bisa dibuktikan ulang. Sebaliknya, angka benchmark CBT Sekar 7 dihasilkan dari Grafana k6 — piranti lunak pengujian beban standar industri rekayasa perangkat lunak dunia.
-
Skrip Uji Terbuka (Audit Mandiri):
Kami tidak meminta Anda percaya begitu saja secara buta. File skrip pengujian
k6_load_test.jsdan panduan teknisnya (load_testing_guide.md) kami sediakan terbuka. Tim IT sekolah atau proktor independen dipersilakan menginstal k6 dan menjalankan tembakan beban langsung ke endpoint server untuk melihat grafiknya sendiri. - Realita di Lapangan Bukan Simulasi Lab Saja: Sistem ini bukan baru diuji coba kemarin sore. Arsitektur ini adalah hasil penyempurnaan lapangan langsung pada pelaksanaan asesmen sekolah di Pekalongan, di mana ratusan siswa serentak mengerjakan soal dari ruang kelas dengan berbagai kondisi jaringan internet.
- Integritas Filosofis: Sesuai prinsip "Dewasa Dalam Data, Sikap Satu Etika", memanipulasi data teknis demi reputasi semu adalah pelanggaran etika rekayasa. Kami lebih memilih transparan membeberkan batasan kapasitas server daripada mengobral klaim palsu yang merugikan nama baik sekolah saat ujian berlangsung.
📋 4. Matriks Komparasi Lengkap: CBT Umum vs CBT Sekar 7 (Terkini)
| Aspek / Fitur Krusial | CBT Konvensional (Candy / BeeSMART / Moodle) | CBT Sekar 7 (Dual-Origin 2026) |
|---|---|---|
| Kapasitas Serentak | 50 – 150 siswa (sering crash jam 07.30) | 600 – 1.000+ Siswa Aktif Serentak |
| Penanganan Server Down | Ujian ditunda, proktor panik, siswa mengulang | 1-Klik Failover ke cbt.sekolahkartini7.web.id |
| Kartu Barcode Meja | Wajib cetak ulang jika alamat IP/server ganti | 0 Lembar Cetak Ulang (Auto-Redirect via Server) |
| Gambar Soal (Formula / Diagram) | Sering pecah / silang merah jika file corrupt | Dual-Mirror Auto-Healing + MinIO Cloud |
| Koneksi Internet Putus | Jawaban hilang, waktu habis, error layar putih | Offline State Engine + Encrypted CSV Backup |
| Import Soal Guru | Rumit (format Excel kaku / copy-paste manual) | 1-Klik G-Form, Word DOCX, & AI Vision OCR |
| Setup Infrastruktur | Wajib VHD VirtualBox, PC Server Lab Mahal | 100% Cloud Web-Based (Tanpa VHD, HP / Laptop Siap) |
| Pengadaan Resmi BOS | Sering ilegal / transfer rekening pribadi | Resmi SIPLah Toko Ladang (PT Sekar Tujuh Arta) |
Melanjutkan Semangat R.A. Kartini Melalui Gotong Royong Digital
Terinspirasi dari perjuangan pahlawan R.A. Kartini Pekalongan, sistem ini lahir dari tekad membuka akses teknologi evaluasi belajar selebar-lebarnya bagi seluruh sekolah tanpa diskriminasi biaya. Jika dahulu para pejuang bertaruh nyawa melawan penjajahan, medan perjuangan kita hari ini adalah menundukkan ego komersialisasi berlebihan agar anak-anak bangsa mendapatkan ujian yang adil, jujur, dan berteknologi tinggi.
🏫 5. Transparansi Legalitas & Pengadaan Resmi Dana BOS
🏛️ Pengadaan Sah Sesuai Juknis Melalui SIPLah Toko Ladang
Kemitraan CBT Sekar 7 dikelola secara legal dan berbadan hukum melalui PT Sekar Tujuh Arta. Sekolah dapat melakukan pengadaan resmi menggunakan alokasi Dana BOS (Bantuan Operasional Sekolah) melalui platform mitra resmi Kemendikbudristek:
- Toko Resmi SIPLah: SIPLah Toko Ladang (PT Sekar Tujuh Arta).
- Kelengkapan Berkas SPJ: Faktur pajak elektronik resmi, kuitansi digital, SPK, dan Berita Acara Serah Terima (BAST).
- Transparan & Bebas Pungli: Pembayaran terverifikasi langsung via rekening escrow SIPLah, tidak melayani rekening perorangan.
🚀 Daftarkan Sekolah Anda Sekarang (Aktivasi Cepat)
Cukup kirimkan: 1. Nama Sekolah, 2. File Logo Sekolah, dan 3. Kontak Proktor/Operator.
sk7.my.id
💬 Rembug & Tanggapan Warga
0 Komentar✍️ Tulis Tanggapan / Komentar: