Question Bank Module
The Question Bank plugin provides a centralized, secure repository for managing academic questions. It is built future-ready to power exam paper generation, online assessments, practice tests, and analytics.
🔗 Dependent Modules
- Academic Planner: Questions are scoped by master classes and subjects. Chapters and topics sequence the syllabus coverage.
- HR & Staff Directory: Permissions are integrated with teacher assignments so teachers can only create questions for their assigned classes and subjects.
💡 Why Use This Module?
- Asset Integrity & Version Control: Approved questions are locked to prevent accidental changes. Editing an approved question increments its version, archives the old state in
question_versions, and resets the status toDraftfor re-approval. - Extensible Options Structure: Supports diverse formats (MCQ, Multi-Answer, True/False, Fill in the Blanks, Match the Following, Case Study) using a flexible JSON options schema.
- Duplicate Detection Warn Engine: Scans existing questions using a fuzzy similarity algorithm (Levenshtein-distance) to warn teachers of similar questions before saving, reducing duplicate entries.
- Decoupled Assessment Stats: Tracks usage analytics (exam usage, assignment usage, practice test usage, and last used date) in a dedicated analytics table to keep queries performant.
📅 When to Use This Module?
- Syllabus Mapping: Preparing chapters and topics for classes to organize questions systematically.
- Moderation & Approval Cycles: Teachers write questions, HODs recommend them, and Principals/Admins approve and lock them.
- Bulk Import & Export: Exchanging question sets using CSV templates for offline preparation.
📖 How to Use
How a Teacher Adds a Question:
- Navigate to Question Bank: Log into the Portal as a Teacher and click Question Bank on the sidebar.
- Launch Creator Form: Click the Create Question button at the top right.
- Select Class & Subject: Select the Class and Subject.
- Note: You will only see classes and subjects mapped to you in your Teacher Assignments.
- Choose Chapter & Topic: Select the Chapter and Topic if applicable.
- Set Classification Metrics: Choose the Question Type, Difficulty Level (Easy, Medium, Hard), Bloom's Taxonomy level, Marks, and Language.
- Input Question Content:
- Type the Question Text.
- If you selected MCQ, input the choices (A, B, C, D) and select the correct option key (e.g.
A). - If you selected Match the Following, input matching items in Column A and Column B and map their pairs.
- If you selected True/False, select the correct answer.
- Duplicate Warning: As you type the question text, a warning banner will appear if the system finds a highly similar question (e.g., above 80% similarity score) already exists in the school's bank.
- Add Attachments: Optionally attach diagram images or document sheets.
- Save as Draft: Click Save Question. The question is saved in the Draft status.
- Submit for Review: On the question details page, click Submit for Review. This advances the status to Pending and flags it for the HOD's review list.
🛠️ Key Features
- Moderation Workflow: Full moderation pipeline (
Draft➔Pending➔Recommended➔Approved➔Rejected➔Archived) with permanent logs auditing every workflow state change. - Duplicate Banner warning: AJAX similarity checker alerts authors of redundancy in real-time.
- Bulk CSV Import: Import multiple questions quickly using a downloadable template mapping columns to subjects, classes, chapters, and options.
- REST Integration Ready: A randomizable API search endpoint (
/api/plugins/question-bank/search) is exposed to feed future exam generators.