MBN
← All projects

Computer-Based Test

Role —
Full Stack Developer
Date —
15 Januari 2025
Stack —
TALL Stack, MySQL, Pest PHP

A comprehensive computer-based assessment engine engineered for academic institutions to streamline summative and formative evaluations, automate multi-format item grading, and preserve academic integrity through client-side proctoring heuristics.

Key Features

  • Multi-Role RBAC: Hierarchical access control for Super Admin, School Admin, Teachers, and Students with granular permission management.
  • Bank Soal & Pengacakan Dinamis: Supports 5 question types (Multiple Choice, Complex MC, True/False, Short Answer, and Essay) with per-student question/option randomization and immutable database snapshots at exam commencement.
  • Sistem Anti-Cheat & Lock Screen: Enforces fullscreen mode, detects tab switching, devtools shortcuts, and right-clicks with violation counter tracking and automatic hard-submit limits.
  • Live Monitoring Ujian: Real-time teacher dashboard to monitor student progress, answered question counts, violation notifications, and remote control actions (grant extra time / force submit).
  • Koreksi Otomatis & Rubrik Esai: Instant automated scoring for objective questions and manual essay grading interface with automatic score recalculation.
  • Import/Export & Pelaporan: Bulk data import via Excel, exam score summaries, and printable exam result cards and PDF violation reports.

Technical Implementation

  • Developed using Laravel, Livewire, Alpine.js, and Tailwind CSS to deliver a reactive interface without heavy JavaScript framework overhead.
  • Implemented Action & Service Classes architecture (GenerateExamAttemptAction, ExamScoringService, RecordViolationAction) within database transactions (DB::transaction) for high data reliability.
  • Ensured exam security with server-authoritative time and status validation, and audit trail logging using Spatie Activity Log.
  • Thoroughly tested for grading logic, randomization, and authorization using Pest PHP.