School Management System

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 42

SCHOOL MANAGEMENT SYSTEM

Submitted By:

Hidayat Ullah
Roll No = 191214
Reg No = 2019/icp-0641

Bilal Ahmad
Roll No = 191240
Reg No = 2019/icp-0667

&

Niaz Ullah
Roll No = 191256
Reg No =2019/icp-0683

Submitted To: Dr. Naila Habib


DEPARTMENT OF COMPUTER SCIENCE
ISLAMIA COLLEGE PESHAWAR
SESSION: 2019-2023
DEPARTMENT OF COMPUTER SCIENCE
ISLAMIA COLLEGE PESHAWAR
SESSION 2019-2023

APPROVAL SHEET
It is recommended that the Thesis prepared by {Hidayat Ullah, Bilal Ahmad & Niaz Ullah},
Entitled “School Management System”. Be accepted as fulfilling this part of the requirement
for the degree of Bachelor of Science in Computer.

Approved by

i
ACKNOWLEDGEMENTS

First of all, I am grateful to ALLAH ALMIGHTY who enabled me to carry out my research
work successfully. I am immensely grateful to my honorable and respectful research
supervisor Dr. Naila Habib, whose valuable guidance and encouragement enabled me to
satisfactory completing my Project work. He really supported and blessed me with his
valuable suggestions during the course of my project work. With a deep sense of gratitude I
would like to thank the whole staff of department of Computer science Islamia College
Peshawar, for their kind support in providing me valuable guidance whenever I needed
them. Last but not the least; I am very thankful to my parents who blessed me with their
prayers at every stage of life.

Students Name

1. Hidayat Ullah
2. Bilal Ahmad
3. Niaz Ullah

ii
PREFACE

The innovation and discoveries of men has enabled them to accelerate the production and
make the resources available for their best use. Amongst all these inventions computer is the
most modern tool, which has the capability to reduce not only the physical work of human
but also to facilitate the mental abilities. Computer is a powerful problem solving tool in
term of speed, accuracy, security and reliability. We cannot overlook the importance of
computer in any field of life. So this was the reason that we have been assigned a project
relating to the investigation system for fulfillment of our Master in Computer Science.

Students Name

1. Hidayat Ullah
2. Bilal Ahmad
3. Niaz Ullah

iii
Table of contents
CHAPTER1
INTRODUCTION........................................................................................................1
1.1 Introduction to the Project.......................................................................................1
1.2 Aim and Objective of the Project.............................................................................1
1.3 Scope of the Project................................................................................................2
1.4 Existing Manual System..........................................................................................2
1.5 Feasibility of the Project..........................................................................................3

CHAPTER 2
EXISTING SYSTEM...................................................................................................4
2.1 Introduction..............................................................................................................4
2.2 Drawbacks................................................................................................................4

CHAPTER 3
PROPOSED SYSTEM................................................................................................6
3.1 Introduction..............................................................................................................6
3.2 Objectives of Proposed System...............................................................................6
3.3 Advantages of the Proposed System........................................................................7
3.4 Process Model for Project........................................................................................9
3.5 Which software Process Model we would use and why........................................10

CHAPTER 4
REQUIREMENT ANALYSIS..................................................................................11
4.1 Introduction............................................................................................................11

CHAPTER 5
SYSTEM DESIGN.....................................................................................................16
5.1 Introduction............................................................................................................16
5.2 Architectural Design..............................................................................................16
5.3 Conceptual Database Design.................................................................................17
iv
5.4 Physical Database Design......................................................................................18
5.5 Data Flow Diagram................................................................................................19
5.6 Entity Relationship Diagram (ERD)......................................................................20

CHAPTER 6
DEVELOPMENT PHASE........................................................................................21
6.1 Website development.............................................................................................21
6.2 User interface design..............................................................................................21
6.3 Validations on forms..............................................................................................22
6.4 Main Programming Languages Used.....................................................................22

CHAPTER 7
SYSTEM TESTING..................................................................................................24
7.1 Introduction............................................................................................................24
7.2 The Place of Testing in SDLC...............................................................................24
7.3 Types of Testing....................................................................................................25
7.4 Testing Metrics......................................................................................................27
7.5 Testing of "CAMPUS MANAGEMENT SYSTEM”............................................29
7.6 Traceability Matrix................................................................................................29

CHAPTER8
USER INTERFACE AND APPENDIX...................................................................30
8.1 Overview................................................................................................................30
8.2 DIFFERENT FORMS...........................................................................................30

REFERENCES...........................................................................................................34

v
CHAPTER1

INTRODUCTION
1.1Introduction to the Project

In this chapter, we introduce the organization and scope of our project, designed for a school
management system. The School Management System streamlines administrative activities
within the school environment, offering students, parents, and staff an efficient way to
manage academic and administrative tasks. The system ensures easy access to academic
information, schedules, and communication with school authorities. It also keeps users
updated with the latest school news and events. This comprehensive system maintains
records of students, staff, and academic data, providing features like attendance tracking,
grade management, and resource allocation. Statistical analysis tools empower school
administrators with insights and efficient data management. The thesis discusses the system
design model and its tailored implementation, incorporating a robust search engine for
students and real-time access to distributed data sources, optimizing school management
processes for all stakeholders.
1.2 Aim and Objective of the Project
Aim
The aim of this project to computerize the exists manual system, the manual system is based
on paper work, I will change this to online database which will be easy and faster than
manual system, my main focus is to arrange the data in an order, it will be easy to book
room, retrieve data, modify, delete and update the data,

Objectives
The primary objective of the website is to efficiently manage school records.

 Users, particularly administrators, can easily edit or add student and staff records.
 It provides a seamless way for students to enroll or interact with the school, requiring
minimal maintenance.

1
 The Admin Panel allows school administrators to access and manage school records
effortlessly.
 Administrators can update, edit, or add records with a reduced risk of errors.
 The system's Admin Panel is highly secure, utilizing encrypted passwords to prevent
unauthorized access. It ensures that only authorized personnel can log in.
 Administrators can quickly edit student and staff records, including enrollment and
 Changes can be made within a few seconds, reducing paperwork and manual data
entry.
 Administrators have the capability to update records day by day, ensuring that the
information is always up to date.
 Administrators are authorized to delete unwanted data, such as student enrollments
or course assignments, providing flexibility in record management.

1.3 Scope of the Project

The forthcoming automated system on single PC will cover all mentioned flaws of manual
system making it more…
 Security
 Faster to work (instead of to visit the school)
 Easy to handle.
 Less resource required.
 Less chance of error occurring
 Overcoming fraud
 With User Support System.

1.4 Existing Manual System

Problems in the Existing System


 More time consuming.
 Insecure data.
 Tough to maintain records etc.
 More chance of error occurring.

2
 In-efficient updating.
 Maintains problem.
1.5 Feasibility of the Project

A successful completion and adoption of the new system will definitely make the work
easier around its field by maintaining all records about customers and all information about
school(Customers information, Room information etc).The existing manual system will be
replaced by automated.
As mentioned earlier that a manual system is more time consuming all the information are
kept and derived manually. The forthcoming system will be able to meet all the
requirements of ease of use, easy to maintain, secure etc. Records and information will be
kept and upgraded safely and data will be processed faster in purposed automated system. It
will also provide us following advantages
 Avoid the fraud
 Technical problem
 Operational problem
 Administrator will be the only user of the system and will have full Authority and
privileges.

Administrator of the system will be able to maintain system, upgrade records and so on. The
Administrator of the system will be able to move all around the system controlling all
managerial activities by having complete privileges rights.

3
CHAPTER 2
EXISTING SYSTEM

2.1 Introduction

The existing system is being operated manually and there are a lot of problems for the
School administrator. Administrator get all the information manually about the students and
teachers (like customer name, address, date of booking room) etc., and also the
Administrator have to manage all information about the customer manually, and make
reports by hand. The existing systems of the School do not provide the facility that
administrator easily view all customers records of the school. So handling such type of
information manually at a time is very difficult, may lead to errors, and very time
consuming, so we decided that it is time to computerized the Existing system to save their
time and to easily get the desire information with in the seconds.

2.2 Drawbacks

There are some drawbacks of the current system are listed here:

2.2.1 File Maintenance:


Files are maintained manually in the present system, which is becoming more and more
difficult and inconvenient with the growth of organization. All data stored separately and all
data files are based on old format, which is difficult to manage. Record keeping in this
system is difficult.

2.2.2 Inefficient Updating:


Updating is very important factor in modern day’s record keeping because one always needs
the latest information for decision-making. But it needs a lot of time to update immediately
after the change.

2.2.3 Long Access Time:

4
In these modern days, a management science is based on the information system heavily. A slow
information system does not affect the efficiency of management in decision-making.
Manual system is very slow.
2.2.4 Chance of Errors:
There is always chance of duplication or overlapping of records when done manually.

2.2.5 Redundancy:
As information about the customers and Users are recorded in registers, therefore
redundancy may occur.

2.2.6 Integrity:
It has been proved now that the manual system of collecting and storing information is
devoid of integrity. Due to the fact that everyone can gain access to the files can easily
change and retrieve any information.

2.2.7 Analysis Problems:


As data is stored in different files and registers, and different files and registers have to be
open for managing information. So it was very difficult to analyze the data in the manual
system.

2.2.8 Backup Problem:


In the present system there is always a risk of deliberate or accidental destruction of
recorded data. One such information is damaged there remain no backup copies to be used
in future. So it becomes difficult to recover the required information once destroyed in the
manual system.

2.2.9 Data Entry:


The data entry and retrieval is difficult to manage in manual work.

2.2.10 Data Recovery:

5
Error that occurs accidentally and which remains unknown leads to erroneous result, which
takes months to correct.

6
CHAPTER 3
PROPOSED SYSTEM
3.1 Introduction
Computerization of the system involves the study of existing system along with all of its
weaknesses and drawbacks, and then suggesting a suitable computer based system. After
analyzing the existing system and finding its shortcomings, it is necessary to eliminate its
deficiencies in order to define the objectives and design of the proposed system. The new
system has brought some changes in the existing system but mostly the structure and
numbers of fields and data codes are same as in the traditional system. Because, the little
information that must be stored e.g. But some changes have been made to make system
more efficient and some modifications are based on new requirements.
In the existing system all information have to get by visiting the secrecy and spent a
lot of time and money, but in proposed system Administrator should not go for finding the
students record by self but he can view it and customize it from any place. In the proposed
system Administrator will add and change all information via internet and all the records
well stored, and all are added to the database, e.g. customer name and address, room type,
date of room booking, date of un book room etc. of customers.

3.2 Objectives of Proposed System

It is important to establish some objectives of the proposed system.

3.2.1 Flexibility:
The proposed HMS should be capable of storing data related HMS of all type
System should provide enough flexibility to use different software, and should accept any
changes that are required with the passage of time.

3.2.2- Efficiency and Reliability:


The new system should be efficient and it should have an edge over the present system and
in order to make data reliable, several data validation checks should be provided in the
system.

7
3.2.3- Compatibility:
Compatibility in data design, entry and processing with the present HMS and Online
Reservation.

3.2.4- Correctness:
The new system should be error-free. The output-produced by the new system should be
satisfactory. In addition to that it should be a comprehensive database of insertion,
modification, retrieval of HMS.

3.2.5- Acceptability:
The system should be acceptable to the organization. It should satisfy the previous and new
objectives in a better way.

3.2.6- Fast Retrieval:


File access and retrieval of information including the generation of reports and queries
should be fast. To do so, fields on which search have to be performed should be indexed so
as to reduced time for accessing the desired information.

3.2.7- User-friendly:
System should be user friendly, that user can easily operate the system.

3.3- Advantages of the Proposed System


Following are the main advantages of the proposed system.

3.3.1- Eliminate duplication and redundancy:


It should check that no duplicate data is entered. Common file should be integrated. Similar
forms should be combined to reduce redundancy. Since in manual system a single data is
kept in several different files, therefore the problem of data redundancy always occurs. My
software has been designed in such a way that it has removed data redundancy and
inconsistency.

8
3.3.2- Integrate independent data processing:
In the optimum software design the independent data processing’s should be integrated
together in order to achieved the particular goal.

3.3.3- Direct communication:-


Other objectives of the computer-based systems are to provide direct communication of
software with end user. It means that the software is user friendly as compared to manual
system. The proposed system is in such a way that it has high quality user-friendly interface,
such that user can easily communicate with the software.

3.3.4-Flexibility:

A good quality software should be flexible i.e. it must be capable of accepting changes that
are required with the passage of time. The proposed system is designed in such a way that it
is divided into different functions. If we want not change something then the change is made
only in a single function, and all of the software reflects that change.

3.3.5- Reliable:
Reliability is one of the most important aspects of software. i.e. software should be designed
in such a way that the results and reports produced by the software should be consistent and
reliable. All the reports and results produced by my software are fully correct and consistent.

3.3.6- Speedy and accurate:


Optimum software provides fast retrieval of data, which is always precise and accurate. My
software provides the speedy access to data with great precession and accuracy.

3.3.7- Interdependence:
In good software design all the components of the software are interrelated with each other,
in such a way that output of the function is input of the other function. In my proposed
system design different function interact with each other with passing parameters between
one another and provides solutions for the problems.

9
3.3.8- Responsive:
Optimum software should be timely; it should response rapidly when an access is made .Our
software if fully timely and provides the availability to data all the time.

3.3.9- Comprehensive database:


The proposed system has comprehensive database in which insertion, modification, retrieval
about records and facilities of various reports are available.

3.4- Process Model for Project


A software process Model is a simplified description of a software process, which is
presented from a particular perspective. In our project, we use the linear sequential model
also called water fall model or classic life cycle. Linear sequential approach invented by
Royce 1970. He views the life cycle activity. We use the linear sequential model because;
 The requirements are well understood.
 The customer is ready to submit the complete at the end.

The linear sequential model suggests a systematic, sequential approach to software


development. Models by their nature are simplification, so a software process model is an
abstraction of the actual process, which is being described. Process models may include
activities, which are part of the software process, software products and the role of peoples
involved in the software engineering. There are a lot of software process models in the
world of software engineering like:
 Waterfall
 Incremental
 Prototype
 Spiral etc.

10
3.5 Which software Process Model we would use and why:

For the development of our project we use the waterfall model, the first published model of
the software development process. The principal stages of the model are:
1. Software requirement analysis
2. Design
3. Code generation
4. Testing

Fig: 3.5.1: Waterfall Process Model

11
CHAPTER 4
REQUIREMENT ANALYSIS

4.1- Introduction
This involves understanding the problem, establishing the services, which the system should
provide the constraints under which it meet operations.
It is process of translating the ideas about the system to be developed, in the minds of the
clients mind the actual users, in to more formal way. It is a communication between
customer and software development team. Without preparing the requirement specification
the process of developing software with all of its functionality looks quite impossible.
There are four principle stages in the requirement engineering process.
 Feasibility study
 Requirements analysis
 Requirements definition
 Requirements specification

4.1.1-Feasibility Study
Initial Studies:-
The study will decide if the proposed system will be cost-effective from a business point of
view and if it can be developed in the given budgetary and time constraints.
1. Economic Feasibility
2. Technical Feasibility
3. Operational Feasibility

4.1.1.1- Economic Feasibility:-


Economic justification includes cost-benefit analysis. The costs involved in the system are:
4.1.1.1.1- Start-up Costs:-
 The technologies that I am going to use have not stared up cost.

12
 It is an individual project so there are no costs involved like searching and hiring
personnel.
4.1.1.1.2- Project Related Costs:-
 The technologies that I am going to use are in common use and are always made
available to work with so there are no purchase costs involved.
 No huge cost involved in training.
 No huge cost involved for data collection and preparing documentation.

4.1.1.1.3- Ongoing Costs:-


 The maintenance costs involved are bearable and they don’t try to reduce the
benefits.
4.1.1.2- Technical Feasibility:-
Here we study whether the technology needed for the system to be developed is available. It
also describes whether the existing system can be upgraded to use new technology and
whether the organization has the experts to use it.
Database Management System Xamp server
Operating System Window 10
Design and Coding Tool php and css, html, Bootstrap JavaScript
Documentation Tools: MS Office2010
The technologies that I have just described are available to me at my workplace and its
integration within the organizational environment was of no problem as these are the most
common tools used over there by the developers.

4.1.1.3- Operational Feasibility:-


The system to be developed will satisfy all the objectives, covering all the scopes mentioned
earlier maintaining accuracy, performance, efficiency, privacy etc.

4.1.2- Requirements Analysis


In order to get a better understanding of the requirements, a prototype was developed. It is
process of translating the ideas about the system to be developed, in the minds of the clients
mind the actual users, in to more formal way. It is a communication between customer and

13
software development team. Without preparing the requirement specification the process of
developing software with all of its functionality looks quite impossible.

4.1.3- Requirements Definition


All the requirements gathered during requirements definition stage were narrated for
the first approval. In this stage we also define what the administrator can do and what is the
function that it can perform. Administrator can enter the Subjects, can allot room to students
and also provide registration facility.

4.1.4 Requirement Specification


Out of various alternatives, Structured Language is used to write down functional
requirements. Structured Language, which is a restricted form of natural language, uses
templates to specify requirements.

4.1.5 Functional Requirements


4.1.5.1- User or customer Requirements:-
The system will be able to handle the Database of School. User will be able to retrieve this
database using the unique identification. Administrator can add customer data; it can make
changes in data.
There will be complete record of all students as well as teachers information. The
system will provide detail report of all information related with customers and school.
4.1.5.2. - Expense and Income Information:-
The system can keep the record of payment of each and every room of the school.
4.1.5.3 - Retrieval of Information from DB:-

The system must have an effective and fast retrieval of the required information from the
Database.
4.1.5.4 - Display the Employee:-

System must display the record of customers and rooms.

4.1.5.5- Automatic Update:-


System should update record automatically through trusted administrator.

14
4.1.5.6- Transaction Information:-
System must maintain the detailed record of payment into database
4.1.5.7- Save/Remove Items from Database:-
System should provide the facility to save, remove and update records from the database.
4.1.5.8- Calculation:-
System must have ability to perform all calculations.
4.1.5.9 - Administration Requirements:-
Application will provide Graphic User Interface (GUI) to the Database Administrator
(DBA) for viewing and updating of records from database.
The system requires the input of above information and also requires well designed and
summery report along with short queries, which involve many functions including:
4.1.5.9.1-View Report:-
Provide the facility for administrator to view the monitoring result in form of report. For the
easy viewing of this report
4.1.5.9.2-Generate Report:-
Provide the facility for generating report of monitoring result, according to administration
specification.
4.1.5.9.3-Save Information:-
Provide the functionality of saving above information in database.
4.1.5.9.4-Transaction Information:-
Show all the transactions that are held by the school.
4.1.5.12 -User Interface Requirements:-
This specifies the characteristics of the human computer interface. If the human operator is
to interact with the system through a display, then screen layouts, menus, forms etc. will be
specified here. Other factor has consistency; usability etc. should also be taken into account.
While considering this database following will be user interface.
 Reduction of the amount of user inputs because it can slow the system.
 Giving easy access to main menu, to stop the user from failing lost.
 Consistent naming of menu option. Simplification of the menu structure.
 Providing the ability to undo any choice easily.
4.1.5.13- Registeration Form:-

15
Basically this website is to give facility to customers to book room online in school if he is
everywhere.
4.1.5.14- Room Form:-
Administrator also has room registration form to book new rooms.
4.1.6- Non-Functional Requirements
4.1.6.1 – Speed:-
The system must complete all the queries and all other data transfer processes within a
second. And define redundancy to speed up the queries.
4.1.6.2 – Security:-
Only authorizes personnel should be able to access the database for their defined usage.
4.1.6.3 – Usability:-
All the options should be provided in click able form to avoid wasting time in writing
commands.
4.1.6.4 – Efficiency:-
The proposed system should much more efficient and helpful to check the information.
4.1.6.5 – Reliability:-
The system should reliable enough that it provides the correct result as expected
4.1.6.6 –Flexibility:-
System should provide enough flexibility to use different software.
4.1.6.7-Backup Facility:-
System should be capable of backing up and restoring information (if the system crashes
etc).
4.1.6.8 –Maintainability:-
Developed system should be maintainable. That is it should allow the changes to be made.
Code should be documented properly.
4.1.6.9-Refer Images to the Operating System:-
Referring all images to the operating system instead of storing them in database.
4.1.6.10-Future Enhancement:-
There should be extensible support for future enhancements in the database

16
CHAPTER 5
SYSTEM DESIGN
5.1- Introduction

Design is a decision-making activity. Design works as a base for the proceeding activities in
the development cycle. The robustness and efficiency of software depends on its design.
And a good design leads to efficient software.
System Design is the phase where quality is fostered in software development.
Hence good development work depends upon good quality of design. Design changes
customer’s requirements into representation of software. Software or system is unable
without a good design and fails when changes are made into it.
This chapter deals with the input/output design and physical database design phase. Inputs
/outputs are key parts of any system design. They are the interface between the user and
database. User-interface should be well enough to be understandable by the user.
Viewed from a purely functional point of view, most of the computer systems will perform
the following two main tasks.
 Presentation logic
 Data service

5.1.1- Presentation Logic:-


The presentation phase comprises the entire user interface. Not only does this phase allow
the user to interact with the application, input data, and view the results of requests, it
manages the manipulation and formatting of data once it arrives at the client.

5.1.2- Data Service Logic:-


It handles the storage and retrieval of data while maintaining integrity of data.

5.2- Architectural Design


The primary objective of architectural design is to develop a modular program structure and
represent the control relationship between them.

17
5.3- Conceptual Database Design

 Tells the user exactly


 What the system will do
 Describe the functions of the systems
 The system will work in the following areas
 Data Validation checks
 The system is defined by its boundaries, entities, attributes, and relationship.
 Conceptual design describes each of these system aspects by answering the
following.

Where will data come from?

(i) Inputs:-

The inputs to the system come from customers and Administrator of the school management
system through online.

(ii) Outputs:-

The outputs are also coming from the magnetic disc displaying in different form.

What Will Happen To The Data In The System?

Prescribed format will be used for inputs and outputs. Accuracy of the data is dependent
upon connection, speed, distortion, Gateway; Device type Flow of data depends upon the
number of user accessing the Database.

Database Design:-

 Database Design is a creative process of transforming:


 Problems into Solution
 The description of solution

18
 Intelligent database design is perhaps the most critical element of an optimal solution
with respect to performance. In fact, poor design is usually the culprit for poorly
performing solutions.
 Designer of the database should satisfy the user.

5.4- Physical Database Design

The data in the Access database is stored in tables that contain field, data type and value.
The tables used in this database are following

1. Admin
2. Admin Login
3. Customer
4. Customer Login
5. Result
6. Rooms

19
5.5: Data Flow Diagram

Fig 5.5:Data flow diagram

5.6: Entity Relationship Diagram (ERD)

20
Fig 5.6: Entity Relationship Diagram

21
CHAPTER 6
DEVELOPMENT PHASE

6.1 Website development


Website development requires an evolving explanation, as it is a product of numerous
contributions by individuals, corporations, and technologies. It uses aspects of Web design
that is one example of a Web application that are components of Web development, all
affected by changes made to the Internet. The creation of a website includes a base platform
that exits from various computer languages that can range from HTML, CSS,
BOOTSTRAP, JAVASRIPT and PHP. The integration of the produced document (website)
with hosting and an assigned IP (IP address) results in accessibility. Website development
encompasses the documental production aspect of a website while incorporating legitimate
processes of search engine optimization, marketing, and business. Increasing the
accessibility of information contained in a given website, Search Engine Optimization is a
detailed process that strives to return favorable search term results in search engines.
Marketing is an element implementing the distribution and retrieval of information,
products, services, or goods ranging from product to commercial definitions.

6.2 User interface design


User interface design or user interface engineering is the design of a websites with the focus
on the user's experience and interaction. The goal of user interface design is to make the
user's interaction as simple and efficient as possible, in terms of accomplishing user goals—
what is often called user-centered design. Good user interface design facilitates finishing the
task at hand without drawing unnecessary attention to itself. Graphic design may be utilized
to support its usability. The design process must balance technical functionality and visual
elements to create a system that is not only operational but also usable and adaptable to
changing user needs. In our system, for user interface design we used:

• CSS (Cascading Style sheets)


• HTML (Hypertext Markup Language)

22
6.2.1 Cascading Style Sheets:-
Cascading Style Sheets (CSS) is a style sheet language used to describe the presentation
semantics (the look and formatting) of a document written in a markup language. CSS is
designed primarily to enable the separation of document content (written in HTML or a
similar markup language) from document presentation, including elements such as the
layout, colors, and fonts. This separation can improve content accessibility, provide more
flexibility and control in the specification of presentation characteristics, enable multiple
pages to share formatting, and reduce complexity and repetition in the structural content.
CSS can also allow the same markup page to be presented in different styles for different
rendering methods.

6.2.2 Hypertext Markup Language:-


HTML is the basic building-blocks of webpages.HTML is written in the form of HTML
elements consisting of tags, enclosed in angle brackets (like <html>), within the web page
content.HTML elements form the building blocks of all websites. HTML allows images and
objects to be embedded and can be used to create interactive forms. It provides a means to
create structured documents by denoting structural semantics for text such as headings,
paragraphs, lists, links, quotes and other items. It can embed scripts in languages such as
JavaScript which affect the behavior of HTML web pages.

6.3 Validations on forms


Validation in website is used for the purpose that the user does not enter invalid data. For
this purpose we have used the following technologies for validation in our system

6.4 Main Programming Languages Used


We have used following main technologies in our system to achieve our goals
• PHP
• MYSQL
• JAVASCRIPT
• BOOTSTRAP

23
• HTML
• CSS

For main functionality of our online system we have used PHP because.

Using PHP enables scripting programmers to create applications that'll run on just about any
computer, regardless of operating system. PHP has thousands of programming functions to
facilitate almost any task. If the computer can run web server software, the PHP application
is portable across multiple operating systems and environments ... PC, Mac, Linux, Unix,
Windows, Internet, Intranet, etc. This means I can develop a project on my Windows PC and
it then can be run on any operating system.

On this web site, one script drives about 446 files and 29 folders of content. Additional
scripts are used here to process form data ... but that too could be done through the main
script using included files. PHP is most often used to create dynamic web sites.

It is an open source language which distributes the knowledge all over the world

It is being used by world's most famous web sites given below

Face book – yes, the world’s biggest social networking platform is written in PHP. 150
million users and counting, and in my experience, significantly faster and more stable than
competing platforms written in other languages (e.g. MySpace, Twitter etc.).

Yahoo! – formerly the world’s largest search engine. Yahoo! makes use of PHP.

YouTube – the world’s biggest video sharing website uses PHP technology.

24
CHAPTER 7
SYSTEM TESTING
7.1 Introduction
While developing software, there is a tendency to push the end product "out the door" as
soon as possible. Most of the time, software projects are not estimated properly and tend to
run behind schedule. When it comes to meeting the deadline, people seem to ignore a very
important phase in the whole process testing. But our project "SCHOOL MANAGEMENT
SYSTEM" has been thoroughly tested by us.
System testing is an essential step for the development of a reliable and error-free system.
Testing is a process of executing a program with the explicit intension of finding errors but
this does not mean to embarrass the programmer or fail the product but the positive intention
to remove as many problems from the system. A test case is a set of data items that the
system processes as normal input. Good testing involves much more than just running the
program a few times to see whether it works. A successful test is the one that finds error.

7.2 The Place of Testing in SDLC


Testing has an important place in SDLC (Software Development Life Cycle). The SQA
(Software Quality Assurance) team should be involved in the early phases of the project.
This will make them the aware of the requirements and techniques that are being followed
enabling them to develop an appropriate test strategy.
1. The marketing group will bring the customer requirement.
2. The engineering group will access the feasibility.
3. The engineering and SQA groups will work together during the design phase and
generate the product specification.
4. The developers will start implementing while the SQA team is developing the test
plans and so on.
5. While the developers are ready with the code, the SQA team will be ready for
testing. The testing phase is no longer a bottleneck for product delivery because the
SQA team has been involved since the start of the project.

25
6. While the developers are ready with the code, the SQA team will be ready for
testing. The testing phase is no longer a bottleneck for product delivery because the
SQA team has been involved since the start of the project.

7.3 Types of Testing

A well-organized testing strategy should include following types of testing:

7.3.1 Assertion testing:-

This is also referred to as black box testing. It involves testing at the API level and the goal
is to make sure that the code performs as specified.

7.3.2 Functional testing:-

This is also referred to as whit box testing. It is done at a high level and takes individually
tested features and places them together in small applications and test cases to test whether
they work together in small application.

7.3.3 Stress testing:-

This is the type of testing that is dreaded by developers because the kinds of bugs it reveals
are difficult for them to simulate and fix. It involves the running of feature and methods
randomly to simulate real world scenarios and determine whether they can sustain real world
usage. Stress testing is useful in identifying memory leaks, garbage collection; thread
execution, scalability and other issues that are not easy to reproduce.

7.3.4 Black-box testing:-

A strategy in which a software component is treated like an opaque box. This tests designers'
focus on determining how well the component conforms to the published requirements for
the component, instead of worrying about the implementation details

26
7.3.5 White-box testing:-

A strategy in which software component is treated as a transparent box. Test designer can
peek into the box and gain knowledge about the implementation. They can use this
knowledge to build test cases cover different parts of the code and also follow different
execution paths.

7.3.6 Unit testing:-

The testing of individual units of the application in isolation for example, a single class.

7.3.7 Beta testing:-

The process of distribution a pre-release version of a product to a subset of its intended


audience for the purpose of obtaining feedback.

7.3.8 Regression testing:-

The process of testing the entire system to uncover defects. It tends to finds problems due to
resources, security, and so on.

7.3.9 Integration testing:-

The process of testing the integration and communication between the components that form
the application.

7.3.10 Testing Specification Plan:-


For quality control to be effective, one must test the same things the same way every time
one test. When you change your tests, your results become inconsistent. You need a test
plan. A test plan is simply a high-level summary of the areas (functionality, elements,
regions, etc) one will test, how frequently one will test them, and where in the development

27
or publication process one will test them. A test plan also needs an estimate of the duration
of testing, and statement of any required resources.
The major phases of software need test plans, because the focus and emphasis of testing will
change over time. Testing new software in development is very different from testing
software that has been running for some time. Furthermore, any changes to the software
code, incremental or major, require regression test plans.
Clearly, one needs to decide what will be test, understand the software–the software should
have a concrete explanation of the “vision” behind its creation and the hoped-for “path” for
its success. If the software has no such explicit statement of direction, then the codifying of
such a statement should be first goal. To help define what one should test, ask yourself if
these types of questions.

 Why did I make this software? What is the software’s purpose?


 What has to work for this software to be effective? What has to work for this to even
function as software?
 Who are the end-users for this software? Can they use this software with ease?
 What is core functionality offered by this software? Can all users at least access this
core functionality?

Use the answers to these questions to decide what needs to be tested, and then develop your
test cases.

7.4 Testing Metrics


Most bugs are the result of poor design. It is important to realize that when you develop
software, bugs will appear. Instead of trying to create a bug free product, your goal should
be to achieve software of good quality. A handy rule of thumb is to expect 20 bugs for every
1,000 lines of code generated. Keeping such a realistic expectancy will enable you to focus
on finding those bugs and fixing them. It also enables you to have a quantifiable sense of
software quality.

28
The easiest bugs are found in the early stages of testing whereas the difficult ones are found
at the later stages under obscure situations. It is important to track the number of bugs found
over time. In general, such a chart should rapidly rise during the early stage
and then eventually level off. The leveling off indicates that the software quality is
becoming stable. If the curve just keeps rising, this indicates that either the design is very
poor or new bugs are being introduced as the old ones are being fixed.
Another metric to determine your software quality is the bug discovery trend. This technique
is commonly used at sun Microsystems it involves determining the ratio of the number of
hours it takes to find the next bug. In other word you keep track of the number of bugs found
in say a day. The logic is that as the software quality gets better it should become more and
more difficult to find new bugs. As a result the ratio obtained as the number of hours spent
to find a new bug should keep rising all the time.
Code-coverage analyzers are important tools that can provide code-coverage metrics. The
way these work is that you compile your software and then run all your test cases. The code-
coverage analyzer will capture all the methods statements and so percentage of your code
was used. The remaining portion of your code was used. The remaining portion of your code
is considered to be dead code because it indicates this code was not really tested. Let's say
that during the testing, we found 50 percent of the target number of bugs. This means that
we might have about 50 percent of the bugs in the untested 30 percent of the code. As you
can see, we need a more rigorous testing strategy.

Software Bug-
A piece of software code that is not working as expected. No matter what metrics you use
for testing your software, it is important to realize that robustness you expect from the
software is dependent on the development phase of the software. In other words the
robustness expected from a final product is more than that from a beta release, which in turn
is more than an alpha release.

29
7.5 Testing of "CAMPUS MANAGEMENT SYSTEM”

The testing of “Campus Management System" is as follow:


 Traceability Test Matrix
 GUI Test Plan

7.6- Traceability Matrix

Test Case ID Test Result

Verify that user get error Test has Passed


Test 1 message on wrong password Successfully
Verify that user cannot
access the administrator
Test 2 Test has Passed
functionality if login as
Successfully
employee

Test3 Test has Passed


Verify that user get error
Successfully
messages on wrong entries
Test 4 Test has Passed
Verify that changes are
Successfully
updated
Test 5 Test has Passed
Verify that user get error
Successfully
messages on wrong entries

Test 6 Verify that user gets error Test has Passed


message Successfully
on wrong user Name

Test 7 Verify that user gets error Test has Passed


message Successfully
on entering wrong password
Test 8 Test has Passed
Verify that all other links are
Successfully
working true.
Test Case ID Test Result

Table 7.6: Traceability Matrix

30
CHAPTER8

USER INTERFACE AND APPENDIX

8.1 Overview
It is particularly important first to design how the system will look and respired to user

before designing the software structure. The most critical and creative aspect of

development is to design the user interface. User interface design determines how the

system will look the user from outside.

The basic design principles, consider the user interface design, are the following.

The interface describes how the software communicate with system that inter operate with it
and with human who use it. An interface implies of flow of the information for interface
design.

1. Label

2. Textbox

3. Grid view

4. Hyperlink

5. Drop Down List

6. Button

8.2 DIFFERENT FORMS

The following forms are used in our project:

31
8.2.1 Login Page:-

This is the first Page of School management system. When admin enter the correct email
and password then it will enter into the main page (dashboard).

Fig No.8.2.1 Main Page

32
8.2.2 Main Page (Dashboard):
Administration can access this page be entering his Email and Password.

Fig 8.2.2

8.2.3 Student Registration form


Admin can add student through in school through this form.

33
8.2.4 Teacher Registration form:
Admin can add Teacher in school through this form.

34
REFERENCES

 www.answers.com/topic/computer-science

 Abdul Wali(Software Engineer)

 Library.albany.edu/subject/csci.htm

 En.wikibooks.org/wiki/computer programming

 www.newworldencyclopedia.org/entry/computer-programing

 www.w3schools.com/html/defult.asp

 www.w3schools.com/css/defult.asp

 www.w3schools.com/php/defult.asp

 www.w3schools.com/js/defult.asp

 www.w3schools.com/sql/defult.asp

 Beginning.CSS.3rd.Edition

 JavaScript Bible

35

You might also like