EREAS Development - LAN-Based Testing Platform -- 2

Job ID: 40091627

Budget: ₹1,500 – ₹12,500 INR

Software Requirements Specification (SRS) v2.0
Project: Enterprise-Grade Randomized Examination & Analytics System (EREAS)
1. Introduction
1.1 Project Purpose:
To develop a high-performance, secure LAN-based testing platform capable of processing a 20,000-question repository, delivering unique randomized experiences to 30 concurrent users, and providing longitudinal performance analytics via student profiling.
1.2 Scope of Work:
The system comprises a Master Admin Server and 30 Dedicated Client Terminals. It operates entirely within a Local Area Network (LAN) to ensure zero dependency on external internet connectivity during examinations.

2. Functional Requirements (Deep-Dive)
2.1 Advanced Database & Question Management
Massive Repository Handling: Optimized for 20,000+ entries with specific fields: Question Text, 4-6 Options, Correct Answer, Subject Category, Difficulty Level (1-5), and Image Attachment (BLOB or File Path).
The "Intelligent Deduplicator":
System must run a Pre-Entry Validation using N-gram or Levenshtein Distance algorithms.
If a new question is >85% similar to an existing one, the system must flag it for manual review or auto-rejection.
Bulk Management: Capability to import/export question sets via Microsoft Excel (.xlsx) or CSV formats.
2.2 High-Concurrency Test Engine
Dynamic Selection Logic: Admin defines a "Session Profile" (e.g., 75 questions total: 20 from Physics, 20 from Chemistry, 35 from Math).
True Randomization (The "Anti-Cheat" Protocol):
Question Shuffling: No two consoles will display the same question at the same time.
Option Shuffling: Even if two students see the same question, the choice order (A, B, C, D) must be randomized.
30-Node Stability: The server must utilize an Asynchronous Queue (like Redis or RabbitMQ) to handle 30 simultaneous database "Save" requests every 10 seconds without UI freezing.
2.3 Student Profiling & Predictive Analytics
Identity Management: Every student is registered via a Permanent Index Number.
Historical Dashboard: Upon login, the student sees their "Wall of Fame/Progress," listing all previous exams, dates, and raw scores.
Analytics Engine:
Trend Analysis: A dynamic Chart.js or D3.js line graph showing the "Improvement/Deprovement" trajectory.
Gap Analysis: The system identifies categories where the student consistently scores low.
2.4 Reporting & Legal Documentation
PDF Rendering Engine: Uses server-side tools like Puppeteer to generate unalterable PDF certificates.
Standardized Footer: The result page must automatically format a signature section:
Left: Presiding Officer (Name & Rank)
Center: Member 1 Signature
Right: Member 2 Signature
Audit Trail: Every result includes a unique QR code for digital verification of authenticity within the system.

3. Technical Architecture & Security (2025 Standards)
3.1 Security Hardening (Kiosk Protocol)
Full-Screen API: The browser must be forced into Full-Screen mode.
Event Interception: Disable Ctrl+C, Ctrl+V, Alt+Tab, F12, and PrintScreen. Prepare a use case document for the above software
Focus-Loss Detection: If a student attempts to navigate away from the browser tab, the system logs a "Violation" and notifies the Admin console in real-time.
IP Binding: Each session is locked to the MAC/IP address of the 30 client machines to prevent remote unauthorized logins.
3.2 The Technology Stack
Database: PostgreSQL 16+ (chosen for its robust handling of large datasets and JSONB support).
Backend: Node.js (LTS) with Express for high-speed I/O.
Frontend: React 19 for a reactive, state-managed UI.
Server Host: Ubuntu Server 24.04 LTS for maximum stability.

4. Non-Functional Requirements
Performance: The "Submit Test" action must take < 500ms for the student.
Reliability: Auto-Resume capability. If a client machine crashes, the student can log back in on any of the 30 machines and resume from the exact second and question where they left off.
Scalability: While designed for 30 clients, the database architecture must support up to 500 simultaneous users for future expansion.

5. Implementation Roadmap for Developers
Phase 1: Database Schema Design & Duplicate Detection Algorithm.
Phase 2: Admin Dashboard for Question Management (20k upload test).
Phase 3: Randomized Engine Development (Stress test with 30 simulated clients).
Phase 4: Analytics & Graphing Module.
Phase 5: PDF Reporting & Printing Module.
Phase 6: Security Lockdown & UAT (User Acceptance Testing).

6. Acceptance Criteria
Load Test: Demonstrate 30 clients running smoothly on a 20,000-question database.
Data Integrity: Show that the "Improvement Graph" correctly calculates percentage change between Exam 1 and Exam 2.
Print Quality: Ensure the final PDF result is perfectly formatted for A4 printing with all signature blocks intact.