You are on page 1of 105

Student Information Management System

ACKNOWLEDGEMENT
It is not until you undertake the project like this one that you realize how massive
the effort it really is, or how much you must rely upon the Selfless efforts
and goodwill of others. There are many who helped us with this project, and we
want to thank them all from the core of our Hearts.
We owe special words of thanks to our Signature of Project Supervisor/Guide Dr.
Sanjay & Chandan Kr. Jha for their vision, thoughtful counseling and
encouragement at every step of the project. We would also like thank Mr. Mukesh
Kr. Singh and Mrs. Aarti for their co-operation in the completion of the project.
We are also thankful to our Project Team of the Development Department for
giving us the best of knowledge and guidance throughout the project.
And last but not the least, we find no words to acknowledge the financial
assistance & moral support rendered by our parents in making the effort a success.
All this has become reality because of their blessings and above all by the grace of
god.

1|Page

Student Information Management System

ABSTRACT
An organized and systematic office solution is essential for all universities
and organizations. There are many departments of administration for the
maintenance of college information and student databases in any institution.
All these departments provide various records regarding students. Most of
these track records need to maintain information about the students. This
information could be the general details like student name, address,
performance, attendance etc or specific information related to departments
like collection of data. All the modules in college administration are
interdependent. They are maintained manually. So they need to be
automated and centralized as, Information from one module will be needed by
other modules. For example when a student needs his course completion
certificate it needs to check many details about the student like his name,
registration number, year of study, exams he attended and many other details.
So it needs to contact all the modules that are office, department and
examination and result of students.
With that in mind, we overhauled the existing Student Database Management
System and made necessary improvement to streamline the processes.
Administrators using the system will find that the process of recording and
retrieving students information and managing their classes, including
marking of attendance, is now a breeze. In general, this project aims to
enhance efficiency and at the same time maintain information accurateness.
Later in this report, features and improvement that allow achievement to this
goal will be demonstrated and highlighted.
Our work is useful for easy user interface. We are planning to utilize the
powerful database management, data retrieval and data manipulation. We
will provide more ease for managing the data than manually maintaining in the
documents. Our work is useful for saving valuable time and reduces the huge
paper work.
2|Page

Student Information Management System

PREFACE
This project Student Information Management System provides us a simple
interface for maintenance of student information. It can be used by educational
institutes or colleges to maintain the records of students easily. Achieving this
objective is difficult using a manual system as the information is scattered, can be
redundant and collecting relevant information may be very time consuming. All
these problems are solved using this project.
Throughout the project the focus has been on presenting information in an easy
and intelligible manner. The project is very useful for those who want to know
about Student Information Management Systems and want to develop
software/websites based on the same concept.
The project provides facilities like online registration and profile creation of
students thus reducing paperwork and automating the record generation process in
an educational institution.

3|Page

Student Information Management System

DECLARTATION
I hereby declare that the above provided information is true and complete to the best of my
knowledge and belief.
---------------------------SINGNATURE
(Chandan Kumar Jha)

4|Page

Student Information Management System

CERTIFICATE OF GUIDE
This is to certify that the project STUDENT INFORMATION MANAGEMENT SYSTEM
for wagons is a bonafide work done by Miss. Dolly Pankaj, Miss. Khushboo Kanchan,
Miss. Shivani Kumari , Mr. Vivek Chauhan (BCA, Muz University, Bihar) in partial
fulfillment of BCA 3rd year project and has been carried out under my direct supervision and
guidance.
---------------------------SINGNATURE
(Chandan Kumar Jha)

5|Page

Student Information Management System

CERTIFICATE OF ORIGINILITY
This is to certify that the project titled STUDENT INFORMATION MANAGEMENT
SYSTEM submitted to the award of degree of BCA in partial fulfillment of the requirement
for BCA degree is an original work carried out by Miss. Dolly Pankaj, Miss. Khushboo
Kanchan, Miss. Shivani Kumari , Mr. Vivek Chauhan, under the guidance of Mr.
Chandan Kumar Jha.
The matter embodied in this project is a genuine work done by the student and has been
submitted whether to this university or to any other university or institute for the fulfillment
of the requirement of any course of study.
--------------------------SIGNATURE OF GUIDE
(Chandan Kumar Jha)

6|Page

Student Information Management System

1. INTRODUCTION
Student Management System deals with all kind of student details, academic related
reports, college details, course details, curriculum, batch details and other resource related
details too. It tracks all the details of a student from the day one to the end of his
course which can be used for all reporting purpose, tracking of attendance, progress in
the course, completed semesters years, coming semester year curriculum details, exam
details, project or any other assignment details, final exam result etc.
Our design can facilitate us to explore all the activities happening in the college, even
we can get to know which faculty is assigned to which course, the current status of a
student, attendance percentage of a student and upcoming requirements of a student.
The student management

system

is an automated version of manual

Student

Management System. It can handle all details about a student. The details include
college details, subject details, student personnel details, academic details, exam
details etc.
In case of manual system they need a lot of time, manpower etc. Here almost all
work is computerized.

So the accuracy is maintained. Maintaining backup is very

easy. It can do within a few minutes. Our system has two type of accessing modes,
administrator and user.

Student management system

is managed

by an

administrator. It is the job of the administrator to insert update and monitor the
whole process. When a user log in to the system. He/she would only view details of
the student. He/she cant perform any changes. Our system has seven modules, they
are administrator, student, course, department, exam, attendance, and section. These
modules and its attributes with entity

relationship

module presented

in the ER

diagram section.

7|Page

Student Information Management System

2. PROJECT PREVIEW
Project Management
Project management skills are put to good use for this project. Having gone through
project management modules in Time Series Analysis, Optimization and with two
interns Project Management for Business and IT respectively, they enhanced my
knowledge on managing a project.

Project management focuses on achieving the

objectives by applying five processes presented in Figure below.

Figure 2.1: Project Development Phases


There are many software development companies that offer student management system
for schools in the market.

There are records on the past years projects on student

management system is done by students. Through the researches, it is observed that


there are features where this project can adopt and implement. One of it will be with
addition of new course or class, or even upgrading of students to the next level, the
school administrator can easily register all of them within a particular class into the
new one using just a page and not having to register one at a time. With this feature,
it helps administrator to save time as well as increase their efficiency.

8|Page

Student Information Management System

3. System Development Life Cycle


Systems Development Life Cycle (SDLC) is the most common process adopted to
develop a project and not surprisingly, this project is following this model too. To be
precise, waterfall model is being applied. Waterfall model is a sequential model process
where the input of a phase actually results from the previous phase.

Figure 3.1: SDLC Phases


There are five phases in this model and the first phase is the planning stage.

The

planning stage determines the objectives of the project and whether the project should
be given the green light to proceed. This is where the proposal submission comes into
picture.

After obtaining the approval, the next phase is analysis. Gathering and

analysing the system and user requirements is essential for entry to the design step.
With the user requirements

gathering

completed, there is a need to prepare the

resources for the project. Be it software or hardware components, careful consideration


and selection is to be taken care at this stage.

The decision on the appropriate

resources to be used is further elaborated under the subsections below. The next step is
to design the system and database structure.
Results from the analysis and preparation that were concluded from the previous stage
are put into action. With the user requirements in mind, the flow of the system is
planned and the user interface is designed to suit their easy navigation needs. In
addition, the number of tables, attributes, primary and unique keys of the database is
listed.
After completing the design, actual coding begins. Database is created and codes are
written. Some of the codes required amendments and improvement to it so these are
being developed at this fourth stage of the

waterfall

model. With the development

completed, testing will begin. The codes and database are tested to ensure the results
9|Page

Student Information Management System


obtained are as intended. More time is spent on both development and testing stages
because it is inevitable to have errors and issues and buffer time is allocated for
troubleshooting.

10 | P a g e

Student Information Management System

4. Problem Analysis
Problem Analysis is a management technique, which helps in designing a new system or
improving an existing system. System Analysis is the process of gathering and interpreting
facts, diagnosing problems (if any), using information to recommend improvements to the
system. There are four basic elements of system analysis: - Output, Input, Files Processes,
and Database Management. For computerization of any system, the existing system must be
thoroughly being understood to determine how the computer can be best used to make its
operation most effective. This is acquired by analyzing existing system.
1. FEASIBILITY STUDY
The feasibility of designing the system determined by evaluating alternative methods
of converting available input data into required output .Each of these alternative
methods that is termed as candidate system. The purpose of feasibility study is to identify
various candidate systems and to evaluate system.
Feasibility study is the process of determination of whether or not a project is worth doing.
Feasibility studies are undertaken within tight time constraints and normally culminate in a
written and oral feasibility report. I have taken two weeks in feasibility study with my codeveloper. The contents and recommendations of this feasibility study helped us as a sound
basis for deciding how to precede the project. It helped in taking decisions such as which
software to use, hardware combinations, etc.
Technical Feasibility
Economical Feasibility
Operational Feasibility
A. TECHNICAL FEASIBILITY:
Evaluating the technical feasibility is the trickiest part of a feasibility study. This is because,
at this point of time, not too many detailed design of the system is available, making it
difficult to access issues like performance, costs on (on account of the kind of technology to
be deployed) etc. A number of issues have to be considered while doing a technical analysis.
Understand the different technologies involved in the proposed system:
Before commencing the project, we have to be very clear about what are the technologies that
are to be required for the development of the new system.
Find out whether the organization currently possesses the required technologies:
Is the required technology available with the organization?
11 | P a g e

Student Information Management System


If so is the capacity sufficient?
For instance: Will the current printer be able to handle the new reports and forms required
for the new system?
B. OPERATIONAL FEASIBILITY:
Proposed projects are beneficial only if they can be turned into information systems that will
meet the organizations operating requirements. Simply stated, this test of feasibility asks if
the system will work when it is developed and installed. Are there major barriers to
Implementation? Here are questions that will help test the operational feasibility of a project:

Is there sufficient support for the project from management from users? If the
current system is well liked and used to the extent that persons will not be able to see
reasons for change, there may be resistance.

Are the current business methods acceptable to the user? If they are not, Users
may welcome a change that will bring about a more operational and useful systems.

Have the user been involved in the planning and development of the project?

Early involvement reduces the chances of resistance to the system and in

General and increases the likelihood of successful project.

Since the proposed system was to help reduce the hardships encountered. In the existing
manual system, the new system was considered to be operational feasible.
In examining technical feasibility, configuration of the system is given more importance than
the actual make of hardware .the configuration should give the complete picture about the
systems requirement:
There are a number of technical issues which are generally raised during the feasibility stage
of the investigation. They are as follows:
Q.

Does the necessary technology exist to do what is suggested (and can it be acquired)?

Q.

Does the proposed equipment have the technical system?

Q.

Can the system be upgraded if developed?

Q.

Are there technical guarantees of accuracy, reliability, ease of access and data
security?

Q.

Does the necessary technology exist to do what is suggested and can it?

Q.

How many workstations are required?


12 | P a g e

Student Information Management System


Q.

How these units are interconnected so that they could operate and communicate
smoothly?

Q.

What speeds of inputs and output should be achieved at particular quality of printing

Specific hardware and software products can then be evaluated keeping in viewing with the
logical needs.
C. ECONOMIC FEASIBILITY:
Economic feasibility attempts 2 weigh the costs of developing and implementing a new
system, against the benefits that would accrue from having the new system in place. This
feasibility study gives the top management the economic justification for the new system.
A simple economic analysis which gives the actual comparison of costs and benefits are
much more meaningful in this case. In addition, this proves to be a useful point of reference
to compare actual costs as the project progresses. There could be various types of intangible
benefits on account of automation. These could include increased customer satisfaction,
improvement in product quality better decision making timeliness of information, expediting
activities, improved accuracy of operations, better documentation and record keeping, faster
retrieval of information, better employee morale.
It is very most important. Because software is the most expensive element for virtually all
computer based system. A large cost estimation error can make the difference between profit
and loss .cost overrun can be desirous for the developer. Here I used economic analysis to
study economical feasibility. Economic analysis is the most frequently used technique for
evaluating the effectiveness of a proposed system. More commonly known as cost/benefit
analysis: the procedure is to determine the benefits and saving that are expected from a
proposed system and compare them with cost. If benefits outweigh costs, a decision is taken
to design and implement the system. Otherwise, further justification or alternative in the
proposed system will have to be made if it is to have chance of begin approved. This is an
ongoing effort that improves in accuracy at each phase of the system life cycle.
A system that can be developed technically and that will be used if installed must still be
profitable for the organization. Financial benefit must equal or exceed the costs. The analysts
arise various financial and economic questions that during the primary investigation to
estimate the following:

The cost to conduct a full systems investigation.

The cost of hardware and software for the class of application being considered.
13 | P a g e

Student Information Management System

The benefit in the form of reduced costs or fewer costly errors

The cost if nothing changes


Cost/Benefit Analysis:
To carry out an economic feasibility study, it is necessary to place actual money values
against any purchases or activities needs to implement this project. it is also necessary to
place money values against any benefits that will accurate from a new system caused by the
place money values against any benefits that will accurate from a new system created by the
project. Such calculations are often described as cost-benefit analysis.
Costbenefit analysis usually includes two steps:
1.

Producing the estimates of cost and benefits,

2.

And determining whether the project is worthwhile once these costs are ascertained.

Producing Costs and Benefits:


The goal is to reduce a list of what is required to implement the system and a list of the new
system benefits.
Costbenefit analysis is always clouded by both tangible and intangible items. Tangible
items are those to which direct values can be attached (e.g. the purchase of equipment, time
spent by people writing programs or items such as tires costs or the vat). Some tangible costs
often associated with computer system development are:

Equipment costs for the new systems: various items of computing equipment, as well as
items such accommodation costs and furniture, are included here

Personal costs: These include personnel needed to develop the new system and those will
subsequently run the system when it is established. Analysis, designers and programmers
will need to build the system. Also include the personnel to train the system users.

Material costs: These include stationary, manual production and other documentation costs.

Conversion costs: The costs of designing new forms and producers and of the possible
parallel running of the existing and new systems are included here.

Training costs: These include the cost of training users of the new systems, as well as
developers who may be required to use new technologies.

Other costs: Sometimes consultants costs are included here together with the management
overheated, secretarial support, travel budgets, and so on.

14 | P a g e

Student Information Management System


Intangible items, on the other hand, are those whose values cannot be precisely determined
and are the result of subjective judgment. For example, how much is saved by completing a
project earlier or providing new information to decision makers? Considerable argument can
take place before agreement is reached on such intangible costs.
The sum value of costs of items needed to implement the system is known as the system cost.
The sum value of the saving made is known as the benefit of the new system. Once we agree
on the costs and benefits, we can evaluate whether the project is economically feasible.
The cost estimates are usually used to set the project budget. Often it is convenient to divide
these costs into project phases to give management an idea of when funds and personnel will
be needed. The cost estimate needs to be worked out very carefully. We will avoid omitting
anything from estimates, as this will necessitate requests for more funds because something
was forgotten.
On the other side of the evaluation are benefits of the project, which may also tangible or
intangible. Tangible benefit includes those benefits that can be measured in actual rupees
terms. Such benefit can include reduced production costs through the introduction of new
technologies or reduced recessing costs through the use of computers.
Intangible benefits such as more satisfied customer or improved cop rate image because of
using new system are not easily quantified.
Determining Whether This Project is Worthwhile:
The costs and benefit are used to determine whether this project is economically feasible or
not. There are two way to do this: the payback and the present value method. Here we use the
payback method.
The payback method:
The payback method defines the time required to recover the money spent on the project. The
concept is quite simple. We know when this project will start. We also know the costs and
benefits for each succeeding year. The difference between the cost and the benefit for each
year will be saving or net befit for the year. The computation is used to determine the number
of years. The computation to determine the number of years needs to recover the cost is quite
simple.

5. SYSTEM ANALYSIS
15 | P a g e

Student Information Management System


EXISTING SYSTEM
The Existing system is a web based computerized application system but thats not good
looking and it is maintained at individual databases i.e. in excels sheets, its a time delay
process. And maintaining all the records in Excel sheets is difficult. If they want any record
they have to search all the records. It doesnt provide multiple user accessibility and also
doesnt have different user privileges. So the system is not accessible for all the members of
the organization.
LIMITATIONS IN EXISTING SYSTEM
There is no centralized database maintenance.
There is no easy access to the particular students record.
The administrator and student cannot easily navigate through the database.
PROBLEMS IN EXISTING SYSTEM
SLOW PROCESS: Manual working of managing all the details of students
and the generating documents like Reports, Searching records etc is very tedious and
slow.
DIFFICULTY IN SEARCHING RECORDS: It is difficult for administrator to
search all the records of different students and bills statements as well as orders
placed and Total sales and purchase record.
DIFFICULTY IN UPLOADING RESULT:

It is difficult for administrator to

uploading result on student accounts.


DATA INCONSISTENCY: It is difficult to maintain the student account, i.e. the
updating students record and profile.
PROPOSED SYSTEM:
The initial development of the project was started with the visit of L.N.College in Vaishali
District of Bihar. In order to study the existing system details, we used the technique
such as data collection, personal interview and onsite observation etc. After that we work
on that proposed system.
The Proposed system is a fully squared computerized system but which is maintained at
Centralized databases i.e. in automated forms its a very fast process. And maintaining all the
16 | P a g e

Student Information Management System


records in online systems database which makes it very easy to access and retrieve data from
the database. If they want any record they can easily search all the records. It provides
multiple user accessibility and also has different user privileges. So the system is accessible
for all the members of the organization. And also we improve its interface from existing
system. That is done with help of HTML5, CSS and also uses JavaScript, PHP.

ADVANTAGES OVER EXISTING SYSTEM

Fig: DEPLOYMENT ARCHITECTURE DIAGRAM

It is completely automated system in handling the students record database.

This system provides centralized database maintenance.


17 | P a g e

Student Information Management System


This system provides easy access to the particular students basic and academic record
This system provides administrator to upload and download result to the server and
from the server easily navigate through the application in a most secure manner.
Secure registration and profile management facilities for students Account.
Secured mechanism for checking account login for Admin and Students.
Sr. No
1

Features
Description
An effective and an automated To overcome the problems of Manual System

process
User friendly interface

for going into the shop to purchase items.


Admin can easily insert and update record in

Reporting

the system
Easy to generating report for particular and all

Searching

student records.
Easy to searching records for particular and all

Communication facilities

student records.
The communication gap is minimized among
the user and the Administrator. A module is
designed for the users to communicate among
admin by sending messages. This can be with

Updating

single user or with multiple users.


Easy to updating records for particular and all

Notifications

student records.
Display message for the user and admin to
checked data you have to enter in field.

18 | P a g e

Student Information Management System

6. SYSTEM REQUIREMENT SPECIFICATION


A software requirements specification (SRS) is a comprehensive description of the intended
purpose and environment for software under development. The SRS fully describes what the
software will do and how it will be expected to perform.
An SRS minimizes the time and effort required by developers to achieve desired goals and
also minimizes the development cost. A good SRS defines how an application will interact
with system hardware, other programs and human users in a wide variety of real-world
situations. Parameters such as operating speed, response time, availability, portability,
maintainability, footprint, security and speed of recovery from adverse events are evaluated.
Methods of defining an SRS are described by the IEEE (Institute of Electrical and Electronics
Engineers) specification 830-1998.
STUDY OF THE SYSTEM
In the flexibility of uses the interface has been developed a graphics concepts in mind,
associated through a browser interface. The GUIs at the top level has been categorized as
follows.
1. Administrative User Interface Design.
2. Student User Interface.
3. Guest User Interface.
4. Security Authentication.
5. Validation User Interface.
The administrative user interface will maintain the different student details, the interface
helps the administration with all the transactional states like which student is under which
course, session, result, student performance.
The student user interface helps to the students view his profile and he/she is able to get
result sheet and this result sheet also download as pdf link.
The Guest User Interface helps to the guest users, thats help his/her know about the perfect
course for own profile and its also querying enquiry online.

19 | P a g e

Student Information Management System

MODULES DESCRIPTION
In our system we use the various numbers of modules that are following:
Administrator
Student
Guest
ADMINISTRATOR MODULE
In this module of the system, the Administrator can do the various types of jobs performs like
as CREATE ACCOUNT for the registered student, INSERTION operation also to be perform
like as student basic records and academic records. Basic record is inserted at the time of
admission and academic record should be inserted after the competition of course. At time of
admission student can study only one course. The administrator can do also various type of
task like as SEARCHING student record and GENERATING REPORT of particular student
and all of the students. UPDATING record and also do DELETIG N RECORDS.
STUDENT MODULE
In this module of the system, student can do the various type of jobs performs like as VIEW
PROFILE own profile on any time and from anywhere, users(student) can also download
own provisional result in pdf form and view own result after the completion the course. And
also there is one important function is leave message for the authorized person.
GUEST MODULE
The Guest User Interface helps to the guest users, thats help his/her know about the perfect
course for own profile and its also querying enquiry online.

20 | P a g e

Student Information Management System

Student Information Management System

GUEST USER
Home
About us
Contact us
Course details

STUDENT
VIEW PROFILE
GET RESULT
DOWNLOAD RESULT
LEAVE MESSAGE
NOTIFICATION

ADMIN
CREATE PROFILE
DATA OPERATION
UPLAOD RESULT
REPORT PRINTIG
RESPONSE QUERING

21 | P a g e

Student Information Management System

7. SOFTWARE & HARDWARE REQUIREMENT


SOFTWARE REQUIREMENTS
Operating System

Windows XP/2003/7/8/10 or Linux

User Interface

HTML, CSS.

Client-side Scripting

JavaScript

Web Applications

PHP 5.0

Database

MySQL

Server Deployment

WAMP Manager

HARDWARE REQUIREMENTS
Processor

Pentium IV and above

Hard Disk

120GB

RAM

512MB or more

SUPPORTING BROWSERS
Internet Explorer (90, Mozilla, Firefox, Opera, Google Chrome

22 | P a g e

Student Information Management System

8. SDLC METHDOLOGIES
This document play a vital role in the development of life cycle (SDLC) as it describes the
complete requirement of the system. It means for use by developers and will be the basic
during testing phase. Any changes made to the requirements in the future will have to go
through formal change approval process.
SPIRAL MODEL was defined by Barry Boehm in his 1988 article, A spiral Model of
Software Development and Enhancement. This model was not the first model to discuss
iterative development, but it was the first model to explain why the iteration models.
As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase
starts with a design goal and ends with a client reviewing the progress thus far. Analysis and
engineering efforts are applied at each phase of the project, with an eye toward the end goal
of the project.
The steps for Spiral Model can be generalized as follows:

The new system requirements are defined in as much details as possible. This
usually involves interviewing a number of users representing all the external or
internal users and other aspects of the existing system.

A preliminary design is created for the new system.

A first prototype of the new system is constructed from the preliminary design.
This is usually a scaled-down system, and represents an approximation of the
characteristics of the final product.

A second prototype is evolved by a fourfold procedure:


1. Evaluating the first prototype in terms of its strengths, weakness, and risks.
2. Defining the requirements of the second prototype.
3. Planning a designing the second prototype.
4. Constructing and testing the second prototype.

At the customer option, the entire project can be aborted if the risk is deemed too
great.

Risk factors might involve development cost overruns, operating-cost

miscalculation, or any other factor that could, in the customers judgment, result
in a less-than-satisfactory final product.
23 | P a g e

Student Information Management System

The existing prototype is evaluated in the same manner as was the previous
prototype, and if necessary, another prototype is developed from it according to
the fourfold procedure outlined above.

The preceding steps are iterated until the customer is satisfied that the refined
prototype represents the final product desired.

The final system is constructed, based on the refined prototype.

The final system is thoroughly evaluated and tested.

Routine maintenance is carried on a

continuing basis to prevent large scale failures and to minimize down time.

24 | P a g e

Student Information Management System

9. APPLICATION DEVELOPMENT
N-TIER APPLICATION
N-Tier Applications can easily implement the concepts of Distributed Application Design and
Architecture. The N-Tier Applications provide strategic benefits to Enterprise Solutions.
While 2-tier, client-server can help us create quick and easy solutions and may be used for
Rapid Prototyping, they can easily become a maintenance and security night mare
The N-tier Applications provide specific advantages that are vital to the business continuity
of the enterprise. Typical features of a real life n-tier may include the following:

Security

Availability and Scalability

Data Abstraction

Manageability

Easy Maintenance

The above mentioned points are some of the key design goals of a successful n-tier
application that intends to provide a good Business Solution.

DEFINITION: Simply stated, an ntier application helps us distribute the overall functionality into various tiers or layers:

Presentation Layer

Business Rules Layer

Data Access Layer


25 | P a g e

Student Information Management System

Database/Data Store

Each layer can be developed independently of the other provided that it adheres to the
standards and communicates with the other layers as per the specifications.
This is the one of the biggest advantages of the n-tier application. Each layer can potentially
treat the other layer as a Block-Box.
In other words, each layer does not care how other layer processes the data as long as it sends
the right data in a correct format.

10. PERFORMANCE REQUIREMENTS


26 | P a g e

Student Information Management System


Performance is measured in terms of the output provided by the application. Requirement
specification plays an important part in the analysis of a system. Only when the requirement
specifications are properly given, it is possible to design a system, which will fit into required
environment. It rests largely in the part of the users of the existing system to give the
requirement specifications because they are the people who finally use the system. This is
because the requirements have to be known during the initial stages so that the system can be
designed according to those requirements. It is very difficult to change the system once it has
been designed and on the other hand designing a system, which does not cater to the
requirements of the user, is of no use.
The requirement specification for any system can be broadly stated as given below:

The system should be able to interface with the existing system

The system should be accurate

The system should be better than the existing system

The existing system is completely dependent on the user to perform all the duties.

27 | P a g e

Student Information Management System

11. SYSTEM DESIGN


Design phase is the second phase is the system development life cycle. In this phase
computer information system is designed in detailed from system specifications,
generated during study phase. A data flow diagram that has been expanded in detail until each
of the processing unit, processing function can be identified. A system flow chart that has
been expanded in detail. Design phase report is a report prepared at the end of the design
phase. Design specification is a baseline specification that serves as a blue print for
the construction of a computer based business information system. Design phase review
held with the user organization at the conclusion of the design phase.
In the system design phase we use the various techniques for system designing phase.
DATA FLOW DIAGRAM
A graphical tool used to describe and analyze the moment of data through a system manual or
automated including the process, stores of data, and delays in the system. Data Flow
Diagrams are the central tool and the basis from which other components are developed. The
transformation of data from input to output, through processes, may be described logically
and independently of the physical components associated with the system. The DFD is also
know as a data flow graph or a bubble chart.
DFDs are the model of the proposed system. They clearly should show the requirements on
which the new system should be built. Later during design activity this is taken as the basis
for drawing the systems structure charts. The Basic Notation used to create a DFDs are as
follows:
1. Dataflow: Data move in a specific direction from an origin to a destination.
2. Process: People, procedures, or devices that use or
produce (Transform) Data. The physical component is
not identified.
3. Source: External sources or destination of data, which may be
People, programs, organizations or other entities.

4. Data Store: Here data are stored or referenced by a process in the System.

28 | P a g e

Student Information Management System

AUTHENTICATION DFD

CONTEXT LEVEL DFD

29 | P a g e

Student Information Management System

30 | P a g e

Student Information Management System

31 | P a g e

Student Information Management System

SEQUENCE DIAGRAME& COLLABORATION DIAGRAMES

32 | P a g e

Student Information Management System


Administartor

validate

Allowance
Controller

Database

Logout

1: Login Details
2: Validate
3: Fail

4: Allowance Details

5: AddAllowance
6: Insert

7: Logout

Administrator

Validate

Advance
Controller

Database

Logout

1: Login Details
2: Validate

3: Fail

4: add Advance
5: AddAdvance

6: Insert

7: Logout

33 | P a g e

Student Information Management System


Administartor

Validate

Allowance
Controller

Database

Logout

1: Login Details

2: Validate

3: Fail

4: Update Allowance

5: Update Allowance

6: Update

7: Logout

Administartor

Validate

Allowance
Controller

Database

Logout

1: Login Details

2: Validate

3: Fail

4: Update Allowance

5: Update Allowance

6: Update

7: Logout

34 | P a g e

Student Information Management System


Collaboration Diagram for UPDATING the ACDEMIC & BASIC RECORD
2: Validate

1: Login Details
Administ
artor

4: Allowance Details
validate

Allowance
Controller

3: Fail
7: Logout

6: Insert

5: AddAllowance
Logout

Databas
e

Collaboration Diagram for INSERTING the ACDEMIC & BASIC RECORD


2: Validate

1: Login Details
Administ
artor

4: Allowance Details
validate

Allowance
Controller

3: Fail
7: Logout

6: Insert

5: AddAllowance
Logout

Databas
e

35 | P a g e

Student Information Management System


Collaboration Diagram for DELETING the ACDEMIC & BASIC RECORD

2: Validate

1: Login Details

4: deleteAdvance

Administ
rator

Validate

Advance
Controller

3: Fail
7: Logout
6: Delete
5: deleteAdvance

Logout

Databas
e

Collaboration Diagram for UPLOADING RESULT

1: Login Details

4: Forward

Validate

Administ
rator

Admin
Home

3: Fail

8: Logout

5: getPaysheet
7: Check
Paysheet
Controller

6: GetPaysheet

Logout
Databas
e

36 | P a g e

Student Information Management System


ACTIVITY DIAGRAM / FLOWCHART

Validation

If Data is not valid


Data Is Valid
Admin Home

Register Employee

List Employees

Add

Advances

Update

Allowances

Deductions

Performance

Delete

Logout

37 | P a g e

Student Information Management System

38 | P a g e

Student Information Management System


COMPONENT DIADRAM

DEPLOYMENT DIAGRAM

39 | P a g e

Student Information Management System

40 | P a g e

Student Information Management System

12. DATABASE DESIGN and DEVELOPMENT


Database design
Database is critical for all businesses. A good database does not allow any form of
anomalies and stores only relevant information in an ordered manner. If a database has
anomalies, it is affecting the efficiency and data integrity.

For example, delete anomaly

arise upon the deletion of a row which also forces other useful data to be lost. As
such, the tables need to be normalized. This fulfils the last objective of ensuring data
are accurate and retrieved correctly. For the database of this project, the tables are
normalized to BCNF as shown below.
Admin (id, name, password)
Faculty(id, name, password)
ATTEN DANCE (student-class-id, class-date, status)
Where ATTENDANCE. Student-class-id must exist in STUDENT-CLASS.id
ATTENDANCE-CODE (attendance-code, attendance-status)
CLASS-SCHEDULE (id, code, clientcode, clientname, educatorname, educatornric,
cur- riculatheme, startdate, enddate, starttime, endtime)
Where CLASS-SCHEDULE.code must exist in CLIENT.code,
CLASS-SCHEDULE.clientname must exist in CLIENT.name,
CLASS-SCHEDULE.educatornric must exist in
EDUCATOR.nric,
CLASS-SCHEDULE.educatorname must exist in EDUCATOR.name
And CLASS-SCHEDULE.curriculatheme must exist in CURRICULA.theme
CLASS-TIMETABLE (class-schedule-id, class-date)
Where CLASS-TIMETABLE.class-schedule-id must exist in CLASS-SCHEDULE.id
CLIENT (code, name)
CURRICULA (grp,
theme) EDUCATOR
(nric, name)
(nric: National Registration Identity Card)
FAMILY (id, entry-date, reg-fee, status, name, surname, nric, address1, address2,
postal- code, contact-home, contact-office, contact-hp, email, nationality, referredby, remarks)

41 | P a g e

Student Information Management System


STUDENT (id, family-id, name, surname, sex, dob,
status) Where STUDENT.family-id must exist in
FAMILY.id STUDENT-CLASS (id, student-id, classschedule-id, remark)
Where STUDENT-CLASS.student-id must exist in
STUDENT.id
And STUDENT-CLASS.class-schedule-id must exist in CLASSSCHEDULE.id

Database Development

42 | P a g e

Student Information Management System

43 | P a g e

Student Information Management System


STUDENT BASIC RECORD TABLE
STUDENT ACCOUNT TABLE

CONTACT WITH US TABLE

STUDENT ACDEMIC
RECORD TABLE

44 | P a g e

Student Information Management System

13. TECHNOLOGY DESCRIPTION


HTML
HTML, an initialize of Hypertext Markup Language, is the predominant markup language for
web pages. It provides a means to describe the structure of text-based information in a
document by denoting certain text as headings, paragraphs, lists, and so on and to
supplement that text with interactive forms, embedded images, and other objects. HTML is
written in the form of labels (known as tags), surrounded by angle brackets. HTML can also
describe, to some degree, the appearance and semantics of a document, and can include
embedded scripting language code which can affect the behavior of web browsers and other
HTML processors.
HTML is also often used to refer to content of the MIME type text/html or even more broadly
as a generic term for HTML whether in its XML-descended form (such as XHTML 1.0 and
later) or its form descended directly from SGML
Hypertext Markup Language (HTML), the languages of the World Wide Web (WWW),
allows users to produces Web pages that include text, graphics and pointer to other Web
pages (Hyperlinks).
HTML is not a programming language but it is an application of ISO Standard 8879, SGML
(Standard Generalized Markup Language), but specialized to hypertext and adapted to the
Web. The idea behind Hypertext is that instead of reading text in rigid linear structure, we can
easily jump from one point to another point. We can navigate through the information based
on our interest and preference. A markup language is simply a series of elements, each
delimited with special characters that define how text or other items enclosed within the
elements should be displayed. Hyperlinks are underlined or emphasized works that load to
other documents or some portions of the same document.
HTML can be used to display any type of document on the host computer, which can be
geographically at a different location. It is a versatile language and can be used on any
platform or desktop.
HTML provides tags (special codes) to make the document look attractive. HTML tags are
not case-sensitive. Using graphics, fonts, different sizes, color, etc., can enhance the
presentation of the document. Anything that is not a tag is part of the document itself.

45 | P a g e

Student Information Management System


Basic HTML Tags:
<! --

-->

specifies comments

<A>.</A>

Creates hypertext links

<B>.</B>

Formats text as bold

<BIG>.</BIG>

Formats text in large font.

<BODY></BODY>

Contains all tags and text in the HTML document

<CENTER>...</CENTER>

Creates text

<DD></DD>

Definition of a term

<DL>...</DL>

Creates definition list

<FONT></FONT>

Formats text with a particular font

<FORM>...</FORM>

Encloses a fill-out form

<FRAME>...</FRAME>

Defines a particular frame in a set of frames

<H#></H#>

Creates headings of different levels (16)

<HEAD>...</HEAD>

Contains tags that specify information about a document

<HR>...</HR>

Creates a horizontal rule

<HTML></HTML>

Contains all other HTML tags

<META>...</META>

Provides meta-information about a document

<SCRIPT></SCRIPT>

Contains client-side or server-side script

<TABLE></TABLE>

Creates a table

<TD></TD>

Indicates table data in a table

<TR></TR>

Designates a table row

<TH></TH>

Creates a heading in a table

Attributes
The attributes of an element are name-value pairs, separated by "=", and written within the
start label of an element, after the element's name. The value should be enclosed in single or
double quotes, although values consisting of certain characters can be left unquoted in HTML
(but not XHTML).Leaving attribute values unquoted is considered unsafe.
Most elements take any of several common attributes: id, class, style and title. Most also take
language-related attributes: Lang and dir.
The id attribute provides a document-wide unique identifier for an element. This can be used
by stylesheets to provide presentational properties, by browsers to focus attention on the
46 | P a g e

Student Information Management System


specific element or by scripts to alter the contents or presentation of an element. The class
attribute provides a way of classifying similar elements for presentation purposes. For
example, an HTML document (or a set of documents) may use the designation
class="notation" to indicate that all elements with this class value are all subordinate to the
main text of the document (or documents). Such notation classes of elements might be
gathered together and presented as footnotes on a page, rather than appearing in the place
where they appear in the source HTML.
An author may use the style non-attributal codes presentational properties to a particular
element. It is considered better practice to use an elements son- id page and select the
element with a stylesheet, though sometimes this can be too cumbersome for a simple ad hoc
application of styled properties. The title is used to attach subtextual explanation to an
element. In most browsers this title attribute is displayed as what is often referred to as a
tooltip. The generic inline span element can be used to demonstrate these various nonattributes.
The preceding displays as HTML (pointing the cursor at the abbreviation should display the
title text in most browsers).
Advantages
A HTML document is small and hence easy to send over the net. It is small

because it does not include formatted information.


HTML is platform independent.
HTML tags are not case-sensitive.

47 | P a g e

Student Information Management System


JAVA SCRIPT
JavaScript is a script-based programming language that was developed by Netscape
Communication Corporation. JavaScript was originally called Live Script and renamed as
JavaScript to indicate its relationship with Java. JavaScript supports the development of both
client and server components of Web-based applications. On the client side, it can be used to
write programs that are executed by a Web browser within the context of a Web page. On the
server side, it can be used to write Web server programs that can process information
submitted by a Web browser and then update the browsers display accordingly
Even though JavaScript supports both client and server Web programming, we prefer
JavaScript at Client side programming since most of the browsers supports it. JavaScript is
almost as easy to learn as HTML, and JavaScript statements can be included in HTML
documents by enclosing the statements between a pair of scripting tags
<SCRIPT>. </SCRIPT>.
<SCRIPT LANGUAGE = JavaScript>
JavaScript statements
</SCRIPT>
Here are a few things we can do with JavaScript:
Validate the contents of a form and make calculations.
Add scrolling or changing messages to the Browsers status line.
Animate images or rotate images that change when we move the mouse over

them.
Detect the browser in use and display different content for different browsers.
Detect installed plug-ins and notify the user if a plug-in is required.

We can do much more with JavaScript, including creating entire application.


JAVASCRIPT VS JAVA
JavaScript and Java are entirely different languages. A few of the most glaring differences
are:

Java applets are generally displayed in a box within the web document; JavaScript can
affect any part of the Web document itself.

While JavaScript is best suited to simple applications and adding interactive features
to Web pages; Java can be used for incredibly complex applications.

48 | P a g e

Student Information Management System


There are many other differences but the important thing to remember is that JavaScript and
Java are separate languages. They are both useful for different things; in fact they can be used
together to combine their advantages.
Advantages
JavaScript can be used for Sever-side and Client-side scripting.
It is more flexible than VBScript.
JavaScript is the default scripting languages at Client-side since all the

browsers supports it.


The technology selected for implementing Student Information Management System is
PHP/MYSQL.Apache is used as the HTTP server.The development was done in a windows
environment using adobe dreamweaver CS5.
PHP
PHP is a general-purpose scripting language that is especially suited to server-side web
development where PHP generally runs on a web server.PHP code is embedded into
the HTML source document.Any PHP code in a requested file is executed by the PHP
runtime, usually to create dynamic web page content.It can also be used for commandline scripting and client-side GUI applications. PHP can be deployed on many web
servers and operating systems, and can be used with many relational database management
systems (RDBMS). It is available free of charge, and the PHP Group provides the complete
source code for users to build, customize and extend for their own use.
MySQL
MySQL is a relational database management system (RDBMS) [1] that runs as a server
providing multi-user access to a number of databases. MySQL is a popular choice of database
for use in web applications and is an open source product. The process of setting up a
MySQL database varies from host to host, however we will end up with a database name, a
user name and a password. Before using our database, we must create a table. A table is a
section of the database for storing related information. In a table we will set up the different
fields which will be used in that table. Creating a table in phpMyAdmin is simple, we just
type the name, select the number of fields and click the go button. we will then be taken to a
setup screen where you must create the fields for the database.Another way of creating

49 | P a g e

Student Information Management System


databases and tables in phpMyAdmin is by executing simple SQL statements. We have used
this method in order to create our database and tables.
Apache
The Apache HTTP Server is a web server software notable for playing a key role in the initial
growth of the World Wide Web. In 2009 it became the first web server software to surpass the
100 million web site milestone. Apache is developed and maintained by an open community
of developers under the auspices of the Apache Software Foundation. Since April 1996
Apache has been the most popular HTTP server software in use. As of November 2010
Apache served over 59.36% of all websites and over 66.56% of the first one million busiest
websites.
WAMP
WAMP is a small and light Apache distribution containing the most common web
development technologies in a single package. Its contents, small size, and portability make it
the ideal tool for students developing and testing applications in PHP and MySQL. WAMP is
available as a free download in two specific packages: full and lite. While the full package
download provides a wide array of development tools, WAMP Lite contains the necessary
technologies that meet the Ontario Skills Competition standards.The light version is a small
package containing Apache HTTP Server, PHP, MySQL, phpMyAdmin, Openssl, and
SQLite.
Obtaining and Installing WAMP
As previously mentioned, WAMP is a free package available for download and use for
various web development tasks. All WAMP packages and add-ons are distributed through the
Apache Friends website at the address: http://www.apachefriends.org/. Once on the website,
navigate and find the Windows version of WAMP and download the self-extracting ZIP
archive. After downloading the archive, run and extract its contents into the root path of a
hard disk or USB drive. For example, the extract path for a local Windows installation would
simply be C:\. If extracted properly we will notice a new WAMP directory in the root of your
installation disk. In order to test that everything has been installed correctly, first start the
Apache HTTP Server by navigating to the WAMP directory and clicking on the
apache_start.bat batch file.

50 | P a g e

Student Information Management System


Next we will test if the server is running correctly by
opening an internet browser and typing http://localhost/
into the address bar. If configured correctly, we will be
presented with a screen similar to that of the one below.

51 | P a g e

Student Information Management System

14. DEVELOPMENT TOOLS


ECLIPSE IDE
Eclipse is an open-source software framework written primarily in Java. In its default form it
is an Integrated Development Environment (IDE) for Java developers, consisting of the Java
Development Tools (JDT) and the Eclipse Compiler for Java (ECJ). Users can extend its
capabilities by installing plug-ins written for the Eclipse software framework, such as
development toolkits for other programming languages, and can write and contribute their
own plug-in modules. Language packs are available for over a dozen languages.
Architecture
The basis for Eclipse is the Rich Client Platform (RCP). The following components constitute
the rich client platform:
OSGi - a standard bundling framework
Core platform - boot Eclipse, run plug-ins
the Standard Widget Toolkit (SWT) - a portable widget toolkit
JFace - viewer classes to bring model view controller programming to SWT, file
buffers, text handling, text editors
the Eclipse Workbench - views, editors, perspectives, wizards
Eclipse's widgets are implemented by a widget toolkit for Java called SWT, unlike most Java
applications, which use the Java standard Abstract Window Toolkit (AWT) or Swing.
Eclipse's user interface also leverages an intermediate GUI layer called JFace, which
simplifies the construction of applications based on SWT.
Eclipse employs plug-ins in order to provide all of its functionality on top of (and including)
the rich client platform, in contrast to some other applications where functionality is typically
hard coded. This plug-in mechanism is a lightweight software componentry framework. In
addition to allowing Eclipse to be extended using other programming languages such as C
and Python, the plug-in framework allows Eclipse to work with typesetting languages like
LaTeX, networking applications such as telnet, and database management systems. The plugin architecture supports writing any desired extension to the environment, such as for
configuration management. Java and CVS support is provided in the Eclipse SDK.

52 | P a g e

Student Information Management System


The key to the seamless integration of tools with Eclipse is the plugin. With the exception of
a small run-time kernel, everything in Eclipse is a plug-in. This means that a plug-in you
develop integrates with Eclipse in exactly the same way as other plug-ins; in this respect, all
features are created equal.
The Eclipse SDK includes the Eclipse Java Development Tools, offering an IDE with a builtin incremental Java compiler and a full model of the Java source files. This allows for
advanced refactoring techniques and code analysis. The IDE also makes use of a workspace,
in this case a set of metadata over a flat filespace allowing external file modifications as long
as the corresponding workspace "resource" is refreshed afterwards. The Visual Editor project
allows interfaces to be created interactively, hence allowing Eclipse to be used as a RAD tool.
The following is a list of notable projects and plug-in for the Eclipse IDE.
These projects are maintained by the Eclipse community and hosted by the Eclipse
Foundation.

53 | P a g e

Student Information Management System

15. TESTING AND DEBUGGING


After successful requirement analysis, designing & coding, the testing and debugging phase
was mandatory for successful completion of the project because the importance of software
testing to software quality cannot be overemphasized. Once source code has been generated,
software must be tested to allow errors to be identified and removed before delivery to the
customer. While it is not possible to remove every error in a large software package, the
software engineers goal is to remove as many possible early in the software development
cycle. It is important to remember that testing can only find errors; it cannot prove that a
program is bug free. Two basic test techniques involve testing module input/output (blackbox) and exercising internal logic of software components (white-box). Formal technical
reviews by themselves can not find allow software defects, test data must also be used. For
large software projects, separate test teams may be used to develop and execute the set of test
cases used in testing. Testing must be planned and designed. The SEPA web site contains
template for a generic test plan.

SOFTWARE TESTING OBJECTIVES:

Testing is the process of executing a program with the intent of finding errors.

A good test case is one with a high probability of finding an as-yet undiscovered error.

A successful test is one that discovers an as-yet-undiscovered error.

SOFTWARE TESTING PRINCIPLES:

All tests should be traceable to customer requirements.

Test should be planned long before testing begins.

The Pareto principle (80% of all errors will likely be found in 20% of the code)
applies to software testing.

Testing should begin in the small and progress to the large.

Exhaustive testing is not possible.

To be most effective, testing should be conducted by an independent third party.

54 | P a g e

Student Information Management System


The total project is divided into six modules. Each module is designed & tested
individually
.

GOOD TEST ATTRIBUTES:

A good test has a high probability of finding an error.

A good test is not redundant.

A good test should be best of breed.

A good test should not be too simple or too complex.

TEST CASES-DESIGN STRATEGIES:

Black-box or behavioral testing (knowing the specified function a product is to


perform and demonstrating correct operation based solely on its specification without
regard for its internal logic).

White-box or glass-box testing (knowing the internal workings of a product, tests are
performed to check the workings of all independent logic paths).

STRATEGIC APPROACH TO SOFTWARE TESTING:

Testing begins at the component level and works outward toward the integration of
the entire computer-based system.

Different testing techniques are appropriate at different points in time.

The developer of the software conducts testing and may be assisted by independent
test groups for large projects.

The role of the independent tester is to remove the conflict of interest inherent when
the builder is testing his or her own product.

Testing and debugging are different activities.

Debugging must be accommodated in any testing strategy.

STRATEGIC TESTING ISSUES:


55 | P a g e

Student Information Management System

Specific product requirements in a quantifiable manner before testing starts.

Specific testing objectives explicitly.

Identify the user classes of the software and develop a profile for each.

Develop a test plan that emphasizes rapid cycle testing.

Build robust software that is designed to test itself (e.g. uses ant bugging).

Use effective formal reviews as a filter prior to testing.

Conduct formal technical reviews to assess the test strategy and test cases.

UNIT TESTING:

Black box and white box testing.

Module interfaces are tested for proper information flow.

Local data are examined to ensure that integrity is maintained.

Boundary conditions are tested.

Basis path testing should be used.

All error handling paths should be tested.

Drivers and/or stubs need to be developed to test incomplete software.

INTEGRATION TESTING:
When collections of components have been unit-tested, the next step is ensuring that the
interfaces among the components are defined and handled properly. The process of verifying
the synergy of system components against the program Design Specification called
Integration testing.
Depending on design approach, one of the following integration strategies can be adopted:

Big Bang approach

Incremental approach
56 | P a g e

Student Information Management System

Top-down testing

Bottom-up testing

Sandwich testing

TOP-DOWN INTEGRATION TESTING:


1. Main control module used as a test driver and stubs are substitutes for
components directly subordinate to it.
2. Subordinate stubs are replaced one at a time with real components (following
the depth-first or breadth-first approach).
3. Tests are conducted as each component is integrated.
4. On completion of each set of tests and other stub is replaced with a real
component.
5. Regression testing may be used to ensure that new errors not introduced.

BOTTOM-UP INTEGRATION TESTING:


1. Low level components are combined in clusters that perform a specific
software function.
2. A driver (control program) is written to coordinate test case input and output.
3. The cluster is tested.
4. Drivers are removed and clusters are combined moving upward in the program
structure.

REGRESSION TESTING:
1. Representative sample of existing test cases is used to exercise all software
functions.

57 | P a g e

Student Information Management System


2. Additional test cases focusing software functions likely to be affected by the
change.
3. Tests case the focus on the changed software components.

SMOKE TESTING:
1. Software components already translated into code are integrated into a build.
2. A series of tests designed to expose errors that will keep the build from
performing its functions are created.
3. The build is integrated with the other builds and the entire product is smoke
tested daily (either top-down or bottom-up integration may be used).

GENERAL SOFTWARE TEST CRITERIA:

Interface integrity (internal and external module interfaces are tested as each module
or cluster is added to the software).

Functional validity (test to uncover functional defects in the software).

Information content (test for errors In local or global data structures).

Performance (verify specified performance bounds are tested).

VALIDATION TESTING:

Ensure that each function or performance characteristic conforms to its specification.

Deviations (deficiencies) must be negotiated with the customer to establish a means


for resolving the errors.

Configuration review or audit is used to ensure that all elements of the software
configuration have been properly developed, cataloged, and documentation to allow
its support during its maintenance phase.

ACCEPTANCE TESTING:

58 | P a g e

Student Information Management System

Making sure the software works correctly for intended user in his or her normal work
environment.

Alpha test (version of the complete software is tested by customer under the
supervision of the developers site).

Beta test (version of the complete software is tested by customer at his or her own site
without the developer being present).

The next step is customers validation of the system against User Requirements
Specification (URS). Customer in their working environment does this exercise of
Acceptance Testing usually with assistance from the developers. Once the system is
accepted, it will be installed and will be put to use.

SYSTEM TESTING:
Once the system is integrated, the overall functionality is tested against the Software
Requirements Specification (SRS). Then, the other nonfunctional requirements like
performance testing are done to ensure readiness of the system to work successfully in a
customers actual working environment. The step is called System Testing.

Recovery testing (checks the systems ability to recover from failures).

Security testing (verifies that system protection mechanism prevent improper


penetration or data alternation).

Stress testing (program is checked to see how well it deals with abnormal resource
demands quantity, frequency, or volume).

Performance testing (designed to test the run-time performance of software, especially


real-time software).

DEBUGGING:
Debugging (removal of a defect) occurs as a consequence of successful testing.
Some people are better at debugging than others.
Common approaches:

59 | P a g e

Student Information Management System


1. Brute force (memory dumps and run-time traces are examined for clues to
error causes).
2. Backtracking (source code is examined by looking backwards from symptom
to potential causes of errors).
Cause elimination (uses binary partitioning to reduce the number of locations potential where
errors can exist).

60 | P a g e

Student Information Management System

MODULE TESTING
GUEST MODULE
Test Suite Id:
Date of Creation:
CONTACT US page
Required Field Validation in Name Text Box
Range Field Validation in Name Text Box Max length is 20
Required Field Validation in MOBILE NUMBER Text Box
Range Field Validation in MOBILE NUMBER Text Box Max length is 13
Required Field Validation in E-Mail Text Box
Range Field Validation in E-Mail Text Box Max. length is 40
Required Field Validation in Address Text Box
Range Field Validation in Address Text Box Max. length is 500
Test Case Id
C01

Description
Name empty

C02

Mobile Number
Empty

C03

Email Wrong
and empty

C04

Address Empty

Expected Result
It should display
Error Message
to enter the
name
It should display
Error Message
to enter the
mobile number
It should display
Error Message
to enter the
wrong email
Accept is
database

Actual Results
It displays the
Error Message
through
Message
It displays the
Error Message
through
Message
It displays the
Error Message
through message

Remark
pass

Nothing to
display

Fail

Pass

Pass

USER MODULE
Test Suite Id:
USER (STUDENT) page

61 | P a g e

Student Information Management System


Required Field Validation in Leave Message Text Box
Range Field Validation in Leave Message Text Box Max. length is 500
Download Result Button click
View Profile Button click
View Academic Button click
Test Case Id
Description
Expected Result Actual Results
C01
Leave Message
It should display It displays the
empty
Error Message
Error Message
to enter the
through
name
Message
C02
(If Result not
It should display It displays the
uploaded by
Error Message
Error Message
Admin)
to result not
through
Click on
found
Message
Download
Result Button
C03
(If Profile not
It should display It displays the
created by
Error Message
Error Message
Admin) Click
to profile not
through
on View Profile create
Message
Button
C04
(If Academic
It should display It displays the
Record not
Error Message
Error Message
created by
to profile not
through
Admin) Click
create
Message
on View Profile
Button

Remark
pass

Pass

Pass

Pass

ADMIN MODULE
SUBMODULE CREATE PROFILE
Test Suite Id:
USER (STUDENT) page
Range Field Validation in User Name Text Box Max character=10 and Min. =05
Required Field Validation in User Name Text box
Required Field Validation in Password Text Box
Range Field Validation in Password Text Box length min. 5 and Non-Alphanumeric
62 | P a g e

Student Information Management System


Character 1and max. length is 10
Required Field Validation in Confirm Password Tex Box
Range Field Validation in Password Text Box length min. 5 and Non-Alphanumeric
Character 1and max. length is 10
Test Case Id
Description
Expected Result Actual Results
Remark
C01
SELECT Create It should display It displays the
pass
User OPTION
Error Message
Error Message
without entering to enter the User through
any data in any
Name,
Message
of the field
Password,
Confirm
Password
C02
Enter only user
It should display It displays the Pass
name, leaving
Error Message
Error Message
other fields
to enter the User through
empty
Name,
Message
Password,
Confirm
Password
C03
Enter only
It should display It displays the Pass
password,
Error Message
Error Message
leaving other
to enter the User through
fields empty
Name,
Message
Password,
Confirm
Password
C04
Enter only
It should display It displays the Pass
Confirm
Error Message
Error Message
Password,
to enter the User through
leaving other
Name,
Message
fields empty
Password,
Confirm
Password

SUBMODULE INSERT BASIC RECORD


Test Suite Id:
ADMIN page
Required Field Validation in Name Text Box
Range Field Validation in Name Text Box Max length is 20
Required Field Validation in E-Mail Text Box
Range Field Validation in E-Mail Text Box Max. length is 40
Required Field Validation in Address Text Box
Range Field Validation in Address Text Box Max. length is 500
Required Field Validation in City Text Box
Range Field Validation in City Text Box Max. length is 20
63 | P a g e

Student Information Management System


Range Field Validation in Mobile Number Text Box Max. length is 10
C01

Enter only First Name,


leaving other fields empty

It should display Error


Message to enter the
User Name, Password,
Confirm Password,
Primary E-Mail, Current
Address, Permanent
Address, City
RC02
Enter only Last Name,
It should display Error
leaving other fields empty
Message to enter the
User Name, Password,
Confirm Password, First
Name, Primary E-Mail,
Current Address,
Permanent Address,
City
C03
Enter only Primary E-Mail, It should display Error
leaving other fields empty
Message to enter the
User Name, Password,
Confirm Password, First
Name, Current Address,
Permanent Address,
City
C04
Enter only Secondary EIt should display Error
Mail, leaving other fields
Message to enter the
empty
User Name, Password,
Confirm Password, First
Name, Primary E-Mail,
Current Address,
Permanent Address,
City
C05
Enter only Current Address, It should display Error
leaving other fields empty
Message to enter the
User Name, Password,
Confirm Password, First
Name, Primary E-Mail,
Permanent Address, Cit
SUBMODULE INSERT ACDEMIC RECORD

It displays the Error


Message in Red
Color, Requiring
other field to be
filled

Pass

It displays the Error


Message in Red
Color, Requiring
other field to be
filled

Pass

It displays the Error


Message in Red
Color, Requiring
other field to be
filled

Pass

It displays the Error


Message in Red
Color, Requiring
other field to be
filled

Pass

It displays the Error


Message in Red
Color, Requiring
other field to be
filled

Pass

Test Suite Id:


ADMIN page
Prerequisites:- JAVA/J2EE, JSP, JDBC, ORACLE 10G
Required Field Validation in Certificate number Text Box
Range Field Validation in Certificate number Text Box Max length is 20
Required Field Validation in Course Text Box
Range Field Validation in Course Text Box Max. length is 10
Required Field Validation in Registration Number Text Box
Range Field Validation in Registration Number Text Box Max. length is 10
Required Field Validation in Session Text Box
64 | P a g e

Student Information Management System


Range Field Validation in Session Text Box Max. length is 20
Required Field Validation in grade Text Box
Range Field Validation in grade Text Box Max. length is 10
C01
Enter only Reg. Number,
It should display Error
leaving other fields empty
Message
C02

Enter only Certificate.


Number, leaving other
fields empty

It should display Error


Message

C03

Enter only Session, leaving


other fields empty

It should display Error


Message

C04

Select Course only, leaving


other fields empty

It should display Error


Message

C05

Select Grade only, leaving


other fields empty

It should display Error


Message

It displays the Error


Message in,
Requiring other field
to be filled
It displays the Error
Message in,
Requiring other field
to be filled
It displays the Error
Message in,
Requiring other field
to be filled
It displays the Error
Message in,
Requiring other field
to be filled
It displays the Error
Message in,
Requiring other field
to be filled

Pass

Pass

Pass

Pass

Pass

SUBMODULE RESPONSE MESSAGE


Test Suite Id:
ADMIN page
Required Field Validation in Registration Number Text Box
Range Field Validation in Registration Number Text Box Max. length is 10
Required Field Validation in Response Message Text Box
Range Field Validation in Response Message Text Box Max length is 200
C01
Enter only Reg. Number,
It should display Error
It displays the Error Pass
leaving other fields empty
Message
Message in,
Requiring other field
to be filled
C02
Enter only Response
It should display Error
It displays the Error Pass
Message, leaving other
Message
Message in,
fields empty
Requiring other field
to be filled
SUBMODULE UPDATE BASIC RECORD
Test Suite Id:
ADMIN page
Required Field Validation in Name Text Box
Range Field Validation in Name Text Box Max length is 20
Required Field Validation in E-Mail Text Box
Range Field Validation in E-Mail Text Box Max. length is 40
Required Field Validation in Address Text Box
Range Field Validation in Address Text Box Max. length is 500
65 | P a g e

Student Information Management System


Required Field Validation in City Text Box
Range Field Validation in City Text Box Max. length is 20
Range Field Validation in Mobile Number Text Box Max. length is 10
C00
Reg. Number fields empty
It should display Error
It displays the Error
Message please enter
Message in,
Reg. Number
Requiring other field
to be filled
C01
Enter only First Name,
It should display Error
It displays the Error
leaving other fields empty
Message to enter the
Message in Red
User Name, Password,
Color, Requiring
Confirm Password,
other field to be
Primary E-Mail, Current filled
Address, Permanent
Address, City
C02
Enter only Last Name,
It should display Error
It displays the Error
leaving other fields empty
Message to enter the
Message in Red
User Name, Password,
Color, Requiring
Confirm Password, First other field to be
Name, Primary E-Mail, filled
Current Address,
Permanent Address,
City
C03
Enter only Primary E-Mail, It should display Error
It displays the Error
leaving other fields empty
Message to enter the
Message in Red
User Name, Password,
Color, Requiring
Confirm Password, First other field to be
Name, Current Address, filled
Permanent Address,
City
C04
Enter only Secondary EIt should display Error
It displays the Error
Mail, leaving other fields
Message to enter the
Message in Red
empty
User Name, Password,
Color, Requiring
Confirm Password, First other field to be
Name, Primary E-Mail, filled
Current Address,
Permanent Address,
City
C05
Enter only Current Address, It should display Error
It displays the Error
leaving other fields empty
Message to enter the
Message in Red
User Name, Password,
Color, Requiring
Confirm Password, First other field to be
Name, Primary E-Mail, filled
Permanent Address,
City

Pass

Pass

Pass

Pass

Pass

Pass

66 | P a g e

Student Information Management System

16. PROJECT DESCRIPTION


Introduction
Student Information Management System can be used by education institutes to maintain the
records of students easily. Achieving this objective is difficult using a manual system as the
information is scattered, can be redundant and collecting relevant information may be very
time consuming. All these problems are solved using this project
The directory structure of the project is as follows:

67 | P a g e

Student Information Management System

Description of root directory contents


Images Directory : This directory contains the images uploaded by the students

during registration process.Supported formats are the .jpg and .gif files.
Resume Directory : This Directory Contains resumes of students uploaded during

registration process of students.Files in this folder can be of .doc,.txt or .pdf format.


Admin_Edit_Student_Info.php : Admin page for editing information of a
student.The administrator can change details of a student in this page.Though facility

68 | P a g e

Student Information Management System


of changing the image and resume are not yet provided but will be provided in future

versions of the project.


Admin_Edit_Student_Info_Handler.php

Page

handler

for

handling

the

Admin_Edit_Student_Info.php file.It writes the edited values in the database on the

server.
Admin_Header.php : Header file for pages accessible to administrator only.
Admin_Home.php : Home page for administrator after logging in process.
Admin_Login.php : Login page for administrator access.Shows appropriate message
for wrong username and/or password.

Admin_Login_handler.php : Page handler for Admin_Login.php page.It checks the


values provided with the values in the database.

Admin_Student_View_Info.php : Page to display student information to the


administrator.

Connect.php : Page for database connectivity.It is used whenever database values are
required on the page.

DisplayAll.php : Page to display all registered students to the administrator.This


facility is only available to the administrator.

Enable_Disable_handler.php : Handler page for enabling/disabling of

students

account facility.This functionality is only available to the administrator.

Footer.php : Footer file for all pages.

Header.php : Header file for login page and homepage of the site.

Index.php : Homepage of the website.

Logout.php : Logout handler page.It Destroys all session variables thus ending user
session.

Search.php : Search page to search students.It can only be used by


administrator.Students can be searched using different fields such as user id,account
status etc.

Search_Result.php : Page to display search results to the administrator.


69 | P a g e

Student Information Management System

Search_View_Result.php : Page to display student information for any selected


search result.

Student_Edit.php : Page to edit student information.It can be accessed by students.

Student_Edit_Handler.php : Page handler for Student_Edit.php.

Student_Header.php : Header file for student pages.

Student_Home.php : Home page for students after they log into their respective
accounts.

Student_login.php : Login Page for student login. Appropriate message is displayed


if the login is unsuccessful.

Student_login_handler.php : Page handler for Student_Login.php.It checks the


values provided with that in th the database.

Student_Registration.php : Student Registration page.The students enters various


details here for registration.

Student_Registration_handler.php

Page

Handler

for

handling

the

file

Student_registration.php.It adds value to the student_information table thus creating a


new user.

Student_Reset_Password.php : Page for resetting password.It can be used only by


students.Administrator password can be changed only by changing the values in the
table directly.

Student_Reset_Password_Handler.php

Page

handler

for

handling

page

Student_Reset_Password.php.

Student_View.php : Page to display student profile with all the details of the student.

Style.css : Stylesheet for the whole site design.

Validation.js : Javascript validations used for validation of form values. Various form

70 | P a g e

Student Information Management System


entries are validated at the client side using this file only.

17. FEATURES
The Website provides following functionalities to the users:

Administrator :
o Login/Logout
o View student information
o Edit Student Information
o Enable/disable student accounts
o Search students

Student :
o Login/Logout
o View profile
o Edit profile
o Change password
o Register new profile

71 | P a g e

Student Information Management System

18. SOURCE CODE


Index.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="Style.css" type="text/css"/>
<title>Home Page</title>
</head>
<body>
<table width="100%" height="100%" >
<tr height="15%">
<td><?php include 'Header.php';?></td>
</tr>
<tr height="80%">
72 | P a g e

Student Information Management System


<td align="center" valign="baseline"><table width="70%">
<tr height="10%">
<td align="center"><a href="index.php" class="stylelink" style="textdecoration:none">Home</a></td>
<td align="right"><a href="Student_login.php" class="stylelink" style="textdecoration:none">Student Login</a>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<a

href="Admin_login.php"

class="stylelink"

style="text-

decoration:none">Administrator Login</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table></td>
</tr>
<tr height="5%">
<td><?php include 'Footer.php';?></td>
</tr>
</table>
</body>
</html>

Student_login.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Login Page</title>
73 | P a g e

Student Information Management System


<link rel="stylesheet" href="Style.css" type="text/css"/>
<script type="text/javascript">
function validate()
{
if(document.form1.st_id.value=="")
{
alert("Please enter your login Id.");
document.form1.st_id.focus();
return false;
}
if(document.form1.st_pass.value=="")
{
alert("Please enter your password.");
document.form1.st_pass.focus();
return false;
}
}
</script>
</head>
<body onLoad="javascript:document.form1.st_id.focus()">
<form name="form1" method="post" action="Student_login_handler.php"
onSubmit="return validate();">
<table width="100%" height="100%" >
<tr>
<td height="15%"><?php include 'Header.php';?></td>
</tr>
<tr>
<td width="100%" height="80%" align="center" valign="baseline"><table
width="90%" >
<tr>
<td width="8%"><a href="index.php" class="stylelink" style="textdecoration:none; font-family: &quot;Times New Roman&quot;, Times,
serif;">Home</a></td>
<td width="35%" align="center">&nbsp;</td>
74 | P a g e

Student Information Management System


<td width="27%">&nbsp;</td>
<td width="30%" align="right"><a href="Student_Registration.php"
class="stylelink" style="text-decoration:none ; font-weight: bold;">New Student
Click Here</a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<?php if($_GET['flag'] == "success") { ?>
<tr>
<td class="stylegreen" colspan="4"
align="center">Congratulations! You Are successfully registered. You can use your
Login Id and Password to login to your account.</td>
</tr>
<?php
}
else if($_GET['flag'] == "exists") { ?>
<tr>
<td class="stylered" colspan="4" align="center">This Login
Id( <?=$_GET['student_id']?>) already exists.Please, try again with another Login
Id</td>
</tr>
<?php
}else if($_GET['flag'] == "error") {
75 | P a g e

Student Information Management System


?>
<tr>
<td class="stylered" colspan="4" align="center">Error while
inserting data. Please, try again.</td>
</tr>
<?php
}
?>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan="4"><table width="30%" border="1" align="center"
cellpadding="3" cellspacing="0" bordercolor="#CCCCCC" bgcolor="#CCCCCC">
<tr align="center" bgcolor="#999999">
<td colspan="2" class="stylebig">Student Login Here</td>
</tr>
<tr bgcolor="#E1E1E1" class="stylesmall">
<td width="35%" align="left" class="style7">Login Id : </td>
<td width="65%" align="left"><input name="st_id" type="text"
id="st_id"></td>
</tr>
<tr bgcolor="#E1E1E1" class="stylesmall">
<td align="left" class="style7">Password:</td>

76 | P a g e

Student Information Management System


<td align="left"><input name="st_pass" type="password"
id="st_pass"></td>
</tr>
<tr bgcolor="#E1E1E1">
<td colspan="2" align="center">&nbsp;
<?php if($_GET['flag'] == "invalid") { ?>
<span class="stylered">Invalid Login Id or Password</span>
<?php }?>
</td>
</tr>
<tr bgcolor="#E1E1E1">
<td colspan="2" align="center"><input name="login" class="style10"
type="submit" id="login" value="Login">
<input name="close" type="button" id="close" class="style10"
value="Close" onClick="self.location='index.php'">

</td>

</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td height="5%" align="center"><?php include 'Footer.php';?></td>
</tr>
</table>
</form>
</body>
</html>

Student_login_handler
<?php
session_start();
include 'Connect.php';
77 | P a g e

Student Information Management System


$flag = "";
$student_id = $_POST['st_id'];
$st_pass = $_POST['st_pass'];
$query = "select last_login_date from student_information where
student_id='$student_id' and student_password='$st_pass' and student_status
='Enable'";
$result = mysql_query($query,$link_id);
if(mysql_error() != null){
die(mysql_error());
}
if($date = mysql_fetch_array($result))
{
$lastdate = $date['last_login_date'];
$date2 = date("d-m-Y h:i A",strtotime($lastdate));
$_SESSION['userid'] = $_POST['st_id'];
$_SESSION['lastlogin'] =$date2;
$_SESSION['type'] = "Student";
mysql_query("update student_information set last_login_date=now()
where student_id='$student_id'",$link_id);
if(mysql_error() != null){
die(mysql_error());
}
header("location:Student_Home.php");
die();
}
else
{
$flag = "invalid";
header("location:Student_login.php?flag=$flag");
die();
}
?>

78 | P a g e

Student Information Management System

Student_Registration.php
<html>
<head>
<link rel="stylesheet" href="Style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Student Registration Page</title>
<script src="Validation.js"></script>
<script type="text/javascript">
function validation()
{
if(document.form1.first_name.value=="")
{
alert("Please enter your first name.");
document.form1.first_name.focus();
return false;
}
if(document.form1.last_name.value=="")
{
alert("Please enter your last name.");
document.form1.last_name.focus();
return false;
}
if(document.form1.dob.value=="")
{
alert("Please enter your date of birth.");
document.form1.dob.focus();
return false;
}
else
{
var date = document.form1.dob.value;
79 | P a g e

Student Information Management System


var yes = checkDate(date);
if(!yes)
{
alert("Please Enter a valid date of birth.");
document.form1.dob.focus();
return false;
}
}
if(document.form1.email1.value=="")
{
alert("Please enter your primary email.");
document.form1.email1.focus();
return false;
}
else
{
var isEmail = emailValidator(document.form1.email1.value);
if(!isEmail)
{
alert("Please enter a valid primary email.");
document.form1.email1.focus();
return false;
}
}
if(document.form1.address.value != "" &&
document.form1.address.value.length > 100){
alert("You can enter address upto 100 characters only.");
document.form1.address.focus();
return false;
}
if(document.form1.description.value != "" &&
document.form1.description.value.length > 200){
alert("You can enter description upto 200 characters only.");
document.form1.description.focus();
80 | P a g e

Student Information Management System


return false;
}
if(document.form1.st_id.value=="")
{
alert("Please enter your desired student id.");
document.form1.st_id.focus();
return false;
}
if(document.form1.st_pass.value=="")
{
alert("Please enter your desired password.");
document.form1.st_pass.focus();
return false;
}
if(document.form1.retype.value=="")
{
alert("Please enter retype password.");
document.form1.retype.focus();
return false;
}
if(document.form1.st_pass.value != document.form1.retype.value)
{
alert("Password and retype password are not same.");
document.form1.st_pass.value = "";
document.form1.retype.value = "";
document.form1.st_pass.focus();
return false;
}
}
</script>
</head>
<body onLoad="javascript:document.form1.first_name.focus()">

81 | P a g e

Student Information Management System


<form name="form1" method="post" action="Student_Registration_handler.php"
onSubmit="return validation()" enctype="multipart/form-data">
<table width="100%">
<tr>
<td width="100%" height="15%" align="center"><?php include 'Header.php';?
></td>
</tr>
<tr>
<td width="100%" height="80%" align="center"><table width="80%"
border="1" cellpadding="2" cellspacing="0" bordercolor="#CCCCCC">
<tr bgcolor="#EEEEEE">
<td colspan="4" align="center" class="stylemedium">Student
Information</td>
</tr>
<tr class="stylesmall">
<td>First Name <span class="stylered">*</span> </td>
<td><input name="first_name" type="text" id="first_name"
maxlength="50"></td>
<td>Last Name <span class="stylered">*</span> </td>
<td><input name="last_name" type="text" id="last_name"
maxlength="30"></td>
</tr>
<tr class="stylesmall">
<td>Gender</td>
<td><input name="gender" type="radio" value="Male" checked>
Male<input name="gender" type="radio" value="Female">
Female</td>
<td>Date Of Birth <span class="stylered">*</span> </td>
<td><input name="dob" type="text" id="dob" size="10" maxlength="10">
DD-MM-YYYY</td>
</tr>
<tr class="stylesmall">
<td>Qualification <span class="stylered">*</span> </td>
<td><select name="qualification" id="qualification">
82 | P a g e

Student Information Management System


<option value="">-----select-----</option>
<option value="High School">High School</option>
<option value="Graduate">Graduate</option>
<option value="MCA">MCA</option>
<option value="BCA">BCA</option>
<option value="Master Degree">Master Degree</option>
</select></td>
<td>Contact No</td>
<td><input name="contact_no" type="text" id="contact_no"
maxlength="20"></td>
</tr>
<tr class="stylesmall">
<td> City</td>
<td><input name="city" type="text" id="city" maxlength="30"></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr class="stylesmall">
<td>Primary Email <span class="stylered">*</span> </td>
<td><input name="email1" type="text" id="email1" maxlength="100"></td>
<td>Secondary Email</td>
<td><input name="email2" type="text" id="email2" maxlength="100"></td>
</tr>
<tr class="stylesmall">
<td>Address</td>
<td colspan="3"><textarea name="address" cols="45" rows="2"
id="address"></textarea></td>
</tr>
<tr class="stylesmall">
<td> Description</td>
<td colspan="3"><textarea name="description" cols="45" rows="3"
id="description"></textarea></td>
83 | P a g e

Student Information Management System


</tr>
<tr bgcolor="#EEEEEE">
<td colspan="4" align="center" class="stylemedium">Login Information</td>
</tr>
<tr>
<td colspan="4">&nbsp;</td>
</tr>
<tr class="stylesmall">
<td>Desired ID <span class="stylered">*</span> </td>
<td><input name="st_id" type="text" id="st_id" maxlength="20"></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr class="stylesmall">
<td>Password <span class="stylered">*</span> </td>
<td><input name="st_pass" type="password" id="st_pass"
maxlength="20"></td>
<td align="right">Retype Password<span class="stylered"> *</span> </td>
<td><input name="retype" type="password" id="retype"
maxlength="20"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr bgcolor="#EEEEEE">
<td colspan="4" align="center" class="stylemedium"> Resume
Information</td>
</tr>
<tr class="stylesmall">
<td>Upload Resume </td>
<td colspan="3"><input name="resume" type="file" >
84 | P a g e

Student Information Management System


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
class="stylered">.doc , .txt, .pdf file only</span></td>
</tr>
<tr>
<td colspan="4">&nbsp;</td>
</tr>
<tr align="center" class="stylemedium" bgcolor="#EEEEEE">
<td colspan="4">Image Information</td>
</tr>
<tr class="stylesmall">
<td>Upload Image </td>
<td colspan="3"><input type="file" name="image">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span
class="stylered"><span class="stylered">.jpg file And .gif file only</span></td>
</tr>
<tr>
<td colspan="4"><span class="stylered">* <em>means fields are
compulsory</em> </span></td>
</tr>
<tr>
<td colspan="4" align="center"><input name="register" type="submit"
id="register" value="Register">
<input name="reset" type="reset" id="reset" value="Reset">
<input name="close" type="button" id="close" value="Close"
onClick="self.location='Student_login.php'"></td>
</tr>
</table></td>
</tr>
<tr>
<td width="100%" height="5%" align="center"><?php include 'Footer.php';?
></td>
</tr>
</table>
</form>
85 | P a g e

Student Information Management System


</body>
</html>

Student_Registration_handler.php
<?php
include 'Connect.php';
$flag = "success";
function rollbackData(){
mysql_query(" ROLLBACK ");
global $flag;
$flag = "error";
if(mysql_error() != null){
die(mysql_error());
}
}
$student_id = $_POST['st_id'];
$student_pass = $_POST['st_pass'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$gender = $_POST['gender'];
$contact_no = $_POST['contact_no'];
$qualification = $_POST['qualification'];
$city = $_POST['city'];
$email1 = $_POST['email1'];
$email2 = $_POST['email2'];
$address = $_POST['address'];
$description = $_POST['description'];
$resumename = "";
$imagename = "";
$dobdate = date("Y-m-d",strtotime($_POST['dob']));
/*

86 | P a g e

Student Information Management System


This block is used to check whether the student_id already exits in
database.
*/
$select_query="select student_id from student_information where student_id
= '$student_id'";
$result_set = mysql_query($select_query,$link_id);
if($row = mysql_fetch_array($result_set)){
$flag="exists";
header("location:Student_login.php?
flag=$flag&student_id=$student_id");
die();
}
else{
/*
This block is used to insert the student record in database
if the student_id is already not present in the database.
*/
mysql_query("SET AUTOCOMMIT = 0 ");
if(mysql_error() != null){
die(mysql_error());
}
$query = "insert into
student_information(student_id,student_password,first_name,last_name,registration_
date,gender,date_of_birth,";
$query .=
"student_status,contact_no,qualification,city,email1,email2,address,description)";
$query .= "
values('$student_id','$student_pass','$first_name','$last_name',now(),'$gender','$dobda
te','Disable','$contact_no',";
$query .=
"'$qualification','$city','$email1','$email2','$address','$description')";
$result = mysql_query($query,$link_id);
87 | P a g e

Student Information Management System


if(mysql_error() != null){
die(mysql_error());
}
if($result){
if($_FILES['resume']['name'] != ""){
$filename = $_FILES['resume']['name'];
$ext = strrchr($filename,".");
$resumename = $student_id;
$resumename .= "_".$filename;
if($ext ==".txt" || $ext ==".doc" || $ext ==".TXT" || $ext
==".DOC" || $ext ==".pdf" || $ext ==".PDF"){
$size = $_FILES['resume']['size'];
if($size > 0 && $size < 1000000){
$archive_dir = "resumes";
$userfile_tmp_name =
$_FILES['resume']['tmp_name'];
if(move_uploaded_file($userfile_tmp_name, "$archive_dir/$resumename")){
/*
if image is successfully
uploaded then resumename is stored in database.
*/
mysql_query("update
student_information set resume='$resumename' where student_id='$student_id'",
$link_id);
if(mysql_error() != null){
die(mysql_error());
}
$flag = "success";
}else{
rollbackData();
}
}
88 | P a g e

Student Information Management System


else{
rollbackData();
die("You can upload resume of 1 MB
size only. Please, try again.");
}
}
else{
rollbackData();
die("You can upload resume of .txt, .pdf, .doc
extensions only. Please, try again.");
}
}
if($_FILES['image']['name'] != ""){
$filename = $_FILES['image']['name'];
$ext = strrchr($filename,".");
$imagename = $student_id;
$imagename .="_". $filename;
if($ext ==".jpg" || $ext ==".jpeg" || $ext ==".JPG" || $ext
==".JPEG" || $ext ==".gif" || $ext ==".GIF"){
$size = $_FILES['image']['size'];
if($size > 0 && $size < 1000000){
$archive_dir = "images";
$userfile_tmp_name = $_FILES['image']
['tmp_name'];
if(move_uploaded_file($userfile_tmp_name, "$archive_dir/$imagename")){
/*
if image is successfully
uploaded then imagename is stored in database.
*/
mysql_query("update
student_information set image='$imagename' where student_id='$student_id'",
$link_id);
$flag = "success";
89 | P a g e

Student Information Management System


if(mysql_error()!=null){
die(mysql_error());
}
}
else{
if(file_exists('resumes/' .
$resumename)) {
unlink('resumes/' .
$resumename);
}
rollbackData();
}
}
else{
if(file_exists('resumes/' . $resumename))
{
unlink('resumes/' .
$resumename);
}
rollbackData();
die("You can upload image of 1 MB size
only. Please, try again.");
}
}
else{
if(file_exists('resumes/' . $resumename)) {
unlink('resumes/' . $resumename);
}
rollbackData();
die("You can upload images of .jpg, .jpeg, .gif
extensions only. Please, try again. ");
}
}
}
90 | P a g e

Student Information Management System


else{
$flag="error";
}
if($flag == "success"){
mysql_query(" COMMIT ");
$flag="success";
if(mysql_error() != null){
die(mysql_error());
}
/*
This block is used to send email to the successfully
registered users.
*/
/*
$to = $email1;
$subject = 'Congratulations';
$message = 'Congratulations you are registered in our
site.\r\n\r\n';
$message .= "Your Login Id : $student_id \r\n Password :
$student_pass";
$headers = "From: info@sims.com\r\n";
$headers .= 'X-Mailer: PHP' . phpversion();
mail($to, $subject, $message, $headers);
*/
}
header("location:Student_login.php?flag=$flag");
die();
}
?>

Admin_Edit_Student_Info.php
<?php
session_start();
91 | P a g e

Student Information Management System


$session_id = $_SESSION['userid'];
if($session_id == null){
header("location:index.php");
die();
}
include 'Connect.php';
$student_id = $_REQUEST['student_id'];
$query = "select * from student_information where student_id='$student_id'";
$result = mysql_query($query, $link_id);
$data = mysql_fetch_array($result);
?>
<html>
<head>
<link rel="stylesheet" href="Style.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Edit Student Information By Admin</title>
<script src="Validation.js"></script>
<script type="text/javascript">
function validation()
{
if(document.form1.first_name.value=="")
{
alert("Please enter your first name.");
document.form1.first_name.focus();
return false;
}
if(document.form1.last_name.value=="")
{
alert("Please enter your last name.");
document.form1.last_name.focus();
return false;
}
if(document.form1.dob.value=="")
92 | P a g e

Student Information Management System


{
alert("Please enter your date of birth.");
document.form1.dob.focus();
return false;
}
else
{
var date = document.form1.dob.value;
var yes = checkDate(date);
if(!yes)
{
alert("Please Enter a valid date of birth.");
document.form1.dob.focus();
return false;
}
}
if(document.form1.email1.value=="")
{
alert("Please enter your primary email.");
document.form1.email1.focus();
return false;
}
else
{
var isEmail = emailValidator(document.form1.email1.value);
if(!isEmail)
{
alert("Please enter a valid primary email.");
document.form1.email1.focus();
return false;
}
}
if(document.form1.email2.value != "")
{
93 | P a g e

Student Information Management System


var isEmail = emailValidator(document.form1.email2.value);
if(!isEmail)
{
alert("Please enter a valid secondary email.");
document.form1.email2.focus();
return false;
}
}
if(document.form1.address.value != "" &&
document.form1.address.value.length > 100){
alert("You can enter address upto 100 characters only.")
document.form1.address.focus();
return false;
}
if(document.form1.description.value != "" &&
document.form1.description.value.length > 200){
alert("You can enter description upto 200 characters only.")
document.form1.description.focus();
return false;
}
}
function SetAll()
{
document.form1.qualification.value="<?php echo $data['qualification'];?>";
var gen = "<?php echo $data['gender'];?>";
var gend = document.form1.gender.length;
for(var i =0; i<gend; i++)
{
if(document.form1.gender[i].value == gen)
document.form1.gender[i].checked=true;
}
}
</script>
94 | P a g e

Student Information Management System


</head>
<body onLoad="javascript:SetAll()">
<form name="form1" method="post"
action="Admin_Edit_Student_Info_Handler.php" onSubmit="return validation()">
<input type="hidden" name="student_id" value="<?php echo $student_id; ?>;">
<table width="100%" height="100%" >
<tr bgcolor="#E1E1E1">
<td width="100%" height="15%" align="center"><?php include
'Admin_Header.php';?></td>
</tr>
<tr>
<td width="100%" height="80%" align="center"><table width="80%"
border="1" cellpadding="2" cellspacing="0" bordercolor="#EEEEEE">
<tr>
<td colspan="4" align="center" bgcolor="#EEEEEE" class="stylebig">Edit
Student Information</td>
</tr>
<tr>
<td colspan="4" align="center">&nbsp;
<?php if($_GET['flag'] == "success") { ?>
<span class="stylered">Student Information updated
successfully.</span>
<?php } else if($_GET['flag'] == "error") { ?>
<span class="stylered">Error while updating student
information.Please, try again</span>
<?php } ?>

</td>

</tr>
<tr class="stylesmall">
<td width="19%" align="left">First Name : </td>
<td width="30%" align="left"><input name="first_name" type="text"
id="first_name" value="<?php echo $data['first_name']; ?>"
size="25"maxlength="50"></td>
<td width="17%" align="left">Last name</td>
95 | P a g e

Student Information Management System


<td width="34%" align="left"><input name="last_name" type="text"
id="last_name" value="<?php echo $data['last_name'];?>" size="25"
maxlength="30"></td>
</tr>
<tr class="stylesmall">
<td height="29" align="left">Gender : </td>
<td align="left"><input name="gender" type="radio" value="Male">
Male<input name="gender" type="radio" value="Female">
Female</td>
<td align="left">Date Of Birth</td>
<td align="left"><input name="dob" type="text" id="dob" size="10"
maxlength="10" value="<?php echo date("d-m-Y",strtotime($data['date_of_birth']));?
>">
DD-MM-YYYY</td>
</tr>
<tr class="stylesmall">
<td align="left">Qualification : </td>
<td align="left"><select name="qualification" id="qualification">
<option value="High School">High School</option>
<option value="Graduate">Graduate</option>
<option value="MCA">MCA</option>
<option value="BCA">BCA</option>
<option value="Master Degree">Master Degree</option>
</select></td>
<td align="left">Contact No</td>
<td align="left"><input name="contact_no" type="text" id="contact_no"
value="<?php echo $data[$contact_no];?>" size="25" maxlength="20"></td>
</tr>
<tr class="stylesmall">
<td align="left">Primary Email : </td>
<td align="left"><input name="email1" type="text" id="email1" value="<?php
echo $data['email1'];?>" size="25" maxlength="100"></td>
<td align="left">Secondary Email</td>

96 | P a g e

Student Information Management System


<td align="left"><input name="email2" type="text" id="email2" value="<?php
echo $data['email2'];?>" size="25" maxlength="100"></td>
</tr>
<tr class="stylesmall">
<td align="left">City : </td>
<td colspan="3" align="left"><input name="city" type="text" id="city"
value="<?php echo $data['city'];?>" size="25" maxlength="30"></td>
</tr>
<tr class="stylesmall">
<td align="left">Address : </td>
<td colspan="3" align="left"><textarea name="address" rows="2"
cols="40"><?php echo $data['address'];?></textarea></td>
</tr>
<tr class="stylesmall">
<td align="left">Description : </td>
<td colspan="3" align="left"><textarea name="description" rows="3"
cols="40"><?php echo $data['description'];?></textarea></td>
</tr>
<tr>
<td colspan="4">&nbsp;</td>
</tr>
<tr>
<td colspan="4" align="center"><input name="update" type="submit"
id="update" value="Update">
<input name="close" type="button" id="close" value="Close"
onClick="self.location='DisplayAll.php'"></td>
</tr>
</table></td>
</tr>
<tr bgcolor="#E1E1E1">
<td width="100%" height="5%" align="center"><?php include 'Footer.php';?
></td>
</tr>
</table>
97 | P a g e

Student Information Management System


</form>
</body>
</html>

98 | P a g e

Student Information Management System

19. OUTPUT SCREEN

99 | P a g e

Student Information Management System

100 | P a g e

Student Information Management System

101 | P a g e

Student Information Management System

102 | P a g e

Student Information Management System

20. SCOPE OF THE PROJECT

The Student Information Management System(SIMS) can be enhanced to include

some other functionality like marks, attendance management.


Talent management of students based on their performance evaluation can be

added.
Social networking can also be added wherein students can interact with each

other.
Online class functionality can be added.
Can evolve as an online institution.
Functionality of chat and messages can be added.
Online exam functionality can be added.
Online resume builder functionality can also be added.

21. CONTRIBUTION IN THE PROJECT


103 | P a g e

Student Information Management System


Student information management system lead to a better organization structure since the
information management of the students is well structured and also lead to better as well as
efficient utilization of resources.
Student Information Management System can be used by education institutes to maintain the
records of students easily. Achieving this objective is difficult using a manual system as the
information is scattered, can be redundant and collecting relevant information may be very
time consuming. All these problems are solved using this project

22. BIBLIOGRAPHY
104 | P a g e

Student Information Management System

PHP book by Vasvani (TMH publications).

Beginning PHP5 by WROX.

www.google.com.

www.wikipedia.com

www.w3schools.com

Informatics practices by Sumita Arora.

Head First PHP & MySQL by Lynn Beighley and Michael Morrison(OReilly)

105 | P a g e

You might also like