Campus Exam Portal
Built Campus Quest, a campus examination portal with per-session question/option permutation, focus-loss integrity signals, and bulk question-bank ingestion for faculty.
Per-session seeded permutation
Integrity model
[High Confidence]
Bulk CSV/JSON question bank import
Faculty tooling
[High Confidence]
What it does
Static digital exams make collusion easy: every candidate sees the same order. Faculty also spent too long formatting banks and grading MCQs by hand.
Campus Quest issues a session seed, permutes questions and options per candidate, monitors focus-loss / tab events with configurable thresholds, and grades against a canonical key after mapping permutations back.
Constraints
- Burst login load when an exam slot opens
- Unique paper per session without breaking grading keys
- Usable latency on campus Wi-Fi
- Faculty need bulk bank import and automated reports
Decisions & tradeoffs
- Seeded on-the-fly permutation instead of pre-generating thousands of static papers
- Integrity monitor that can reshuffle when anomaly thresholds trip
- Signed session tokens carrying seed/state to reduce live DB lookups mid-exam
- CSV/JSON bank parsers with schema checks for faculty prep
flowchart TD
CandidateAuth[Candidate Login] --> TokenGen[Session Token plus Seed]
TokenGen --> PermutationEngine[Seeded Question Permutations]
PermutationEngine --> ExamUI[Active Exam Interface]
ExamUI --> IntegrityMonitor{Focus / Session Check}
IntegrityMonitor -->|Nominal| NormalFlow[Permuted Sequence]
IntegrityMonitor -->|Anomaly| Shuffle[Anti-Tamper Reshuffle]
NormalFlow --> AnswerQueue[Response Submission]
Shuffle --> AnswerQueue
Tradeoffs: on-the-fly permutation saves storage and costs CPU at render time. Aggressive anti-cheat creates false positives — thresholds are configurable for that reason.
What it demonstrates
- Designing for concurrent campus exam load
- Integrity controls that stay explainable (seeds + rules, not black-box scoring)
- Admin tooling that shortens faculty prep time