SlideShare a Scribd company logo
1 of 21
Download to read offline
COP 5725 - Database Management Systems
University of Florida
Online Course Registration System
Project Report
Tolstoy Newtonraja Aditya Nafde
Computer and Information Science & Eng Computer and Information Science & Eng
tolstoynewton@ufl.edu adityan@ufl.edu
UF-ID: 3411-3151 UF-ID: 5159-7503
1. 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.
2. 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.
3. 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
4. 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.
5. ER Diagram
6. Design Schema
Create table Student (
studentId int Primary Key ,
firstName varchar(30) not null,
lastName varchar(30) not null,
profilepic blob,
gender varchar(1),
dob date,
address varchar(200),
deptId int,
homepage varchar(70) default null,
yearEnrolled varchar(15) not null,
overallGPA float (3,2),
foreign key (deptId) references Department(dept_id)
);
Create table Login (
username varchar(20) not null UNIQUE,
password varchar(20) not null,
type varchar(1) not null,
studInstId int not null AUTO_INCREMENT Primary Key
);
Create table Instructor(
instId int Primary Key ,
firstName varchar(30) not null,
lastName varchar(30) not null,
profilepic blob,
gender varchar(1) not null,
dob date not null,
address varchar(200) not null,
homepage varchar(70) default null,
yearEnrolled varchar(15) not null
)
Create table Department (
deptId int primary key,
deptName varchar(50) not null
)
Create table Course (
courseId int,
courseName varchar(50),
term varchar(15) ,
deptId int,
credits int not null,
textbook varchar(50) default null,
refTextbook varchar(50) default null,
courselink varchar(50) default null,
primary key (courseId, term),
foreign key (deptId) references Department(dept_id),
);
Create table Prerequisites (
courseId varchar(15),
prereqId varchar(15),
foreign key (courseId) references Course(courseId),
foreign key (prereqId) references Course(courseId)
);
Create able Coursestaken (
studentId int,
courseId varchar(10),
term varchar(15),
grade varchar(1) default null ,
foreign key (studentId) references Student,
foreign key (courseId) references Course,
foreign key (term) references Course(term)
);
Create table InstructorDept (
instId int,
deptId int,
foreign key (instId) references Instructor,
foreign key (deptId) references Department
);
Create table InstructorCourses (
instId int,
courseId varchar(15),
term varchar(15),
foreign key (instId) references Instructor,
foreign key (courseId) references Courses,
foreign key (term) references Course(term)
);
Create table Classroom (
classId varchar(10) primary key,
location varchar(30) not null,
maxCapacity int not null,
seatsLeft int not null
);
Create table ClassCourse (
classId int not null,
courseId varchar(15) not null,
period int not null,
day varchar(1) not null,
term varchar(15) not null,
foreign key (classId) references Classroom(classId),
foreign key (courseId) references Course(courseId),
foreign key (term) references Course(term)
);
7. Major Design Decisions
Major design decisions in the project were discussed and entered in a shared online
Google document so that as and when someone thinks of a new idea for bonus functionality we
were able to add in the document and share it with the other person (2 in a team).
The design schema and other field information were also stored and work performed on a
day-by-day basis was logged so that we were aware on the progress of the project.
Some design challenges:
We used PNG pictures for storing the profile picture information and found that the
storage space went to big numbers. We then changed the type of data and made it as a jpeg
picture.
We missed the term field in the classroom table initially and had to add the field later to
keep track of the class room information for previous semesters.
We had not thought about the graduation date field for a student. When trying to
implement a realistic system this field had to be in place to segregate the graduated students and
other current students.
We had to have an ADMIN login to perform some administrative tasks. We thought it
would be very practical to have this option. For example, when you are logged in as an admin
you can edit the graduated field for a student. We tried to map the real scenario where the
student requests that he wants to graduate to the Grad Advisor in his department and the Advisor
requests DB Administrators to update the student’s `graduated` field.
Functionalities a student can perform in the system:
- Can edit his profile data i.e. address/homepage/email id information and update.
- Register a course
- Constraints checked here include
MAX courses registered this semester, in our system its 3,
Course previously not registered,
Seats lefts in the course,
Prerequisite course registered and
Conflicts in timing with other currently registered courses.
- View his schedule
- Can view class schedule in a tabular format (similar to ISIS)
- Drop course option is provided on this page
- Can view additional information about the courses he has taken.
- Can view textbook information of the courses department wise.
- Can view courses with prerequisite information
- Can view the list of courses using the department and instructor parameters.
- Can view the list of courses using the day and period parameters.
- Can view courses previously taken along with grades information
- Can also request for graduation, we have enforced a minimum of 10 courses for a student
to graduate, If this request is not met the graduation request is denied else it if forwarded
to the graduate advisor.
Functionalities an Instructor can implement in the system:
- Can view / edit profile information and also update.
- Can view current schedule in a tabular format (Similar to ISIS)
- Can edit Course details - Details such as Seats left - to increase or decrease the capacity
of the course (seats cannot be more than class capacity)
- Can add a new course to the database under his profile and department.
- The input parameters in the form are checked for valid input data before updating the
database.
- Conflicts with the instructor's schedule as well as conflicts in timing with other courses in
the same classroom are checked.
- Can view classroom availability as well as maximum capacity of classroom when course
information is updated or new classroom is added
- Instructor can view info of all the students registered in the courses he/she is handling.
8. Programming practices used
As mentioned earlier we used Google Documents to share critical information about the
project. The project status, issues faced and new functionalities were shared concurrently and
updated hour by hour which maximized our work performance when trying to build the project
from different places. We strongly believed in dividing the tasks and building the project instead
of the conventional pair programming method.
Loading Real time Data:
Any rich web system should have lots of data to work on and implement all the
functionalities. With all the functionalities built and with less data the system would be a boring
application to work on. We wanted to make the application rich and interesting to the person
who wanted to use it. Our first challenge (apart from designing schemas and building the tables)
was to load the database with lots of information. How?
We coded a python script (attached to the appendix) which was used to parse a html file from the
internet and extract the needed information. The CISE student and instructor pages were scanned
and information was retrieved. The next step was to code the functions in the python code to
generate random values for fields we didn’t have in the html file.
For example:
Randomized functions - Birthdays, homepages, overallGPA, email Id
Example code for populating the department table:
def PopulateDepartmentTable():
''' Read text file and generates SQL command '''
path = "deptNamesinDeptNames.txt";
fileContents = file ( path ).read()
fileSQLcode = file ('deptNamesoutSQLDeptNames.txt','w')
#INSERT INTO Department VALUES (1, “Computer Science”);
count = 1
for deptName in fileContents.split('n'):
#print deptName
#INSERT INTO Department VALUES (1, “Computer Science”);
#Enters data into `Login table` and `Instructor`
print 'INSERT INTO Department(deptId, deptName) VALUES ("' +
`count` + '","' + deptName + '");'
print >>fileSQLcode, 'INSERT INTO Department(deptId, deptName)
VALUES ("' + `count` + '","' + deptName + '");'
count = count + 1
fileSQLcode.close()
Some quick stats on the database:
Database name: coursereg
Database size: 5.26 MB
Table Name Rows Size
Student 863 160.9 KB
Prerequisites 27 3.2 KB
Login 1022 76.9 KB
Instructordept 221 10.9 KB
Instructorcourses 221 16 KB
Instructor 159 31.8 KB
Department 5 3.3 KB
Coursestaken 7210 381.1 KB
Course 225 28.4 KB
Classroom 100 4.3 KB
Classcourse 675 38.5 KB
Use of Comments:
Any new functions or new logic added to the PHP file was very difficult to comprehend
without the comments. Hence lots of comments were added to the code to make it easy for the
other team member to comprehend and extend the logic of the code.
Security:
We used a front-end software for modifying and executing the mySQL commands
(similar to a Microsoft SQL Server interface). The name of the software is Heidi and its open
source. We set encryption and locked the database when not in use. All the queries executed
using PHP were first tested in this software and results were verified.
Backups:
We made it a point to save backups of the entire PHP collection files and DATABASE
everyday with the timestamp. We went back to previous versions of the code whenever the
current code got unstable or we were faced with unexpected weird results.
Usability and User Interfaces:
All the images, header banners were designed in Adobe Photoshop 9 and a basic template
(CSS) was used for all the pages.
9. Scope
The main aim of the project is to learn the intricacies of modeling the data base with the
given requirements and using a web based interface to interact with the back end keeping in
mind the data consistency and the stability of the entire system.
Since the system is developed with a web based interface, we can start executing the model with
parallel executions with the confidence that the back end MySQL data store will take care of the
concurrent transactions. The ACID (Atomicity, Consistency, Isolation, Durability) property of
the database helps to keep the system consistent and stable.
10. Implementation Methods
The Online Course Registration project was implemented successfully using the Apache
Server with MySQL running as the back end database and PHP used as the server side language.
The implementation methods were chosen carefully taking into consideration the possibilities of
hosting this project online in a server after the semester. Several high profile hosting companies
support mySQL and PHP. Comparisons can be drawn later based on performance, execution
time, efficiency, memory usage by implementing the system in different servers with various
traffic load.
11. Breakdown of tasks
The following table indicates the task distribution among the team members.
Task Team Member
Comprehensive study of the system
Aditya, Tolstoy
Modeling the database relational schema Aditya, Tolstoy
Basic Testing and Optimizing relations and tables Aditya
Loading Real-time data entries in the database using Python Tolstoy
Front-end template design using CSS Aditya
User Interface design with Adobe Photoshop Tolstoy
Break down of coding and analyzing requirements Aditya, Tolstoy
Coding student related functionalities Aditya
Coding instructor related functionalities
Tolstoy
Testing & Optimization of code Aditya, Tolstoy
Project Documentation Aditya, Tolstoy
12. Facilities used
Package used: WAMPSERVER 2.0.
WAMP stands for Windows,
Apache 2.2.11,
MySQL 5.1.33
PHP 5.2.9
Operating System: Windows7 64 Bit Processor
Processor Speed: Core 2 Duo 2.4 Ghz Processor
Memory available: 4 GB, 256 MB Nvidia Graphics card
Hard Disk capacity: 250 GB
Database size: 5.26 MB
Front end code: 5 MB
13. Time and Work Schedule
Deadlines Met:
Phase1 Deadline – Nov 10th
Phase2 Deadline – Dec 17th
14. Screen shots and links explained
Index.php -> This is the index page, any new user is directed to this page. The page
simply asks for username and password from the user and depending on the user type – student,
instructor or administrator, the user is directed to appropriate homepage.
Fig: Index page
The screen shot of instructor’s home page is shown below and also the side links are explained
Fig: Instructor home page
Studenthome.php, instructorhome.php, adminhome.php – Home pages for students, instructors
and administrators respectively.
editProfile.php, updateProfile.php – PHP files for editing and updating profile information for
students and instructors respectively.
My schedule link in both instructors and students page gives them their current schedule
displayed in a tabular format similar to ISIS system. Students can also drop their courses via this
page. Detailed information about the courses is available via this link. Instructors can edit their
course information through this page.
Instructor can add a new course via Add New Course link on the left menu. The PHP files are
courseinfo.php and add_new_course.php. Instructors must provide course name as a valid input.
The required conflict constraints are also check once the form is submitted by the system.
Instructor can also view information about class capacity and current class schedule as follows :
Thus the instructors can see that the class capacity of class ECE14 is 15 and the ‘green’ slots
indicate available slots for the selected class.
Instructors can also view students registered in their courses for the current term via Registered
Students link. This gives extra information about the students registered for his/her courses
The screen shot of the student home page is as follows :
Fig: Profile View for Student
Students can register for courses via ‘Register courses’ link. All the specified conditions are
checked while validating the request from the user to register the course. If all the conditions are
met then course registration is allowed to be proceeded.
Students can view their schedule of courses in tabular format similar to ISIS. The below screen
shot depicts one.
Fig: Course Schedule & Drop Course option
Thus in the tabular format the student can see his schedule and also option to drop
courses is provided on this page. This page gives clear idea about course schedule to the
students.
Through links on the left menu students can search for courses instructor wise and
schedule wise as well. Students can also check for course prerequisites of the courses as well as
the textbooks. The php files -> textbookinfo.php, instinfo.php, cbyschedule.php, prerequisite.php
etc
Previously taken courses and grades received information can be accessed by clicking the
My Grade option.
We have also provided a link ‘Graduate from’ from where a student can sent request for
graduation to the graduate advisor. The system checks for minimum course requirements (10 in
our case) and after that the request is forwarded to the graduate advisor.
15. Future Modifications
This project was developed keeping in mind the functionalities for students and instructors. This
project provides all the functionalities specified in the project document. We tried to simulate the
real world environment by generating loads of data from the University of Florida departments
itself.
Much functionality can be added over the existing one so that the system has more enhanced
features and is more efficient.
Classroom/Dept Info on Maps:
Students can view the classrooms, departments and other related information on campus
map and thus will know the classroom locations more clearly. Google Map API can be used and
data can be easily mapped on top of the map.
More Statistics for Grades:
Students can know about the distribution of grades and other statistics such as assignment
scores, project scores in that course. Thus students can be aware of the grading system followed
by a particular instructor.
Administrators:
We can add a third kind of user besides students and instructors called administrators to
the system. They can have a clearer view of underlying databases. They can add a new user to
the system, update status of existing users, can generate reports from time to time check various
statistics about the system and user behavior. Statistics results can be used by Database
administrators to tweak the underlying database at the lowest level to improve the performance
and efficiency of the system. The administrator can also do time to time backup of the databases
in the system.
Alumni’s specific pages:
A different view of the system can be created for the students who have graduated from
the college. They can only see the courses offered by each department but will not be allowed to
register for any courses. Additional functionalities include request for duplicate degree /
transcripts etc.
Encryption:
Effective encryption schemes can be used to improve the security of the system.
Password recovery facility can be provided for effective functioning of system and ease of use
by users.
16. References
1. Fundamentals of Database Systems – Elmasri, Navathe, Somayajulu, Gupta – 2nd
Edition
2. Database Management Systems – Ramakrishnan, Gherke – 3rd
Edition
3. http://en.wikipedia.org/wiki/Database_normalization - Normalization article
4. http://www.wampserver.com/en/ - WAMP information
Appendix
Python Source code
(Loading data into the tables)
#!C:ProgramsPython25Python.exe
# -*- coding: cp1252 -*-
import random
def findDOB(start, end):
date = random.randint(1,31)
month = random.randint(1,12)
year = random.randint (start, end)
if (month < 10):
month = '0' + `month`
else:
month = `month`
if (date < 10):
date= '0' + `date`
else:
date = `date`
dob = `year` + '-' + month + '-' + date
return dob
def findGender():
randNo = random.randint(1,20)
if (randNo % 2 == 0):
return 'M'
else:
return 'F'
def findYearEnrolled(start, end):
randNo = random.randint (1,3)
if (randNo == 1):
yearEnrolled = 'Spring ' + `random.randint (start, end)`
elif (randNo == 2):
yearEnrolled = 'Summer ' + `random.randint (start, end)`
elif (randNo == 3):
yearEnrolled = 'Fall ' + `random.randint (start, end)`
return yearEnrolled
def PopulateDepartmentTable():
''' Read text file and generates SQL command '''
path = "deptNamesinDeptNames.txt";
fileContents = file ( path ).read()
fileSQLcode = file ('deptNamesoutSQLDeptNames.txt','w')
#INSERT INTO Department VALUES (1, “Computer Science”);
count = 1
for deptName in fileContents.split('n'):
#print deptName
#INSERT INTO Department VALUES (1, “Computer Science”);
#Enters data into `Login table` and `Instructor`
print 'INSERT INTO Department(deptId, deptName) VALUES ("' + `count` + '","' +
deptName + '");'
print >>fileSQLcode, 'INSERT INTO Department(deptId, deptName) VALUES ("' +
`count` + '","' + deptName + '");'
count = count + 1
fileSQLcode.close()
def PopulateCourseTable(deptNoParam):
'''
Read text file and generates SQL command
Fills TABLES: course
'''
if (deptNoParam == 1):
path = "courseinCCe.txt";
fileSQLcode = file ('courseout_Course_Cce.txt','w')
deptId = 1 # 1 Cce, 2 Cise, 3 Ece, 4 Ise, 5 Mae
courseId = 999
elif (deptNoParam == 2):
path = "courseinCise.txt";
fileSQLcode = file ('courseout_Course_Cise.txt','w')
deptId = 2
courseId = 1999
elif (deptNoParam == 3):
path = "courseinEce.txt";
fileSQLcode = file ('courseout_Course_Ece.txt','w')
deptId = 3
courseId = 2999
elif (deptNoParam == 4):
path = "courseinIse.txt";
fileSQLcode = file ('courseout_Course_Ise.txt','w')
deptId = 4
courseId = 3999
elif (deptNoParam == 5):
path = "courseinMae.txt";
fileSQLcode = file ('courseout_Course_Mae.txt','w')
deptId = 5
courseId = 4999
fileContents = file ( path ).read()
for line in fileContents.split('n'):
row = line.split('t') #code, course, inst
if len(row) >= 2:
triples = []
for item in row:
if (item):
triples.append (item)
#print triples
tempCourseId, courseName, instName = triples #ignore this courseId
names = instName.split(',')
if len(names) == 1:
firstName = names[0]
lastName = ""
else:
lastName, firstName = names[0], names[1]
#print codeId, courseName, firstName, lastName
courseId = courseId + 1
term = 'Fall 2009'
credits = 3
textbook = '"' + courseName.lower() + ' book"'
refTextbook = '""'
seatsInClass = [15, 20, 25]
for i in range(1,225):
randNo = random.randint(1,100)
if (randNo <= 30):
seatsLeft = seatsInClass[0]
elif ((randNo >= 31) and (randNo <= 70)):
seatsLeft = seatsInClass[1]
else:
seatsLeft = seatsInClass[2]
#print 'INSERT INTO Course (courseId, courseName, term, deptId, credits,
textbook, refTextbook) VALUES(' 
#+ '' + `courseId` + ',"' + courseName + '","' + term + '",' +
`deptId` + ',' + `credits` + ',' + `seatsLeft` + ',' + textbook + ',' + refTextbook +
');'
print >>fileSQLcode, 'INSERT INTO Course (courseId, courseName, term,
deptId, credits, seatsLeft, textbook, refTextbook) VALUES(' 
+ '' + `courseId` + ',"' + courseName + '","' + term + '",' +
`deptId` + ',' + `credits` + ',' + `seatsLeft` + ',' + textbook + ',' + refTextbook +
');'
fileSQLcode.close()
def StitchFiles(lstFileNames, outFileName):
'''out_Course_Ece.txt'''
fileContents = ''
fileSQLcode = file (outFileName,'w')
for path in lstFileNames:
fileContents = file ( path ).read()
print >> fileSQLcode, fileContents
fileSQLcode.close()
def PopulateClassRoom2():
'''
Table : classroom (classId, location, maxCapacity, seatsLeft)
1 CCE, 2 CSE, 3 ECE, 4 ISE, 5 MAE
'''
locations =
['CCE1','CCE2','CCE3','CCE4','CCE5','CCE6','CCE7','CCE8','CCE9','CCE10','CCE11','CCE12
','CCE13','CCE14','CCE15','CCE16','CCE17','CCE18','CCE19','CCE20', 
'CSE1','CSE2','CSE3','CSE4','CSE5','CSE6','CSE7','CSE8','CSE9','CSE10','CSE11','CSE12'
,'CSE13','CSE14','CSE15','CSE16','CSE17','CSE18','CSE19','CSE20', 
'ECE1','ECE2','ECE3','ECE4','ECE5','ECE6','ECE7','ECE8','ECE9','ECE10','ECE11','ECE12'
,'ECE13','ECE14','ECE15','ECE16','ECE17','ECE18','ECE19','ECE20', 
'ISE1','ISE2','ISE3','ISE4','ISE5','ISE6','ISE7','ISE8','ISE9','ISE10','ISE11','ISE12'
,'ISE13','ISE14','ISE15','ISE16','ISE17','ISE18','ISE19','ISE20', 
'MAE1','MAE2','MAE3','MAE4','MAE5','MAE6','MAE7','MAE8','MAE9','MAE10','MAE11','MAE12'
,'MAE13','MAE14','MAE15','MAE16','MAE17','MAE18','MAE19','MAE20']
#locations = ['Civil', 'Civil', 'ComputerScience', 'ComputerScience',
'Electrical', 'Electrical', 'Industrial', 'Industrial', 'Mechanical', 'Mechanical']
seatsInClass = [10, 15, 20]
for location in locations:
randNo = random.randint(1,100)
if (randNo <= 30):
maxCapacity = seatsInClass[0]
elif ((randNo >= 31) and (randNo <= 70)):
maxCapacity = seatsInClass[1]
else:
maxCapacity = seatsInClass[2]
seatsLeft = maxCapacity
print 'INSERT INTO classroom(location, maxCapacity, seatsLeft) VALUES (' + 
'"' + location + '",' + `maxCapacity` + ',' + `seatsLeft` + ');'
def main():
Fills table : Student -------------------------------------------
PopulateStudentTable(1); #PopulateStudentTable(2); PopulateStudentTable(3);
PopulateStudentTable(4); PopulateStudentTable(5);
#fileNames =
['studentout_Student_Cce.txt','studentout_Student_Cise.txt','studentout_Student_Ece
.txt','studentout_Student_Ise.txt','studentout_Student_Mae.txt']
#StitchFiles(fileNames, 'outStudent.txt');
if __name__ == "__main__":
main()

More Related Content

What's hot

school billing system report
school billing system reportschool billing system report
school billing system reportaki_shu
 
Proposal complete school college management software.
Proposal complete school college management software.Proposal complete school college management software.
Proposal complete school college management software.Sohel Mahboob
 
Result Management System - CSE Final Year Projects
Result Management System - CSE Final Year ProjectsResult Management System - CSE Final Year Projects
Result Management System - CSE Final Year ProjectsJubair Hossain
 
Implementation of College Management Module in Moodle
Implementation of College Management Module in MoodleImplementation of College Management Module in Moodle
Implementation of College Management Module in MoodleSushil Karampuri
 
Design of a prototype web based students’ record management system – webstrems
Design of a prototype web based students’ record management system – webstremsDesign of a prototype web based students’ record management system – webstrems
Design of a prototype web based students’ record management system – webstremsAlexander Decker
 
Project report college information management system on Advanced Java
Project report college information management system on Advanced JavaProject report college information management system on Advanced Java
Project report college information management system on Advanced JavaRishabh Kumar ☁️
 
Final Project Report of College Management System
Final Project Report of College Management SystemFinal Project Report of College Management System
Final Project Report of College Management SystemMuhammadHusnainRaza
 
Student management system
Student management systemStudent management system
Student management systemAmit Gandhi
 
Synopsis of Fee Management System
Synopsis of Fee Management SystemSynopsis of Fee Management System
Synopsis of Fee Management SystemDivya_Gupta19
 
CIS 111 Focus Dreams/newtonhelp.com
CIS 111 Focus Dreams/newtonhelp.comCIS 111 Focus Dreams/newtonhelp.com
CIS 111 Focus Dreams/newtonhelp.combellflower82
 
Student database management system
Student database management systemStudent database management system
Student database management systemSnehal Raut
 
Academic management system PPT
Academic management system PPTAcademic management system PPT
Academic management system PPTNagaraj Kandoor
 
student database management system
student database management systemstudent database management system
student database management systemMd. Riadul Islam
 
World's No. 1 School Management Information system Software
World's No. 1 School Management Information system SoftwareWorld's No. 1 School Management Information system Software
World's No. 1 School Management Information system Softwareguest2ce6683
 
Overview of Student Management System Components-eduWare
Overview of Student Management System Components-eduWareOverview of Student Management System Components-eduWare
Overview of Student Management System Components-eduWareArth InfoSoft P. Ltd.
 
School management system in PHP - Database Project Ideas for Final Year Engin...
School management system in PHP - Database Project Ideas for Final Year Engin...School management system in PHP - Database Project Ideas for Final Year Engin...
School management system in PHP - Database Project Ideas for Final Year Engin...Team Codingparks
 
Sims(Student Information management System)
Sims(Student Information management System)Sims(Student Information management System)
Sims(Student Information management System)saiyadsanobar
 
Student Database Management System
Student Database Management SystemStudent Database Management System
Student Database Management SystemAjay Bidyarthy
 
University Management System
University Management SystemUniversity Management System
University Management SystemNurul Amin Muhit
 

What's hot (20)

school billing system report
school billing system reportschool billing system report
school billing system report
 
Proposal complete school college management software.
Proposal complete school college management software.Proposal complete school college management software.
Proposal complete school college management software.
 
Result Management System - CSE Final Year Projects
Result Management System - CSE Final Year ProjectsResult Management System - CSE Final Year Projects
Result Management System - CSE Final Year Projects
 
Implementation of College Management Module in Moodle
Implementation of College Management Module in MoodleImplementation of College Management Module in Moodle
Implementation of College Management Module in Moodle
 
Design of a prototype web based students’ record management system – webstrems
Design of a prototype web based students’ record management system – webstremsDesign of a prototype web based students’ record management system – webstrems
Design of a prototype web based students’ record management system – webstrems
 
Project report college information management system on Advanced Java
Project report college information management system on Advanced JavaProject report college information management system on Advanced Java
Project report college information management system on Advanced Java
 
Final Project Report of College Management System
Final Project Report of College Management SystemFinal Project Report of College Management System
Final Project Report of College Management System
 
Student management system
Student management systemStudent management system
Student management system
 
Synopsis of Fee Management System
Synopsis of Fee Management SystemSynopsis of Fee Management System
Synopsis of Fee Management System
 
CIS 111 Focus Dreams/newtonhelp.com
CIS 111 Focus Dreams/newtonhelp.comCIS 111 Focus Dreams/newtonhelp.com
CIS 111 Focus Dreams/newtonhelp.com
 
Student database management system
Student database management systemStudent database management system
Student database management system
 
Academic management system PPT
Academic management system PPTAcademic management system PPT
Academic management system PPT
 
student database management system
student database management systemstudent database management system
student database management system
 
World's No. 1 School Management Information system Software
World's No. 1 School Management Information system SoftwareWorld's No. 1 School Management Information system Software
World's No. 1 School Management Information system Software
 
Overview of Student Management System Components-eduWare
Overview of Student Management System Components-eduWareOverview of Student Management System Components-eduWare
Overview of Student Management System Components-eduWare
 
School management system in PHP - Database Project Ideas for Final Year Engin...
School management system in PHP - Database Project Ideas for Final Year Engin...School management system in PHP - Database Project Ideas for Final Year Engin...
School management system in PHP - Database Project Ideas for Final Year Engin...
 
Sims(Student Information management System)
Sims(Student Information management System)Sims(Student Information management System)
Sims(Student Information management System)
 
School softwer slide
School softwer  slideSchool softwer  slide
School softwer slide
 
Student Database Management System
Student Database Management SystemStudent Database Management System
Student Database Management System
 
University Management System
University Management SystemUniversity Management System
University Management System
 

Viewers also liked

BB Patnameet May19 07
BB Patnameet May19 07BB Patnameet May19 07
BB Patnameet May19 07biharbrains
 
Mca pro1 online
Mca pro1 onlineMca pro1 online
Mca pro1 onlinerameshvvv
 
Student information system project
Student information system projectStudent information system project
Student information system projectRizwan Ashraf
 
Student information-system-project-outline
Student information-system-project-outlineStudent information-system-project-outline
Student information-system-project-outlineAmit Panwar
 
Student Information System ( S.I.S. )
Student Information System ( S.I.S.  )Student Information System ( S.I.S.  )
Student Information System ( S.I.S. )Pulkiŧ Sharma
 
online education system project report
online education system project reportonline education system project report
online education system project reportHagi Sahib
 
Student Management System Project Abstract
Student Management System Project AbstractStudent Management System Project Abstract
Student Management System Project AbstractUdhayyagethan Mano
 
Introduction and objectives of the project
Introduction and objectives of the projectIntroduction and objectives of the project
Introduction and objectives of the projectrihan696
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System pptMohsin Ali
 

Viewers also liked (10)

BB Patnameet May19 07
BB Patnameet May19 07BB Patnameet May19 07
BB Patnameet May19 07
 
Orsbasaynhs presentation
Orsbasaynhs presentationOrsbasaynhs presentation
Orsbasaynhs presentation
 
Mca pro1 online
Mca pro1 onlineMca pro1 online
Mca pro1 online
 
Student information system project
Student information system projectStudent information system project
Student information system project
 
Student information-system-project-outline
Student information-system-project-outlineStudent information-system-project-outline
Student information-system-project-outline
 
Student Information System ( S.I.S. )
Student Information System ( S.I.S.  )Student Information System ( S.I.S.  )
Student Information System ( S.I.S. )
 
online education system project report
online education system project reportonline education system project report
online education system project report
 
Student Management System Project Abstract
Student Management System Project AbstractStudent Management System Project Abstract
Student Management System Project Abstract
 
Introduction and objectives of the project
Introduction and objectives of the projectIntroduction and objectives of the project
Introduction and objectives of the project
 
School Management System ppt
School Management System pptSchool Management System ppt
School Management System ppt
 

Similar to Online courseregistration tolstoy

Course registration system
Course registration systemCourse registration system
Course registration systemHuda Seyam
 
Student Management System of database system.pptx
Student Management System of database system.pptxStudent Management System of database system.pptx
Student Management System of database system.pptxMuzamalAsghar
 
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT 1.docx
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT  1.docxRunning Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT  1.docx
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT 1.docxjeanettehully
 
60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manualChitrarasan Kathiravan
 
Student managment system
Student managment systemStudent managment system
Student managment systemNurAinNaim
 
Lecture_01.1.pptx
Lecture_01.1.pptxLecture_01.1.pptx
Lecture_01.1.pptxRockyIslam5
 
HND Assignment Brief Session Sept.docx
              HND Assignment Brief               Session Sept.docx              HND Assignment Brief               Session Sept.docx
HND Assignment Brief Session Sept.docxjoyjonna282
 
Learning Analytics in Incorta
Learning Analytics in IncortaLearning Analytics in Incorta
Learning Analytics in IncortaSuzie
 
Guide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling SubjectsGuide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling Subjectsمحمود فرغلي
 
Guide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling SubjectsGuide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling Subjectsمحمود فرغلي
 
B.Sc_.CSIT-8th-sem-syllabus.pdf
B.Sc_.CSIT-8th-sem-syllabus.pdfB.Sc_.CSIT-8th-sem-syllabus.pdf
B.Sc_.CSIT-8th-sem-syllabus.pdfSudarshanSharma43
 
IRJET- Web-Based System for Creation and Management of Multiple Choices based...
IRJET- Web-Based System for Creation and Management of Multiple Choices based...IRJET- Web-Based System for Creation and Management of Multiple Choices based...
IRJET- Web-Based System for Creation and Management of Multiple Choices based...IRJET Journal
 

Similar to Online courseregistration tolstoy (20)

Course registration system
Course registration systemCourse registration system
Course registration system
 
Student Management System of database system.pptx
Student Management System of database system.pptxStudent Management System of database system.pptx
Student Management System of database system.pptx
 
Pravin_Bhat
Pravin_BhatPravin_Bhat
Pravin_Bhat
 
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT 1.docx
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT  1.docxRunning Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT  1.docx
Running Head STUDENT RECORD KEEPING SYSTEM DATABASE PROJECT 1.docx
 
Requirement and System Analysis
Requirement and System AnalysisRequirement and System Analysis
Requirement and System Analysis
 
60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual60780174 49594067-cs1403-case-tools-lab-manual
60780174 49594067-cs1403-case-tools-lab-manual
 
Requirement and system analysis
Requirement and system analysisRequirement and system analysis
Requirement and system analysis
 
Student managment system
Student managment systemStudent managment system
Student managment system
 
Lecture_01.1.pptx
Lecture_01.1.pptxLecture_01.1.pptx
Lecture_01.1.pptx
 
Placement automation system
Placement automation systemPlacement automation system
Placement automation system
 
Student acadamic system Final report
Student acadamic system Final reportStudent acadamic system Final report
Student acadamic system Final report
 
HND Assignment Brief Session Sept.docx
              HND Assignment Brief               Session Sept.docx              HND Assignment Brief               Session Sept.docx
HND Assignment Brief Session Sept.docx
 
Learning Analytics in Incorta
Learning Analytics in IncortaLearning Analytics in Incorta
Learning Analytics in Incorta
 
Guide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling SubjectsGuide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling Subjects
 
Guide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling SubjectsGuide me Android APP to Student enrolling Subjects
Guide me Android APP to Student enrolling Subjects
 
B.Sc_.CSIT-8th-sem-syllabus.pdf
B.Sc_.CSIT-8th-sem-syllabus.pdfB.Sc_.CSIT-8th-sem-syllabus.pdf
B.Sc_.CSIT-8th-sem-syllabus.pdf
 
IRJET- Web-Based System for Creation and Management of Multiple Choices based...
IRJET- Web-Based System for Creation and Management of Multiple Choices based...IRJET- Web-Based System for Creation and Management of Multiple Choices based...
IRJET- Web-Based System for Creation and Management of Multiple Choices based...
 
SRMS-FINAL 3.pptx
SRMS-FINAL 3.pptxSRMS-FINAL 3.pptx
SRMS-FINAL 3.pptx
 
YC
YCYC
YC
 
PORT FOLIO
PORT FOLIOPORT FOLIO
PORT FOLIO
 

Recently uploaded

(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...ranjana rawat
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 

Recently uploaded (20)

(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...
(TARA) Talegaon Dabhade Call Girls Just Call 7001035870 [ Cash on Delivery ] ...
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 

Online courseregistration tolstoy

  • 1. COP 5725 - Database Management Systems University of Florida Online Course Registration System Project Report Tolstoy Newtonraja Aditya Nafde Computer and Information Science & Eng Computer and Information Science & Eng tolstoynewton@ufl.edu adityan@ufl.edu UF-ID: 3411-3151 UF-ID: 5159-7503 1. 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. 2. 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. 3. 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.
  • 2. • 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 4. 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.
  • 3. 5. ER Diagram 6. Design Schema Create table Student ( studentId int Primary Key , firstName varchar(30) not null, lastName varchar(30) not null, profilepic blob, gender varchar(1), dob date, address varchar(200), deptId int, homepage varchar(70) default null, yearEnrolled varchar(15) not null, overallGPA float (3,2), foreign key (deptId) references Department(dept_id)
  • 4. ); Create table Login ( username varchar(20) not null UNIQUE, password varchar(20) not null, type varchar(1) not null, studInstId int not null AUTO_INCREMENT Primary Key ); Create table Instructor( instId int Primary Key , firstName varchar(30) not null, lastName varchar(30) not null, profilepic blob, gender varchar(1) not null, dob date not null, address varchar(200) not null, homepage varchar(70) default null, yearEnrolled varchar(15) not null ) Create table Department ( deptId int primary key, deptName varchar(50) not null ) Create table Course ( courseId int, courseName varchar(50), term varchar(15) , deptId int, credits int not null, textbook varchar(50) default null, refTextbook varchar(50) default null, courselink varchar(50) default null, primary key (courseId, term), foreign key (deptId) references Department(dept_id), ); Create table Prerequisites ( courseId varchar(15), prereqId varchar(15), foreign key (courseId) references Course(courseId), foreign key (prereqId) references Course(courseId) ); Create able Coursestaken ( studentId int, courseId varchar(10), term varchar(15), grade varchar(1) default null , foreign key (studentId) references Student, foreign key (courseId) references Course, foreign key (term) references Course(term)
  • 5. ); Create table InstructorDept ( instId int, deptId int, foreign key (instId) references Instructor, foreign key (deptId) references Department ); Create table InstructorCourses ( instId int, courseId varchar(15), term varchar(15), foreign key (instId) references Instructor, foreign key (courseId) references Courses, foreign key (term) references Course(term) ); Create table Classroom ( classId varchar(10) primary key, location varchar(30) not null, maxCapacity int not null, seatsLeft int not null ); Create table ClassCourse ( classId int not null, courseId varchar(15) not null, period int not null, day varchar(1) not null, term varchar(15) not null, foreign key (classId) references Classroom(classId), foreign key (courseId) references Course(courseId), foreign key (term) references Course(term) ); 7. Major Design Decisions Major design decisions in the project were discussed and entered in a shared online Google document so that as and when someone thinks of a new idea for bonus functionality we were able to add in the document and share it with the other person (2 in a team). The design schema and other field information were also stored and work performed on a day-by-day basis was logged so that we were aware on the progress of the project. Some design challenges: We used PNG pictures for storing the profile picture information and found that the storage space went to big numbers. We then changed the type of data and made it as a jpeg picture.
  • 6. We missed the term field in the classroom table initially and had to add the field later to keep track of the class room information for previous semesters. We had not thought about the graduation date field for a student. When trying to implement a realistic system this field had to be in place to segregate the graduated students and other current students. We had to have an ADMIN login to perform some administrative tasks. We thought it would be very practical to have this option. For example, when you are logged in as an admin you can edit the graduated field for a student. We tried to map the real scenario where the student requests that he wants to graduate to the Grad Advisor in his department and the Advisor requests DB Administrators to update the student’s `graduated` field. Functionalities a student can perform in the system: - Can edit his profile data i.e. address/homepage/email id information and update. - Register a course - Constraints checked here include MAX courses registered this semester, in our system its 3, Course previously not registered, Seats lefts in the course, Prerequisite course registered and Conflicts in timing with other currently registered courses. - View his schedule - Can view class schedule in a tabular format (similar to ISIS) - Drop course option is provided on this page - Can view additional information about the courses he has taken. - Can view textbook information of the courses department wise. - Can view courses with prerequisite information - Can view the list of courses using the department and instructor parameters. - Can view the list of courses using the day and period parameters. - Can view courses previously taken along with grades information - Can also request for graduation, we have enforced a minimum of 10 courses for a student to graduate, If this request is not met the graduation request is denied else it if forwarded to the graduate advisor. Functionalities an Instructor can implement in the system:
  • 7. - Can view / edit profile information and also update. - Can view current schedule in a tabular format (Similar to ISIS) - Can edit Course details - Details such as Seats left - to increase or decrease the capacity of the course (seats cannot be more than class capacity) - Can add a new course to the database under his profile and department. - The input parameters in the form are checked for valid input data before updating the database. - Conflicts with the instructor's schedule as well as conflicts in timing with other courses in the same classroom are checked. - Can view classroom availability as well as maximum capacity of classroom when course information is updated or new classroom is added - Instructor can view info of all the students registered in the courses he/she is handling. 8. Programming practices used As mentioned earlier we used Google Documents to share critical information about the project. The project status, issues faced and new functionalities were shared concurrently and updated hour by hour which maximized our work performance when trying to build the project from different places. We strongly believed in dividing the tasks and building the project instead of the conventional pair programming method. Loading Real time Data: Any rich web system should have lots of data to work on and implement all the functionalities. With all the functionalities built and with less data the system would be a boring application to work on. We wanted to make the application rich and interesting to the person who wanted to use it. Our first challenge (apart from designing schemas and building the tables) was to load the database with lots of information. How? We coded a python script (attached to the appendix) which was used to parse a html file from the internet and extract the needed information. The CISE student and instructor pages were scanned and information was retrieved. The next step was to code the functions in the python code to generate random values for fields we didn’t have in the html file.
  • 8. For example: Randomized functions - Birthdays, homepages, overallGPA, email Id Example code for populating the department table: def PopulateDepartmentTable(): ''' Read text file and generates SQL command ''' path = "deptNamesinDeptNames.txt"; fileContents = file ( path ).read() fileSQLcode = file ('deptNamesoutSQLDeptNames.txt','w') #INSERT INTO Department VALUES (1, “Computer Science”); count = 1 for deptName in fileContents.split('n'): #print deptName #INSERT INTO Department VALUES (1, “Computer Science”); #Enters data into `Login table` and `Instructor` print 'INSERT INTO Department(deptId, deptName) VALUES ("' + `count` + '","' + deptName + '");' print >>fileSQLcode, 'INSERT INTO Department(deptId, deptName) VALUES ("' + `count` + '","' + deptName + '");' count = count + 1 fileSQLcode.close() Some quick stats on the database: Database name: coursereg Database size: 5.26 MB Table Name Rows Size Student 863 160.9 KB Prerequisites 27 3.2 KB Login 1022 76.9 KB Instructordept 221 10.9 KB Instructorcourses 221 16 KB Instructor 159 31.8 KB Department 5 3.3 KB Coursestaken 7210 381.1 KB Course 225 28.4 KB Classroom 100 4.3 KB Classcourse 675 38.5 KB
  • 9. Use of Comments: Any new functions or new logic added to the PHP file was very difficult to comprehend without the comments. Hence lots of comments were added to the code to make it easy for the other team member to comprehend and extend the logic of the code. Security: We used a front-end software for modifying and executing the mySQL commands (similar to a Microsoft SQL Server interface). The name of the software is Heidi and its open source. We set encryption and locked the database when not in use. All the queries executed using PHP were first tested in this software and results were verified. Backups: We made it a point to save backups of the entire PHP collection files and DATABASE everyday with the timestamp. We went back to previous versions of the code whenever the current code got unstable or we were faced with unexpected weird results. Usability and User Interfaces: All the images, header banners were designed in Adobe Photoshop 9 and a basic template (CSS) was used for all the pages. 9. Scope The main aim of the project is to learn the intricacies of modeling the data base with the given requirements and using a web based interface to interact with the back end keeping in mind the data consistency and the stability of the entire system. Since the system is developed with a web based interface, we can start executing the model with parallel executions with the confidence that the back end MySQL data store will take care of the concurrent transactions. The ACID (Atomicity, Consistency, Isolation, Durability) property of the database helps to keep the system consistent and stable. 10. Implementation Methods The Online Course Registration project was implemented successfully using the Apache Server with MySQL running as the back end database and PHP used as the server side language. The implementation methods were chosen carefully taking into consideration the possibilities of hosting this project online in a server after the semester. Several high profile hosting companies support mySQL and PHP. Comparisons can be drawn later based on performance, execution time, efficiency, memory usage by implementing the system in different servers with various traffic load.
  • 10. 11. Breakdown of tasks The following table indicates the task distribution among the team members. Task Team Member Comprehensive study of the system Aditya, Tolstoy Modeling the database relational schema Aditya, Tolstoy Basic Testing and Optimizing relations and tables Aditya Loading Real-time data entries in the database using Python Tolstoy Front-end template design using CSS Aditya User Interface design with Adobe Photoshop Tolstoy Break down of coding and analyzing requirements Aditya, Tolstoy Coding student related functionalities Aditya Coding instructor related functionalities Tolstoy Testing & Optimization of code Aditya, Tolstoy Project Documentation Aditya, Tolstoy 12. Facilities used Package used: WAMPSERVER 2.0. WAMP stands for Windows, Apache 2.2.11, MySQL 5.1.33 PHP 5.2.9 Operating System: Windows7 64 Bit Processor Processor Speed: Core 2 Duo 2.4 Ghz Processor Memory available: 4 GB, 256 MB Nvidia Graphics card Hard Disk capacity: 250 GB Database size: 5.26 MB Front end code: 5 MB
  • 11. 13. Time and Work Schedule Deadlines Met: Phase1 Deadline – Nov 10th Phase2 Deadline – Dec 17th
  • 12. 14. Screen shots and links explained Index.php -> This is the index page, any new user is directed to this page. The page simply asks for username and password from the user and depending on the user type – student, instructor or administrator, the user is directed to appropriate homepage. Fig: Index page The screen shot of instructor’s home page is shown below and also the side links are explained
  • 13. Fig: Instructor home page Studenthome.php, instructorhome.php, adminhome.php – Home pages for students, instructors and administrators respectively. editProfile.php, updateProfile.php – PHP files for editing and updating profile information for students and instructors respectively. My schedule link in both instructors and students page gives them their current schedule displayed in a tabular format similar to ISIS system. Students can also drop their courses via this page. Detailed information about the courses is available via this link. Instructors can edit their course information through this page.
  • 14. Instructor can add a new course via Add New Course link on the left menu. The PHP files are courseinfo.php and add_new_course.php. Instructors must provide course name as a valid input. The required conflict constraints are also check once the form is submitted by the system. Instructor can also view information about class capacity and current class schedule as follows : Thus the instructors can see that the class capacity of class ECE14 is 15 and the ‘green’ slots indicate available slots for the selected class. Instructors can also view students registered in their courses for the current term via Registered Students link. This gives extra information about the students registered for his/her courses The screen shot of the student home page is as follows :
  • 15. Fig: Profile View for Student Students can register for courses via ‘Register courses’ link. All the specified conditions are checked while validating the request from the user to register the course. If all the conditions are met then course registration is allowed to be proceeded. Students can view their schedule of courses in tabular format similar to ISIS. The below screen shot depicts one.
  • 16. Fig: Course Schedule & Drop Course option Thus in the tabular format the student can see his schedule and also option to drop courses is provided on this page. This page gives clear idea about course schedule to the students. Through links on the left menu students can search for courses instructor wise and schedule wise as well. Students can also check for course prerequisites of the courses as well as the textbooks. The php files -> textbookinfo.php, instinfo.php, cbyschedule.php, prerequisite.php etc Previously taken courses and grades received information can be accessed by clicking the My Grade option. We have also provided a link ‘Graduate from’ from where a student can sent request for graduation to the graduate advisor. The system checks for minimum course requirements (10 in our case) and after that the request is forwarded to the graduate advisor.
  • 17. 15. Future Modifications This project was developed keeping in mind the functionalities for students and instructors. This project provides all the functionalities specified in the project document. We tried to simulate the real world environment by generating loads of data from the University of Florida departments itself. Much functionality can be added over the existing one so that the system has more enhanced features and is more efficient. Classroom/Dept Info on Maps: Students can view the classrooms, departments and other related information on campus map and thus will know the classroom locations more clearly. Google Map API can be used and data can be easily mapped on top of the map. More Statistics for Grades: Students can know about the distribution of grades and other statistics such as assignment scores, project scores in that course. Thus students can be aware of the grading system followed by a particular instructor. Administrators: We can add a third kind of user besides students and instructors called administrators to the system. They can have a clearer view of underlying databases. They can add a new user to the system, update status of existing users, can generate reports from time to time check various statistics about the system and user behavior. Statistics results can be used by Database administrators to tweak the underlying database at the lowest level to improve the performance and efficiency of the system. The administrator can also do time to time backup of the databases in the system. Alumni’s specific pages: A different view of the system can be created for the students who have graduated from the college. They can only see the courses offered by each department but will not be allowed to register for any courses. Additional functionalities include request for duplicate degree / transcripts etc. Encryption: Effective encryption schemes can be used to improve the security of the system. Password recovery facility can be provided for effective functioning of system and ease of use by users.
  • 18. 16. References 1. Fundamentals of Database Systems – Elmasri, Navathe, Somayajulu, Gupta – 2nd Edition 2. Database Management Systems – Ramakrishnan, Gherke – 3rd Edition 3. http://en.wikipedia.org/wiki/Database_normalization - Normalization article 4. http://www.wampserver.com/en/ - WAMP information Appendix Python Source code (Loading data into the tables) #!C:ProgramsPython25Python.exe # -*- coding: cp1252 -*- import random def findDOB(start, end): date = random.randint(1,31) month = random.randint(1,12) year = random.randint (start, end) if (month < 10): month = '0' + `month` else: month = `month` if (date < 10): date= '0' + `date` else: date = `date` dob = `year` + '-' + month + '-' + date return dob def findGender(): randNo = random.randint(1,20) if (randNo % 2 == 0): return 'M' else: return 'F' def findYearEnrolled(start, end): randNo = random.randint (1,3) if (randNo == 1): yearEnrolled = 'Spring ' + `random.randint (start, end)` elif (randNo == 2): yearEnrolled = 'Summer ' + `random.randint (start, end)` elif (randNo == 3): yearEnrolled = 'Fall ' + `random.randint (start, end)`
  • 19. return yearEnrolled def PopulateDepartmentTable(): ''' Read text file and generates SQL command ''' path = "deptNamesinDeptNames.txt"; fileContents = file ( path ).read() fileSQLcode = file ('deptNamesoutSQLDeptNames.txt','w') #INSERT INTO Department VALUES (1, “Computer Science”); count = 1 for deptName in fileContents.split('n'): #print deptName #INSERT INTO Department VALUES (1, “Computer Science”); #Enters data into `Login table` and `Instructor` print 'INSERT INTO Department(deptId, deptName) VALUES ("' + `count` + '","' + deptName + '");' print >>fileSQLcode, 'INSERT INTO Department(deptId, deptName) VALUES ("' + `count` + '","' + deptName + '");' count = count + 1 fileSQLcode.close() def PopulateCourseTable(deptNoParam): ''' Read text file and generates SQL command Fills TABLES: course ''' if (deptNoParam == 1): path = "courseinCCe.txt"; fileSQLcode = file ('courseout_Course_Cce.txt','w') deptId = 1 # 1 Cce, 2 Cise, 3 Ece, 4 Ise, 5 Mae courseId = 999 elif (deptNoParam == 2): path = "courseinCise.txt"; fileSQLcode = file ('courseout_Course_Cise.txt','w') deptId = 2 courseId = 1999 elif (deptNoParam == 3): path = "courseinEce.txt"; fileSQLcode = file ('courseout_Course_Ece.txt','w') deptId = 3 courseId = 2999 elif (deptNoParam == 4): path = "courseinIse.txt"; fileSQLcode = file ('courseout_Course_Ise.txt','w') deptId = 4 courseId = 3999 elif (deptNoParam == 5): path = "courseinMae.txt"; fileSQLcode = file ('courseout_Course_Mae.txt','w') deptId = 5 courseId = 4999 fileContents = file ( path ).read() for line in fileContents.split('n'):
  • 20. row = line.split('t') #code, course, inst if len(row) >= 2: triples = [] for item in row: if (item): triples.append (item) #print triples tempCourseId, courseName, instName = triples #ignore this courseId names = instName.split(',') if len(names) == 1: firstName = names[0] lastName = "" else: lastName, firstName = names[0], names[1] #print codeId, courseName, firstName, lastName courseId = courseId + 1 term = 'Fall 2009' credits = 3 textbook = '"' + courseName.lower() + ' book"' refTextbook = '""' seatsInClass = [15, 20, 25] for i in range(1,225): randNo = random.randint(1,100) if (randNo <= 30): seatsLeft = seatsInClass[0] elif ((randNo >= 31) and (randNo <= 70)): seatsLeft = seatsInClass[1] else: seatsLeft = seatsInClass[2] #print 'INSERT INTO Course (courseId, courseName, term, deptId, credits, textbook, refTextbook) VALUES(' #+ '' + `courseId` + ',"' + courseName + '","' + term + '",' + `deptId` + ',' + `credits` + ',' + `seatsLeft` + ',' + textbook + ',' + refTextbook + ');' print >>fileSQLcode, 'INSERT INTO Course (courseId, courseName, term, deptId, credits, seatsLeft, textbook, refTextbook) VALUES(' + '' + `courseId` + ',"' + courseName + '","' + term + '",' + `deptId` + ',' + `credits` + ',' + `seatsLeft` + ',' + textbook + ',' + refTextbook + ');' fileSQLcode.close() def StitchFiles(lstFileNames, outFileName): '''out_Course_Ece.txt''' fileContents = '' fileSQLcode = file (outFileName,'w') for path in lstFileNames: fileContents = file ( path ).read() print >> fileSQLcode, fileContents fileSQLcode.close() def PopulateClassRoom2(): ''' Table : classroom (classId, location, maxCapacity, seatsLeft) 1 CCE, 2 CSE, 3 ECE, 4 ISE, 5 MAE
  • 21. ''' locations = ['CCE1','CCE2','CCE3','CCE4','CCE5','CCE6','CCE7','CCE8','CCE9','CCE10','CCE11','CCE12 ','CCE13','CCE14','CCE15','CCE16','CCE17','CCE18','CCE19','CCE20', 'CSE1','CSE2','CSE3','CSE4','CSE5','CSE6','CSE7','CSE8','CSE9','CSE10','CSE11','CSE12' ,'CSE13','CSE14','CSE15','CSE16','CSE17','CSE18','CSE19','CSE20', 'ECE1','ECE2','ECE3','ECE4','ECE5','ECE6','ECE7','ECE8','ECE9','ECE10','ECE11','ECE12' ,'ECE13','ECE14','ECE15','ECE16','ECE17','ECE18','ECE19','ECE20', 'ISE1','ISE2','ISE3','ISE4','ISE5','ISE6','ISE7','ISE8','ISE9','ISE10','ISE11','ISE12' ,'ISE13','ISE14','ISE15','ISE16','ISE17','ISE18','ISE19','ISE20', 'MAE1','MAE2','MAE3','MAE4','MAE5','MAE6','MAE7','MAE8','MAE9','MAE10','MAE11','MAE12' ,'MAE13','MAE14','MAE15','MAE16','MAE17','MAE18','MAE19','MAE20'] #locations = ['Civil', 'Civil', 'ComputerScience', 'ComputerScience', 'Electrical', 'Electrical', 'Industrial', 'Industrial', 'Mechanical', 'Mechanical'] seatsInClass = [10, 15, 20] for location in locations: randNo = random.randint(1,100) if (randNo <= 30): maxCapacity = seatsInClass[0] elif ((randNo >= 31) and (randNo <= 70)): maxCapacity = seatsInClass[1] else: maxCapacity = seatsInClass[2] seatsLeft = maxCapacity print 'INSERT INTO classroom(location, maxCapacity, seatsLeft) VALUES (' + '"' + location + '",' + `maxCapacity` + ',' + `seatsLeft` + ');' def main(): Fills table : Student ------------------------------------------- PopulateStudentTable(1); #PopulateStudentTable(2); PopulateStudentTable(3); PopulateStudentTable(4); PopulateStudentTable(5); #fileNames = ['studentout_Student_Cce.txt','studentout_Student_Cise.txt','studentout_Student_Ece .txt','studentout_Student_Ise.txt','studentout_Student_Mae.txt'] #StitchFiles(fileNames, 'outStudent.txt'); if __name__ == "__main__": main()