Database Schemes
 

[ER diagram]
E-R Diagram of the System's Databases

Grading System Databases
Data management for the Grading System is handled by the ORACLE DBMS, and through the PL/SQL programming extensions. The system consists of several databases, namely a student database, a course database, an assignment database, a performance database, a grade database, a customized grade database, survey databases, and a user database.

Student Database
The student database is constructed by students themselves by filling out an online registration form provided by the system. In this form, students are asked their full names, social security numbers by which they can inquire their assignment evaluations, student IDs, e-mail addresses, majors, departments, and classes. Also, students are asked to answer some survey questions if any is prepared by instructors.

The student database also keeps course information. Each student has to register for individual courses he or she takes.

Course Database
Course database consists of course titles, term data, instructor information, TA information, the home page URL, assignment information, and a comment field. For each course, i.e. CPS714, a new record has to be created in every semester in which the class is opened. For example, if CPS714 is given in the Fall '97, the key for the course becomes Cps714Fall97. As such, Cps714Fall98, Cps714Fall99, etc. must be created each semester.

Assignment Database
In addition to the course database, there exists an assignment database in which all of the assignments to be given to the students are kept. In this database, each record keeps course information, an assignment number, an assignment type (i.e. assigments, extra assignments, or projects), the highest grade, the weight of the assignment among the others, the URL of the explanation page, and an extra URL field for some comment page about the results.

Performance Database
Performance database is a relation between the student database and the course database. In each record, in addition to the keys, accompanies students' grade averages, final grades given by instructors, and remark fields, one open to students, one for TAs, and one for instructors.

Grade Database
For each performance and assignment pair, grade information is kept in the grade database as well as an extra (i.e. bonus) grade field, partial credits field, and comment fields just like remark fields in the performance database.

Custemized Grade Database
The system provides numeric grades as well as custemized ones. For some specialized courses, words or letters might be preferred over the numbers. For these cases, instructors can map their grade literals to numbers, and use them later on. For example, the letters A,B,C,D, and F, or the words excellent, very good, good, poor, and fail can be mapped to 4,3,2,1, and 0 respectively, and used as the literals. Average calculations will result in literals as well. The custemized grade database is used to save such user mappings.

Survey Databases
At the end of each semester, students are usually asked to fill out an evaluation form about the instructor or the TA of a course, or the course itself. Sometimes, it is advantageous to know more of the students' background in advance before the class really heats up. To serve these purposes, and provide a hassle free paper work for everybody, three different databases, a survey database, a course survey database, and an answer database are constructed.

First, the survey database is used to store all kind of questions. Second, when a course is opened and its record is created, the instuctor of the course picks some questions from this database, and store them in the course survey database. Finally, students' answers are stored in the answer database for each course.

User Database
Every user of the system has to authenticate himself or herself by entering a login id and a password. By doing so, he or she is given those priviledges explained in the User Authentication section.

The user database keeps users' login ids, passwords, access lists, e-mail addresses, home page URLs, and picture URLs. These pieces of information are used in every level of the system which requires user access restrictions.


[home] [back]