21-07-2012, 04:14 PM
Online Course Registration System
OnlineCourseRegistration - Tolstoy.pdf (Size: 1.16 MB / Downloads: 671)
Subject and Purpose
The need for structured storage, modification and maintenance of huge amounts of data
has resulted in the emergence of the Database Management System (DBMS) as one of the core
fields in the Computer Science industry. DBMS is the system of computer software that is aimed
to provide a managing tool for maintaining the data, through various data models.
The purpose of implementing this project is to understand the data modeling concepts that is
used in a real time scenario and to implement a fully functional database system which interacts
with a front end interface.
Definition of the Problem
An Online Course Registration system for University of Dataville is to be developed with
a front-end web interface and a back-end database. An example of the system would be
University of Florida’s ISIS Registration.
Any database system can be chosen as the back-end such as Oracle, MySQL, Microsoft SQL
Server, DB2, Access. Any web server can be chosen for the front end such as Tomcat, Glassfish,
JRun, etc. Any server side language can be chosen such as PHP, JSP, ASP, etc.
Project Specification
A high level description of the project:
• Each student has a unique student ID and a profile. The profile includes first/last names,
gender, date of birth, local address, department, enrolled year, username, login password,
and may have a picture. You can also add other necessary information.
• Each instructor has a unique faculty ID and a profile. The profile must indicate the
instructor’s department(s). An instructor may work at more than one department.
• A department has a unique department ID, a name, and a list of faculties.
• Each course has a course number, an instructor, given department, term, credits, classroom,
periods, prerequisite courses, textbooks, and other information you think is necessary.
• A classroom has a unique ID and a unique location. Classrooms can hold more than one
course each term, but these courses cannot conflict in time. Classrooms have capacities.
Registered students’ number cannot exceed the classroom capacity.
• Must maintain all the courses a student has already taken/registered. This is used to check
course prerequisites when registration.
• Students may login (with username and password) to the system to register courses or
retrieve all the courses they have already taken/registered.
• Instructors may login (with username and password) to the system to add courses or
retrieve all the courses they have already given/added.
• A student cannot register a course if: 1) he/she doesn’t meet the prerequisites, 2) the
students registered in the course exceed the capacity of the classroom, 3) the course has a
time conflict with other courses in the same term.
• An instructor cannot add a course if: 1) the classroom has already occupied by another
course in the same period, 2) he/she has another course in the same period, 3) he/she is
not affiliated to the department of this course.
• A day has 12 periods and a week has 5 days. Instructor provides periods when adding
courses to the system.
• Students may retrieve all the courses given by a department, an instructor, or held in a
specific period.
• There can be an arbitrary number of students/instructors/departments/classrooms/courses
Need for Solution
The practical implementation of a real time database management system made us
understand the intricacies involved in designing the database schema with inter related
constraints and the complexity that exists in integrating the front end system with the back end
data-store.
This project gave us a hands-on experience on developing the entire project using MySQL,and
PHP using the Apache Server. We learnt several ways to optimize when designing the database
and made quick and rational decisions when developing the project by implementing the
procedures taught in class.
We could clearly indentify the balance we had to maintain when choosing between efficiency
and performance.