1.1 About The Project
1.1 About The Project
INTRODUCTION
The term system may be used differently in different contexts, but more or less
the concept remains the same. Online student course registration system combines
multiple systems to construct a combined framework. This framework consists of
multiple modules, which further contain different systems along with the
implementation of their defined constraints.
When used judiciously, computers can help us save time, secure our personal
information, access the required information whenever and wherever required.
Keeping all these positive points in mind, we have developed an Online Student
Course Registration System for easily managing the semester registration process for
the student in an institution. Ours is an advisory based system. In state agricultural
universities the course allocation is advisory based and more complicated. The courses
are assigned according to the skill set and industry requirements. Hence, in current
scenario, automated system is required for course registration of students.
1
1.2 OBJECTIVE:
The current project aims at reducing the workload all the entities involved in the
registration procedure for the students. The current manual system faces different
challenges as to maintaining data of each student manually. Hard copy registers are
maintained currently to verify student details. From students point of view, they have
to fill the forms manually and then get them verified from concerned officials, which
is a very time consuming process. The objectives of this proposed web application
system are:
With the requirement of registration process for every semester, it becomes all the
more important to simplify a process which is highly repetitive. The achievement of
the above objectives can help the institution in managing the resources efficiently. The
automated process will lead to time saving and eradication of common errors.
2
CHAPTER 2
LITERATURE SURVEY
3
2.1.1 DISADVANTAGES OF EXISTING SYSTEM
Paper work can take up a significant amount of space, and this
requirement will only get bigger as the number of documents
you accrue grows.
The system is implemented in manual, so the response is very
slow.
One of the biggest drawbacks of paper-based document
management systems is associated costs.
If you want to make changes to a paper-based document, you
will need to photocopy the original first-otherwise you will ruin
it with edits and comments.
4
CHAPTER 3
SYSTEM ANALYSIS
3.1 INTRODUCTION
System analysis is the process of analyzing the system by considering the
constraints such as performance, time, and memory. This web application also
analyzing by consideration these three constraints .This proposed system also differs
from existing system by these three constraints. The proposed system is showing
Excellency in these three constraints. Here in this system analyze, we will analyze the
requirements needed for this web application both hardware as well as software. We
will also analyze the operating system and the platform of both the front end and as
well as back end.
The hardware requirements may serve as the basis for a contract for the
implementation of the system and should therefore be a complete and consistent
specification of the whole design. They are used but software engineers as the starting
point for the system design.
It should what the system do and not how it should be implemented.
The following hardware requirements for the system:
Package used : WAMPSERVER 2.0
WAMP stands for Windows,
Apache 2.2.11
MySQL 5.1.33
PHP 5.2.9
5
Processor speed : Core 2 Duo 2.4 GHz processor
Memory available : 4GB, 256MB
Hard disk capacity : 250GB
Database size : 5.26MB
Input Device : Mouse & Keyboard
Output Device : Monitor
HARDWARE REQUIREMENTS:
The software requirements document s the specification of the system. It should
include both a definition and a speciation requirements. It is a set of what the system
should do rather than how should do it. The software requirements provide a basis for
creating the software requirements specification. It is useful in estimating cost,
planning, team activities, performing task and tracking the teams and tracking the
teams progress.
6
3.2.3 FRONT END
PHP
PHP is a server-side scripting language designed primarily for web
development but also used as a general-purpose programming language. Originally
created by Rasmus Lerdorf in 1994, the PHP reference implementation is now
produced by The PHP Development Team. PHP originally stood for Personal Home
Page, but it now stands for the recursive acronym PHP: Hypertext Pre-processor.
PHP code may be embedded into HTML or HTML5 code, or it can be used in
combination with various web template systems, web content management
systems and web frameworks. PHP code is usually processed by a
PHP interpreter implemented as a module in the web server or as a Common Gateway
Interface (CGI) executable. The web server combines the results of the interpreted and
executed PHP code, which may be any type of data, including images, with the
generated web page. PHP code may also be executed with a command-line
interface (CLI) and can be used to implement standalone graphical applications.
The standard PHP interpreter, powered by the Zend Engine, is free software released
under the PHP License. PHP has been widely ported and can be deployed on most
web servers on almost every operating system and platform, free of charge.
The PHP language evolved without a written formal specification or standard until
2014, leaving the canonical PHP interpreter as a de facto standard.
During 2014 and 2015, a new major PHP version was developed, which was
numbered PHP 7. The numbering of this version involved some debate. While the
PHP 6 Unicode experiment had never been released, several articles and book titles
referenced the PHP 6 name, which might have caused confusion if a new release were
to reuse the name. After a vote, the name PHP 7 was chosen.
The foundation of PHP 7 is a PHP branch that was originally dubbed PHP next
generation (phpng). It was authored by Dmitry Stogov, Xinchen Hui and Nikita
Popov, and aimed to optimize PHP performance by refactoring the Zend Engine to use
more compact data structures with improved cache locality while retaining near-
complete language compatibility. As of 14 July 2014, WordPress-based benchmarks,
which served as the main benchmark suite for the phpng project, showed an almost
7
100% increase in performance. Changes from phpng are also expected to make it
easier to improve performance in the future, as more compact data structures and other
changes are seen as better suited for a successful migration to a just-in-time (JIT)
compiler. Because of the significant changes, the reworked Zend Engine is
called Zend Engine 3, succeeding Zend Engine 2 used in PHP 5.
Because of major internal changes in phpng, it must receive a new major
version number of PHP, rather than a minor PHP 5 release, according to PHP's release
process.Major versions of PHP are allowed to break backward-compatibility of code
and therefore PHP 7 presented an opportunity for other improvements beyond phpng
that require backward-compatibility breaks, including wider use
of exceptions, reworking variable syntax to be more consistent and complete, and the
deprecation or removal of various legacy features.
PHP 7 also introduced new language features, including return type declarations for
functions,which complement the existing parameter type declarations, and support for
the scalar types (integer, float, string, and boolean) in parameter and return type
declarations.
Instead of lots of commands to output HTML (as seen in C or Perl), PHP pages
contain HTML with embedded code that does "something" (in this case, output "Hi,
I'm a PHP script!"). The PHP code is enclosed in special start and end processing
instructions <?php and ?> that allow you to jump into and out of "PHP mode."
What distinguishes PHP from something like client-side JavaScript is that the code is
executed on the server, generating HTML which is then sent to the client. The client
would receive the results of running that script, but would not know what the
underlying code was. You can even configure your web server to process all your
HTML files with PHP, and then there's really no way that users can tell what you have
up your sleeve.
The best things in using PHP are that it is extremely simple for a newcomer, but offers
many advanced features for a professional programmer. Don't be afraid reading the
long list of PHP's features. You can jump in, in a short time, and start writing simple
scripts in a few hours.
8
3.2.4 BACK END
SQL
SQL (Structured Query Language) is a domain-specific language used in
programming and designed for managing data held in a relational database
management system (RDBMS), or for stream processing in a relational data stream
management system (RDSMS).
Originally based upon relational algebra and tuple relational calculus, SQL consists of
a data definition language, data manipulation language, and data control language.
The scope of SQL includes data insert, query, update and delete, schema creation and
modification, and data access control. Although SQL is often described as, and to a
great extent is, a declarative language (4GL), it also includes procedural elements.
SQL was one of the first commercial languages for Edgar F. Codd's relational model,
as described in his influential 1970 paper, "A Relational Model of Data for Large
Shared Data Banks." Despite not entirely adhering to the relational model as described
by Codd, it became the most widely used database language.
The uses of SQL include modifying database table and index structures; adding,
updating and deleting rows of data; and retrieving subsets of information from within
a database for transaction processing and analytics applications. Queries and other
SQL operations take the form of commands written as statements -- commonly used
SQL statements include select, add, insert, update, delete, create, alter and truncate.
An official SQL standard was adopted by the American National Standards Institute
(ANSI) in 1986 and then by the International Organization for Standardization, known
as ISO, in 1987. More than a half-dozen joint updates to the standard have been
released by the two standards development bodies since then; as of this writing, the
most recent version is SQL:2011, approved that year.
9
Both proprietary and open source relational database management systems built
around SQL are available for use by organizations. They include Microsoft SQL
Server, Oracle Database, IBM DB2, SAP HANA, SAP Adaptive
Server, MySQL (now owned by Oracle) and PostgreSQL. However, many of these
database products support SQL with proprietary extensions to the standard language
for procedural programming and other functions. For example, Microsoft offers a set
of extensions called Transact-SQL (T-SQL), while Oracle's extended version of the
standard is PL/SQL. As a result, the different variants of SQL offered by vendors
aren't fully compatible with one another.
SQL became a standard of the American National Standards Institute (ANSI) in 1986,
and of the International Organization for Standardization (ISO) in 1987. Since then,
the standard has been revised to include a larger set of features. Despite the existence
of such standards, most SQL code is not completely portable among different database
systems without adjustments.
The complexity and size of the SQL standard means that most implementers do
not support the entire standard.
The standard does not specify database behavior in several important areas
(e.g. indexes, file storage...), leaving implementations to decide how to behave.
The SQL standard precisely specifies the syntax that a conforming database
system must implement. However, the standard's specification of the semantics of
language constructs is less well-defined, leading to ambiguity.
Many database vendors have large existing customer bases; where the newer
version of the SQL standard conflicts with the prior behavior of the vendor's
database, the vendor may be unwilling to break backward compatibility.
There is little commercial incentive for vendors to make it easier for users to
change database suppliers (see vendor lock-in).
Users evaluating database software tend to place other factors such as performance
higher in their priorities than standards conformance.
SQL was adopted as a standard by the American National Standards Institute (ANSI)
in 1986 as SQL-86 and the International Organization for Standardization (ISO) in
1987. Nowadays the standard is subject to continuous improvement by the Joint
Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 32,
Data management and interchange, which affiliate to ISO as well as IEC. It is
commonly denoted by the pattern: ISO/IEC 9075 Part n: title, or, as a
shortcut, ISO/IEC 9075.
11
ISO/IEC 9075 is complemented by ISO/IEC 13249: SQL Multimedia and Application
Packages (SQL/MM), which defines SQL based interfaces and packages to widely
spread applications like video, audio and spatial data.
Until 1996, the National Institute of Standards and Technology (NIST) data
management standards program certified SQL DBMS compliance with the SQL
standard. Vendors now self-certify the compliance of their products.
The original standard declared that the official pronunciation for "SQL" was
an initialise. Regardless, many English-speaking database professionals
(including Donald Chamberlin himself use the acronym-like pronunciation
of, mirroring the language's pre-release development name of "SEQUEL". The SQL
standard has gone through a number of revisions.
DRDA was designed by a work group within IBM in the period 1988 to 1994. DRDA
enables network connected relational databases to cooperate to fulfil SQL requests.
An interactive user or program can issue SQL statements to a local RDB and receive
tables of data and status indicators in reply from remote RDBs. SQL statements can
also be compiled and stored in remote RDBs as packages and then invoked by
package name. This is important for the efficient operation of application programs
that issue complex, high-frequency queries. It is especially important when the tables
to be accessed are located in remote systems.
The messages, protocols, and structural components of DRDA are defined by
the Distributed Data Management Architecture.
12
CHAPTER 4
SYSTEM DESIGN
Data
storage
All the information fetch from the database by the web application. The details are
verified by the administration office and updated to the database. Used to monitoring
the student course registration by the administration office.
13
4.2 MODULES
Masters Module manages database entries of all the master tables from the front-end.
The Masters database is more or less permanent and is modified only at session start.
The Masters Module currently manages these database tables namely: category,
college, country, course, course-category, credit/non-credit, department, designation,
faculty, gender, qualification, quota, student, stream, Ug/Pg.
Transactions Module facilitates the entries for Programme of Work and Student
Registration from the front-end of the web application. Programme of Work is created
when a student is first enrolled with the college and Registration is done at the
beginning of every semester. Programme of Work contains details of all the courses to
be studied by the student during his/her degree. Registration caters to the courses a
student has to study during the current semester. The List of Registration courses is
obtained from the Programme of Work database.
14
4.2.4 Reports Module
Reports Module comprises of the final view of the entries made into the Admin,
Masters and Transactions Modules. The information depicted inside the Reports
Module is not visible to everyone in order to maintain data security, data integrity and
consistency. The information is available according to the type of user logged into the
system. This module contains reports for all the Admin, Masters and Transaction
modules.
15
The use case diagram is determined to them every students verify the
course details. The above all details are verify by the respectively
application and database. After completing verification, these systems were
monitoring every detail to update the database.
16
4.5 ER DIAGRAM FOR COURSE REGISTRATION
17
CHAPTER 5
PROJECT DESCRIPTION
It may help collecting perfect management in details. In a very short time, the
collection will be obvious, simple and sensible. It will help a person to know the
management of passed year perfectly and vividly. It also helps in current all works
relative to College. It will be also reduced the cost of collecting the management &
collection procedure will go on smoothly.
The present project has been developed to meet the aspirations indicated in the
modern age. An attempt has been made through this project to do all work ease & fast.
It provide current add, Update, Move Next, Move Previous, Move Last, Find &
Delete all facilities to accomplish the desired objectives. The facility Include in this
project and the suggested activities have been organized to impart knowledge &
develop skill & attitude in the College official works.
The primary objective of our project and development was to automate student course
registration procedure. It has been achieved successfully and the system is tested to be
working efficiently. The student enters his/her information during the beginning of the
semester, the system verifies the data entered, compares it to the previous semester
entries in the database and forwards it to the concerned faculty. After getting the nod
from the faculty and respective officials the registration form is submitted to the
administrative staff of the college or university for further necessary action at their
end.
18
CHAPTER 6
SNAPSHOTS
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.
19
figure 6.2: Instructor home page
20
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 course info. 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.
21
CHAPTER 7
SAMPLE CODE
22
)
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,
23
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)
);
24
CHAPTER 8
CONCLUSION
Online application of the whole system helps easy access to the system anywhere.
Physical presence of the student is not required. The time taken for process
completion is now largely reduced. After registration the database is automatically
updated at the end of process completion removing the hassle for department officials
who had to enter the data manually. As the database is managed through MySQL, data
duplication is eliminated and thereby reducing chances of error. Also data can be now
be easily retrieved, edited and printed whenever required. Authentication based access
proves to be more secure than manual system. The data is maintained on a central
server and is distributed among different departments as per requirement and copies of
this database are maintained on backup servers. Also, database access is authorized
and cannot be viewed or edited by unauthorized personnel. So, this automated and
computerized system is safe, fast and user friendly.
25
CHAPTER 9
In this system was implemented for student management system that will be more
helpful for verify the student details directly from this web application. I hope to
include an implementation for student database for validating the students details.
This system can be implement for the validation and verification for the students
details like their database checking and their course registration checking.
26
CHAPTER 10
REFERENCES
1. https://en.wikipedia.org/wiki/PHP
2. http://en.wikipedia.org/wiki/webdevelopment
3. http://www.mysqltutorialpoint.com
4. http://www.xampp/phpmyadmin.com
5. http://www.tutorialpoint.com
6. http://www.github.com
7.
27