OpenQP

Question Paper Management System

Click here for installation Instruction

Introdoction

OpenQP generates Question Papers by selecting questions (based on some pre-defined algorithm)from a question bank. The questions are stored as text (with embedded LaTex commands for equations, images etc.) in a postgres RDBMS system, that can be accessed from remote computers. Some of the features of the system are:

Adding/Editing Questions

Editing a course to add/remove questions is done using GUI program remotely accessing the database. Equations, Tables, Lists etc. are entered in LaTex format and the PDF can be viewed for verification. For most of the questions, it is just plain text.

Features:

The steps are

If you include figures by using the ‘\includegraphics’ command, the image file should be in the same directory.

cuqbc

Creating a New Course

A new course may be created by adding the details like Course code, course name, subject etc. It is easier to add a new course by selecting an existing course to fill all the input fields. Create a new one after modifying the required fields. Course Code entered by the used is stored in the database after prefixing the Syllabus Year and Institution information.

qadmin

There is another Editor that imports the entire Course, make changes and export it back. Exporting wipes out the old contents. Used only for populating new Course with dummy questions. Qeditor.py.

Generating Question Papers

A GUI program is available for generating the question papers.

The following details, to appear on the generated question paper are added:

qpgen


Installation, postgres RDBMS

A database and a user to own it are areated. Two users named ‘dummy’ and ‘reader’ are are created. These steps are carried out by the ‘psql’ client program, after logging into the server machine.

After completing these steps the program

Program Design

The backbone of the system is a Postgres RDBMS. A table named coursedetails stores the information about all the available courses. Each record of this table represents a course. Each Course has a Table to store the questions and related information. Name of the table is same as the course code. There is a corresponding ‘user’for every course, having access rights to it.

Name Data type Description
code varchar Coursecode.
name varchar Course name
subject varchar Subject
degree varchar Degree
syllabusYear varchar Syllabus year
semester varchar semester (First to Eighth)
texLanguage varchar typesetting language
qpmodel varchar Question paper moder 50 marks, 70 marks etc.
duration varchar Duration of the Exam
nmodules varchar Number of Modules(4 to 8), to divide the syllabus
Name Data type Description
qtext varchar Question in LaTex
atext varchar Answer etc. in LaTex
author varchar Author information
modnum int Module Number (Course material divided, upto 8 Modules)
qtype char(1) Question Type A: Short, B: medium, C: essay type
qnum int Question number, starts from 1, (no gaps)
relations varchar Specify other questions having overlap with this one
mark int Mark
status varchar Remember, Understand, Apply, Analyze, from Expert, inactive (last two are for internal use)
figname varchar name of the figure, if any
figure bytea Figure data, .jpg or .png file

Web based interface for QP generation

A web based intetrface also ia available. Sample databases can be accessed from the following links. They contain only dummy data. Password is currently set to rea123.

The following files should be kept inside the Web Server directory.