Professional Documents
Culture Documents
School Management System
School Management System
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
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.
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.
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:
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.
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.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.
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.7- User-friendly:
System should be user friendly, that user can easily operate the system.
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.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.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.
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
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
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.
13
software development team. Without preparing the requirement specification the process of
developing software with all of its functionality looks quite impossible.
The system must have an effective and fast retrieval of the required information from the
Database.
4.1.5.4 - Display the Employee:-
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
17
5.3- Conceptual Database Design
(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.
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:-
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.
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
20
Fig 5.6: Entity Relationship Diagram
21
CHAPTER 6
DEVELOPMENT PHASE
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.
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
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.
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.
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.
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.
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.
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.
The testing of individual units of the application in isolation for example, a single class.
The process of testing the entire system to uncover defects. It tends to finds problems due to
resources, security, and so on.
The process of testing the integration and communication between the components that form
the application.
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.
Use the answers to these questions to decide what needs to be tested, and then develop your
test cases.
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”
30
CHAPTER8
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
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
6. Button
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).
32
8.2.2 Main Page (Dashboard):
Administration can access this page be entering his Email and Password.
Fig 8.2.2
33
8.2.4 Teacher Registration form:
Admin can add Teacher in school through this form.
34
REFERENCES
www.answers.com/topic/computer-science
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