Final Report - Student Information System
Final Report - Student Information System
There were a number of problems associated with adopted manual methods to manage student
information at Pokola Day Secondary School located in the North-Western province of Zambia,
these followed regulations caused delay in the delivery of services to students, inaccuracies in
the completion of tasks and so on. A new system designed and implemented by using the Web
Development tools to solve most of the problems and obstacles resulting from the use of the old
methods and techniques.
The main work of the software design process included requirements analysis, database
description and logical structure design of the data. Database System test results show that the
database system meets the requirements of each module with a graphical user interface and
simple procedures.
Student data can be updated by the administrator of the system efficiently, accurately in a short
time and in a flexible manner.
The new Student Information System (SIS) for Pokola Day Secondary School is developed in-
house based on the requirement specification of the Head Teacher’s Office. The system is
developed using PHP programming language with MySQL database. Apache Server is used to
configure the system. After properly testing the SIS it was implemented successfully. The system
supports functions including storing and processing students’ enrollment data, handling class
registration, scheduling classes, entering and processing grades, generating grade reports and
transcripts, processing graduation related data and generating statistical reports of different kind
for multiple purposes.
Finally concluded that adopted this new database SIS helps to accomplish the tasks at high speed
and accuracy, also helps the management of the school in speed of decision-making, which helps
raise the level of performance of the academic school in general.
Contents
Student Information System P a g e 2 of 95
CHAPTER 1: INTRODUCTION........................................................................................................................7
1.1. Background..................................................................................................................................7
1.2. Objectives....................................................................................................................................8
1.3. Purpose, Scope and Applicability.................................................................................................8
1.3.1. Purpose................................................................................................................................8
1.3.2. Scope...................................................................................................................................8
1.3.3. Applicability.........................................................................................................................9
1.4. Achievements..............................................................................................................................9
1.5. Organization of Report................................................................................................................9
CHAPTER 2: SURVEY OF TECHNOLOGIES...................................................................................................11
CHAPTER 3: REQUIREMENTS AND ANALYSIS.............................................................................................21
3.1. Problem Definition..........................................................................................................................21
3.2. Requirements Specification............................................................................................................22
3.3. Planning and Scheduling.................................................................................................................26
3.4. Hardware and Software Requirements..........................................................................................27
3.5. Preliminary Product Description.....................................................................................................28
3.6. Conceptual Models.........................................................................................................................29
CHAPTER 4: SYSTEM DESIGN.....................................................................................................................30
4.1. Basic Modules.................................................................................................................................30
4.2. Data Design.....................................................................................................................................31
4.2.1. Schema Design.........................................................................................................................31
4.2.2. Data Integrity and Constraints.................................................................................................32
4.3. Procedural Design...........................................................................................................................33
4.3.1. Logic Diagrams.............................................................................................................................33
4.2.2. Data Structures............................................................................................................................37
4.2.3. Algorithms Design........................................................................................................................44
4.4. User Interface Design.....................................................................................................................45
4.5. Security Issues................................................................................................................................47
4.6. Test Case Design.............................................................................................................................47
CHAPTER 5: IMPLEMENTATION AND TESTING..........................................................................................49
5.1. Implementation Approaches..........................................................................................................49
5.2. Coding Details and Code Efficiency.................................................................................................51
5.2.1. Code Efficiency.........................................................................................................................51
5.3. Testing Approach............................................................................................................................51
User Profile………………………………………………………………………….….…...14
Tutor Registration.......………………………………………………………………….…...16
Assign Tutor………………………………………………………………………………...16
ER Diagram……….………………………………………………………………………...31
System Flowchart...……………………………………………………………………...…...36
Users Table...………………………………………………….……………………………...37
Students Table...………………………………………………………………………....…...38
Enrollment Table...……………………………………………………………………....…...38
Subjects Table………………………………………………………………………………...39
Classes Table………….……………………………………………………………………...39
Timetable Table….…………………………………………………………………………...40
Employees Table….…………………………………………………………………………...42
Teachers Table…….…………………………………………………………………………...42
1.1. Background
Student information system literally means the general information systems for maintaining and
providing student information. It exists in all the schools, colleges, universities and any other
education institutions. However, those information systems vary. Some of them are paper based;
heavily manual work is involved in managing and maintaining information such as student
personal records files. However, recently, most schools, even down to the very smallest, utilize
computers in some way or another. The uses to which the computers are put vary enormously,
ranging from word processing and spreadsheet through to worldwide on-line access, complicated
user access permission system and vast functionalities.
It is probably true that many of today’ s business simply could not function effectively without
automated information processing systems of some form or another, so do academic schools. All
of them have common tasks such as collecting, storing and processing information regarding
their students, staff and the work done within the department. With the increase of information, it
is unwise to adopting the traditional paper based system which is slow to access and therefore,
inefficient. Recent years, many systems were developed either by the academic schools or the
software companies in order to partially automate many of the processes carried out by the
department. Those developments dramatically reduce the time take in searching information and
should enable the school to maintain precise and up-to-date information. For example,
previously, students would have to enquire for much of his information from the school student
office, which
required more time and effort, particularly from members of staff. The new system is more
efficient and also often presents more accurate information. However, those systems vary even
within the same academic school. Some are quite well developed and implemented, some still
adopting the inferior and out-of-date technology. This is also one of the project’ s aims: to
analysis some sample systems in order to attain the strengths and eliminate the weaknesses in
developing the new potential student information system.
General Objectives
The study aims to develop Students Information System for Pokola Day Secondary
School to have much accurate, organized of students’ information and to ensure data
integrity, privacy, and security in an open-access environment.
Reduce manpower and manual paper works for maintaining the records offline.
Specific Objectives
1.3.2. Scope
The proposed system will be implemented and it will be limited only to Pokola Day Secondary
School. The target respondents of this study are the administration and the students of Pokola
1.3.3. Applicability
Student Information Systems (SIS) are designed with diverse application potentials ranging from
simple management of students’ records at school to management of all student related functions
as well as administrative functions of an academic or tertiary school (e.g. University or College)
or a chain of education establishments.
Students can also keep track of their application through SIS seamless. The class timetables,
assessment results and other school administrative tasks can also be accomplished using the
computerized student information system quickly and in real-time.
1.4. Achievements
The achievements of the new Student Information System include:
Chapter 2 of the report discusses the Technological surveys and literature review that were
carried out in order to proceed with the project. It explains and justifies the manner in which this
project was approached.
Chapter 4 shows the design of the system; this involves the listing down of all the basic modules
of the new system, data design, database schema design, data integrity and constraints, security
issues, user interface design and Use case diagrams which depicts the actual functionality of the
proposed SIS.
Chapter 5 shows the implementation plan adopted and the various types of system tests which
were carried out during the implementation process.
Chapter 6 shows the test reports together with the user documentation of the new system.
Chapter 7 is the final chapter to finish the report; it shows the evaluation of the outcomes of the
project, which includes identifying the weaknesses in processing the project and providing
further enhancements to the system development. It also discusses the limitations of the system
and future scope of the project.
References lists down the books and websites addresses where we borrowed some report content
during the organising and development of the system report and the functional system at large.
Glossary shows the meaning of various terms and abbreviations used throughout this report.
Appendix A discusses the system Installation and User Manual for the new Student Information
System.
Appendix B shows the Technical manual which includes the source codes of the new system in
PHP and JavaScript.
This part of the report provides a basic outline of the research done during the project for the
purpose of acquiring an understanding of the subject content i.e. the Student Information System
(SIS) and its components.
Student information system literally means the general information systems for maintaining and
Providing student information. It exists in all the schools, colleges, universities and any other
education institutions. However, those information systems vary. Some of them are paper based;
heavily manual work is involved in managing and maintaining information such as student
personal records files. However, recently, most schools, even down to the very smallest, utilize
computers in some way or another. The uses to which the computers are put vary enormously,
ranging from word processing and spreadsheet through to worldwide on-line access, complicated
user access permission system and vast functionalities.
2.3. Methodology
System development methodologies have over the past years evolved from traditional System
Development Life Cycle (SDLC) to agile methodologies. The adopted methodology for the
development of the proposed system is the Agile methodology due to its ability to expose
progress and problems. Rico (2007), defines agile methods as lightweight software design
processes based on small teams using flexible technologies to iteratively improve software using
customer feedback to converge on solutions.
2.3.1. Extreme Programming; this is a development approach that is more of code oriented
rather than design oriented. Testing is thus made easy with extreme programming. Abrahamson
(2002)
2.3.2. Dynamic System Development method (DSDM); DSDM is an agile project management
method and delivery framework that aims to deliver the right solution at the right time. Richard
(2010).
This section of the report describes the technologies used to develop the system. It takes into
consideration both the front and backend technologies used in the whole process.
Front end technologies are the user interaction processes that enable a user to interact with the
system. These technologies include the tools used in the designing and implementation of forms;
reports input responses and the look and feel of the application.
Frontend processes usually run on the client machine while the actual process is executed in the
backend by backend technologies
The frontend technologies used in the design and implementation of the system are;
2.4.1Cascading Style Sheets (CSS): CSS is used to define styles for your web pages, including
the design, layout and variations in display for different devices and screen sizes. It saves a lot of
work! With an external style sheet file, you can change the look of an entire website by changing
just one file! CSS describes how HTML elements are to be displayed on screen, paper, or in
other media. CSS saves a lot of work. It can control the layout of multiple web pages all at once.
2.4.2. JavaScript is an object- and prototype based programming language created by Brendan
Each at Netscape. Although similar, JavaScript is not Java. Unlike Java, JavaScript is not a full
programming language; its main used in the web environment and even then it is used in
conjunction with another language, usually HTML. JavaScript is an excellent language to use for
functionality such as rotating pictures on a page, error handling when inputting information in
forms and setting responses to certain events on a web page. Robbins (2006)
2.4.3. HTML: HTML is the language for describing the structure of Web pages. HTML gives
authors the means to:
● Publish online documents with headings, text, tables, lists, photos, etc.
● Retrieve online information via hypertext links, at the click of a button.
● Design forms for conducting transactions with remote services, for use in searching for
information, making reservations, ordering products, etc.
● Include spread-sheets, video clips, sound clips, and other applications directly in their
documents.
The backend technologies used in the design and implementation of the system are;
2.4.4. PHP is a server side scripting language that was designed for creating dynamic websites.
It runs on the server and processes instructions contained in a web page before that page is sent
to a user’s web browser. PHP can also “talk” with various database systems, giving developers
the ability to generate dynamic pages based on the results of an SQL query. Moncur (2009).
2.4.5. MySQL: MySQL is the most popular open source SQL database management system
Telecom companies and forward-thinking corporate IT Managers because it eliminates the major
problems associated with downtime, maintenance and administration for modern, online
applications.
● Backup: It’s easier to setup automatic backups in Microsoft SQL Server and ensure
there’s a point of restore.
● Security: Because SQL Server integrates with Windows Active Directory, it is quite easy
to determine access to the databases via logins for the users in the security module of the
database management system.
● Auditability: You cannot copy or duplicate the SQL Database without leaving an audit
trail which administrators can easily review and track the users who logged in and made
any changes.
● Scalability: SQL Server can handle much larger databases with large amounts of data; it
is easy to grow a SQL server database as the data demands of the organization increase.
Activities
• Review system documentation for similar systems that are implemented elsewhere
In order to achieve this, thorough research through the internet as well as documentation of
existing systems would have to be done. After comparing the systems suitable features were
selected to include in the final system.
This chapter of the report discusses different systems with similar concepts implemented
elsewhere. This evaluation will assist in learning from the similar systems i.e. to incorporate
useful similar features and also avoid any likely mistakes that may have been made during
design or development of the systems.
The area on which the evaluation was focused was a simple overview, the appearance,
navigation, usability and functionality.
2.5.1.1. Overview
The SOAR student online registration system was designed to enable academic institutions to
register students online and manage their academic activities. It enables students to register to
classes and keep track of their academic progress. The main actors in of the system are the
student, tutor and administrator.
2.5.1.2. Appearance
The application has a user-friendly interface. It has a list of menu options to the left of its screen
that are easily accessible to the user. Once logged in, it displays the users’ details and allows the
users to edit their profile details as shown in figure.
2.5.1.3. Functionality
The functionality of the system consists of a number of things such as; capturing of user details,
assigning students to classes and lectures, tracking of students’ progress, viewing of students,
viewing of students and their records. It also enables administrators to manage student
registration, and to manage the school. Professors are able to manage students’ grades, and
attendance.
2.5.1.4. Navigation
The application has got a menu grid at the left of the screen as shown in figure 1. This grid has
links that a user can select from in order to go to the page that they wish to go to. It also has a
drop down menu at the top right of the screen that enables the user to sign out of the system.
2.5.1.5. Usability
• The progress view. A student is able to see the status of their academic progress. This is a
very useful functionality because a student is kept aware of their academic status
• The interface display was helpful in that it gave me a guideline in how to place the menu
and the links in the new system.
2.5.2.1. Overview
This Motor Driving School System is a system designed by Nevon projects. System helps
driving schools to automate the manual tasks of maintaining and managing clients. The
application helps in the assigning of instructors to students and also enables instructors to assign
a training slot available to a student.
The system enables students to register online using a registration form. Once a student registers
to the system, a notification is sent to the email address they provide.
2.5.2.2. Appearance
The system is a web based system that uses. It was developed in php. The system has one log in
form on the home page. Once logged into the system, each profile shows the details of the person
logged. Each page has a menu bar at the top section of the page.
2.5.2.3. Functionality
The Motor Driving School management system enables users to register online using a
registration form. It enables the administrator to register a tutor as shown in figure 2. The system
also enables a driving school to assign tutors to students as shown in figure 3, view students,
adding tutors and select a training slot. The system also enables students to make online
payments to the school. A school is also able to view the list of all its students and the list of all
tutors.
Student Information System P a g e 16 of 95
Figure 2; shows tutor registration
2.5.2.5. Usability
The system is a very user friendly system. It is not sophisticated and it has a very user friendly
interface. Simple language and on its GUI was used. All users log in using the same form. This
makes it simple because one will not have to start looking for a different type of log in form in
order to log into the system.
2.5.3.1. Introduction
SIS stands for School Information System, which is the main administrative database system
within the School of Computing (SoC). All members of the SoC have the access via its main
interface (web based) intranet web pages at http://www.comp.leeds.ac.uk/cgi-
bin/sis/main/index.cgi by providing their Linux username and password. The value proposal to
the user is the effective and efficient way of broader range of information access. From the
student’ s prospect, it also means convenient coursework submitting and results checking
whereas, for the staff, it helps staff generate workload report and ease administration process.
2.5.3.2. Overview of the System
System Scope: The web based SIS is available for both staff and student of SoC to browse, and
provides them with different information from any Internet enabled computer. The SIS and
dynamic web page generation system interface with a number of existing systems, including
university student information management system Banner, Edass and several administrative
Student Information System P a g e 18 of 95
systems, such as those used to issue standard letters to students, the sorting of post and oversight
of placement student are connected dynamically to the SIS database.
Technology: Dynamic web information system provides updated and accurate information to
both
students and staff. Modern IT technologies are used within the system integration and database
management to provide as much information as the system can to the end users.
Stakeholder and User profile:
System users: Total head count of SoC is 852, which includes 514 full-time students.
Stakeholder
summary and user profile will be detailed in the SIS requirement specification in Appendix D.
2.5.3.3. Technical Architecture
Security: Users of SIS are issued a Linux username and password, which are intensely managed
by the computing administrative staff.
Figure 4; Platform, Database and Development language
• Reports and its ability to show all the registered students and staff details.
Moreover, before universities have created their own bespoke student record systems, but with
growing complexity in the business of educational establishments, organizations now choose to
buy customizable within the shelf software.
It can be that, modern student information systems are usually server-based, with the application
residing on central computer server and are being accessed by client applications at various
places within and even outside the school.
During the year 1990s, student information systems have been changing and are fast adopted
through the presence of a web medium as a channel for accessing SIS without any hassle upon
viewing student details and information.
This study deals with the Proposed SIS for Pokola Day Secondary School Specifically, this study
aims to answer the following questions:
What are the problems encountered by the system of the students’ information system in
terms of services?
How do the above to be improved?
Is the proposed system can really make solution for these problems?
Does the computer based system can help the school to make Collection process fast and
ease?
This chapter outlines how the requirements of the proposed system used in order to meet its
objectives were derived taking into account both functional and non-functional requirements.
In this chapter we will also explore some fact finding techniques and also illustrate the
requirements by the use of modeling.
Student Information System P a g e 21 of 95
3.1.1. Fact finding techniques
The fact finding techniques are the methods used to acquire information that is to be used for the
purpose of determining the requirements of the proposed system.
3.1.2. Interviews
Interviews are a very essential method of gathering information in projects of many kinds
regardless of the subject of research. Interviews were used to provide an insight on the
challenges that users face in the current system. The current system does not provide for
accountability and the reporting of student assessment results is not possible unless done
manually. The interview process also unveiled the challenge of data capture that the users were
facing
3.1.3. Questionnaire
The defenders employ the use of questionnaires in finding solutions to the critical and
controversial problems of the present study. The results of the questionnaires supported the
formulation of the hypotheses. The defenders gather accurate information on how a manual
system of gathering and managing collection reports operates particularly about the processes
involved in such. Weaknesses of a manual system are examined for further analysis.
3.2. Requirements Specification
This system modelling and requirements analysis apply to the academic school’ s Student
Information System, which is going to be developed for Pokola Day Secondary School. The
system will be installed and maintained at the academic school level. The web based Student
Information System will be available for both staff and students of that individual school to
browse, and will provide them with different information authorizations from any Internet
enabled computer.
This chapter mainly focuses on the functional and non-functional requirements of the proposed
system.
3.2.1. Functional Requirements
Functional requirements refer to the fundamental functions a system is able to perform based on
the users’ needs. Bennet (2005), describes functional requirements as functionality that a system
is expected to perform.
For the proposed system the functional requirements were grouped according to the user
categories and included the outlined below;
Student Information System P a g e 22 of 95
1. System Administrators.
2. Standard.
3. Class Teacher.
4. Teacher.
5. Students.
Systems Administrator User (Head Teacher) requirements:
● System should authenticate the users. The home page will have a login form that will
request for the Username and Password in order to log in.
● Create User.
● View users.
● Delete User.
● Create Employee.
● Create Classes.
● Create Subjects.
● Setup Database.
● Create Classes.
● Create Subjects.
● Create Subjects.
The figure below illustrates the description of some functional requirements that is available in
the new Online Student Information System.
Functional Requirements
Creation and deleting users The administrator of the system will be able
to create new users to the system. The users
of the system are Standard, Class Teacher,
Teacher and Students. The Administrator
will also be able to delete the users
Registering and Enrollment of Students The Standard user will be able to register
and enroll new students to the system.
Students will be able to login and browse
for their assessment results and view class
Timetable online.
Assigning of Teachers to Classes and The system will enable the administrator to
Subjects define class teachers and assign subjects to
Teachers based on various classes.
Creation of Class Timetable The Class Teacher will be able to create a
class Timetable for each and every class
which he/she has been assigned to manage.
Entering of Assessment Results The subject teacher will be able to enter
student assessment results based on the
specific assessment schedule created by the
standard user or administrator under a
certain academic period within an active
School Year.
Non-Functional Requirements are those that describe aspects of the system that are concerned
with how well it provides the functionality required (Bennett, 2005).
Table 2; shows the non-functional requirements of the system
Student Information System P a g e 25 of 95
Non-functional requirement Description
Security The system will be able to control user
account access. This will be achieved using
passwords and controlling access levels
Capacity The system will be able to manage multiple
transactions at a goal and store them without
having any negative effects on its
performance.
Extensibility It being a very new system, it will be
subjected to a lot of change in terms of
additions and subtractions to its functionality.
The system will be able to handle these
changes without distorting existing data and
functionalities.
Data Recovery The system will be able to recover from
critical failure when it crashes. There will be
able to achieve recovery by database restore.
Data integrity The system will be able to regulate the type of
data entered through input validation that will
be in every form.
It has been identified in the SIS environment five major elements: people, procedures, data,
software and hardware.
People: The first component is the people involved with the system. There are four
different types of people who are involved in the environment of a SIS, application
developers, database administrators, end-user and database designers.
Procedures: This component refers to the rules and instructions which manages the
design and use of the database. The staff and the user of the system who run the database
need to document the procedures on how to use or operation of the system. This may be
composed of instructions on how to:
o Use of a particular database management system or application program.
o Start and stop database management systems.
o Create backups of the database.
Analysts who adopt the SDLC approach often benefit from productivity tools, called Computer-
Aided Software Engineering (CASE) tools, that have been created explicitly to improve their
routine work through the use of automated support. Analysts rely on CASE tools to increase
productivity, communicate more effectively with users, and integrate the work that they do on
the
system from the beginning to the end of the life cycle.
Use Case diagrams, Entity Relationship Diagrams, Flow Charts are the selected models which
has been used in this report. The next chapter shows graphical design of the system using these
models.
7. Assessments Management
Several design models will be used to illustrate how functional and non-functional requirements
are attained by the proposed system in this chapter.
The Stackoverflow website defines Database design as “the process of specifying the logical
and/or physical parts of a database. The goal of database design is to make a representation of
some "universe of discourse" - the types of facts, business rules and other requirements that the
database is intended to model.”
Listed below are the identified entities with their attributes to be used in the design of the
Database:
EMPLOYEES(EmployeeID)
SUBJECTS(SubjectID)
STUDENTS(StudentID)
Student
Users Table
Enrollment Table
Classes Table
Class Subjects
Timetable Table
Teachers Table
The following below are the design of theHome page/Login for the new SIS user interface.
Passwords and usernames will determine the privileges of the client who logs on to the server.
The server administrator will also be required to log on to the system server by use of a password
and username.
The figure below illustrates the login form that will be used to authenticate each and every user
credentials.
There are many different test case design techniques used to test the functionality and various
features of the software.
Description: User should be able to successfully log into their account on the website/app
Preconditions: User must already be registered and use the correct login details.
Test Steps:
1. Open website
2. Enter the Username and Password in the appropriate fields.
3. Click Login
Description: User should be able to successfully log into their account on the website/app and
then select various options from the SIS Dashboard
Assumptions: they are using a supported device or browser with JavaScript Support.
Test Steps:
1. Open website
2. Enter the Username and Password in the appropriate fields.
3. Click Login
4. Dashboard is displayed based on user access level.
5. Select an option from the system menu in order to perform a desired task.
Expected Result: The User should be able to perform a desired task successfully (e.g.
Registering a Student, View Student Results, View Class Timetable etc.).
This system was implemented in an application developing language such as PHP, JavaScript,
MySQL and HTML. The following is the description of how the system was realized following
the design. The forms (interface) that will be used for input and output will be discussed. This
chapter focuses on what was actually done. It will contain a description of implementation,
showing how it arises from the design. Different modules codes were written in order to
implement the system design and satisfy the success criteria.
Hardware Requirements:
User Training
There two aspects to user training:
Familiarization with the processing system itself
I.e. the equipment used for data entry or processing
Training in using the application
I.e. the software that accepts the data processes and produces the results
Student Information System P a g e 49 of 95
Conversion
Conversion is the process of changing from the old to the new one.
Pilot Approach
When new systems also involve new techniques or drastic changes in organization performance,
the pilot approach is often preferred. In this method a working version of the system is
implemented in one part of the organization such as a single work area or department. The users
in this area typically know that they are piloting a new system and that changes can be made to
improve the system.
When the new system is deemed complete, it is installed throughout the organization, either all at
once or gradually.
Since this system was developed using free and open source software, it will not only be easy to
upgrade or improve, but cheaper as well.
It is recommended that users are security conscious and not disclose their passwords to other
people.
Students’ records (details) are private and confidential, and must be treated as such.
Further work can be done to improve security and functionality; this has just been the beginning.
Key sections of a manual should include an introduction, how to use the software, what to
do if things go wrong, a technical reference section, an index, and information on how to contact
the manufacturer. The biggest complaints with procedure manuals are that (1) they are poorly
organized,
(2) it is hard to find needed information in them, (3) the specific case in question does
not appear in the manual, and (4) the manual is not written in plain English.
The user documentation manual for the new Student Information System is discussed in
APPENDIX A of this document.
7.1. Conclusion
In this study we have introduced a database management system for students at Pokola Day
Secondary School in the North Western province of Zambia. The main objective to design and
carry out this system is to collect students' data in one place and making various transactions and
modifications on it and retrieve this data according to the need of generating the report, this
objective as well as the functions for which they were designed this system has been achieved.
This system will transfer the work in this department from the manual to the computer-based
system and is able to store huge data of the students, also enables the user to get access to data
through a user-friendly interface. In addition, this system can promote the management of
academic school to carry out its tasks high efficiently.
Student Information System can reduce time and effort required in the process of management
students' information, also the need for a large number of staff to carry out the functions of the
school, where the management of this system needs to only one employee, furthermore it will
help the administration of the school to speed decision-making, where this system has made it
possible for the administration of the school to use real-time data when making decisions, which
flows into the benefit of the school. The characteristics of this system is the answer for all the
questions raised from the purpose of this study.
AJAX A method using JavaScript and XML to dynamically change Web pages without
displaying a new page by obtaining small amounts of data from the server.
ALIAS Alternative name for a data element used by different users. Recorded in a data
dictionary.
ATTRIBUTE Some characteristic of an entity. There can be many attributes for each entity.
BROWSER Special software that runs on an Internet connected computer enabling users to
view hypertext-based Web pages on the Internet. Microsoft Internet Explorer and Mozilla’s
Firefox are examples of graphical browsers.
END USERS In an organization, no information system professionals who specify the business
requirements for and use software applications. End users often request new or modified
applications, test and approve applications, and may serve on project teams as business experts.
FAVICON A small icon displayed next to any bookmarked address in a browser. Copying the
bookmarked link to a desktop results in a larger version of the icon being placed there. Unique
favicons can be generated with a Java icon generator or with other graphics programs.
FIREWALL Computer security software used to erect a barrier between an organization’s LAN
and the Internet. Although it prevents hackers from getting into an internal network, it also stops
organizational members from getting direct access to the Internet.
INPUT Any data, either text or numbers, that are entered into an information system for storage
or processing via forms, screens, voice, or interactive Web fill-in forms.
PROCESS The activities that transform or change data in an information system. They can be
either manual or automated. Signified by a rounded rectangle in a data flow diagram.
OUTPUT Information delivered to users through the information system by way of intranets,
extranets, or the Web, on printed reports, on displays, or via audio.
RECORD A collection of data items that have something in common with the entity described.
ACRONYMS
CSS cascading style sheets.
Installation Manual
Introduction
This document aims to describe how the new Student Information System can be used
effectively. If this manual is effectively used, the user will get full benefits of this system without
any problems. It guides the user on the steps to take to effectively utilize the system as well as
way of coming out of problems in case they arise.
The scope and objectives of the document is to give a detailed guideline and steps on the
operations and installations procedure of the system. These details will help the user in knowing
what each screen appearance entails and also what each message entails if displayed on the
screen.
System Requirements
The system is designed to work with the following minimal hardware and software requirements
for it to function properly.
Hardware Requirements:
Install the Wamp server. After installation; launch the Wamp server, go to the Task bar, on the
Taskbar Tray click on Wamp Server Icon then Select the PhpMyAdmin option
Click Here
After clicking Import then click on Choose File and locate the database script name “sis.sql” and
then click Go.
User Manual
Launching application
In order to launch the system firstly you need to copy the folder which contains the project files
to C: /Wamp64/www/. After this then launch the browser and type localhost/sis/ in the web
browser’s address bar and then press enter button on your keyboard. The application verifies the
requirements on your machine, if it does not meet the requirements. If, however the requirements
are met, the screen below is displayed.
The page above shows the login form, therefore in order for any user (e.g. Administrator,
Standard, Class Teacher, Teacher, Student etc.) to login to the system they will be required to
enter correct Username and Password and then click Login button to sign in.
If the wrong login credentials are entered, the following window below is displayed.
Student Portal
2. Employee Management
The Employee Management Component helps with the management of employee data, it
consists of tools for recording employees and setting employee as teacher.
LIST OF SUBJECTS
4. Classes Management
LIST OF CLASSES
6. Timetable Management
Technical Manual
Technical manual’ is a term for any manual with technical character. In this chapter we list down
the source codes in PHP programming language which was written during the development and
implementation of the new Student Information System.
<? php
function ExecuteLoginAuditTrail($UserID,$LoginTime,$LoginDate,$Action,$InstitutionID){
include 'config/db_config.php';
$UserGroup=$row['UserType'];
$FullName=$row['FullName'];
$ActionDate=date('Y-m-d');
$ActionTime=date('H:i:s');
$Online='TRUE';
$SQL="INSERT INTO
audittrail(UserID,UserGroup,FullName,Action,LoginDate,LoginTime,ActionDate,ActionTime,
Online,InstitutionID)
VALUES('$UserID','$UserGroup','$FullName','$Action','$LoginDate','$LoginTime','$ActionDat
e','$ActionTime','$Online','$InstitutionID')";
if($conn->query($SQL)){
}else{
echo "Failed to Execute Login Audit Trail: - ".$conn->error;
}
function ExecuteLogoutAuditTrail($UserID,$Action,$InstitutionID,$LogoutParty,
$LogoutPartyID){
include 'config/db_config.php';
$UserGroup=$row['UserType'];
$FullName=$row['FullName'];
$ActionDate=date('Y-m-d');
$ActionTime=date('H:i:s');
$Online='TRUE';
$LoginTime=$rs['LoginTime'];
$LoginDate=$rs['LoginDate'];
$LogoutPartyUserGroup=$rec['UserType'];
$LogoutPartyFullName=$rec['FullName'];
$LogoutDate=date('Y-m-d');
$LogoutTime=date('H:i:s');
$SQL="INSERT INTO
audittrail(UserID,UserGroup,FullName,Action,LoginDate,LoginTime,ActionDate,ActionTime,
Online,InstitutionID)
VALUES('$UserID','$UserGroup','$FullName','$Action','$LoginDate','$LoginTime','$ActionDat
e','$ActionTime','$Online','$InstitutionID')";
}else{
echo "Failed to Execute Logout Audit Trail: - ".$conn->error;
}
}
Student Information System P a g e 81 of 95
?>
<?php
if(isset($_POST['btnsubmit'])){
date_default_timezone_set($_SESSION['TimeZone']);
$username=$_POST['username'];
$password=VicsoftEncrypt($_POST['password'],2);
if($QRYLogin->num_rows>0){
$row=$QRYLogin->fetch_assoc();
$Blocked=$row['Blocked'];
$usertype=$row['UserType'];
//$result=$conn->query("");
if($Blocked=='FALSE'){
$_SESSION['UserID']=$row['UserID'];
$_SESSION['UserCode']=$row['UserCode'];
$_SESSION['Username']=$row['Username'];
$_SESSION['Password']=$row['Password'];
$_SESSION['UserType']=$row['UserType'];
$_SESSION['Email']=$row['Email'];
$_SESSION['FullName']=$row['FullName'];
$_SESSION['PhoneNumber']=$row['PhoneNumber'];
$_SESSION['Blocked']=$row['Blocked'];
$_SESSION['Online']=$row['Online'];
$_SESSION['ActivationCode']=$row['ActivationCode'];
$_SESSION['InstitutionID']=$row['InstitutionID'];
$_SESSION['Status']=$row['Status'];
$_SESSION['LoginDate']=date("Y-m-d");
$_SESSION['LoginTime']=date("H:i:s");
if($row['Online']=='TRUE'){
}
Student Information System P a g e 82 of 95
##########################################################
ExecuteLoginAuditTrail($_SESSION['UserID'],$_SESSION['LoginTime'],
$_SESSION['LoginDate'],'Logged Into the System',$_SESSION['InstitutionID']);
header("location: A_TlRnMk5qUXc=/");
}else{
echo '<script>alert("Failed to Update Login Status Query: - '.$conn->error.'"); </script>';
}
#STUDENT
if($usertype=="Student"){
ExecuteLoginAuditTrail($_SESSION['UserID'],$_SESSION['LoginTime'],
$_SESSION['LoginDate'],'Logged Into the System',$_SESSION['InstitutionID']);
header("location: S_TlRnMk5qUXc=/");
}else{
echo '<script>alert("Failed to Update Login Status Query: - '.$conn->error.'"); </script>';
}
}else{
}
Student Information System P a g e 83 of 95
}else{
$conn->close();
?>
<?php
include '../config/db_config.php';
$InstitutionID=$_SESSION['InstitutionID'];
if(isset($_POST['btnsubmit'])){
$StudentNumber=str_replace("'","",$_POST['studentnumber']);
$FirstName=str_replace("'","",$_POST['firstname']);
$SurName=str_replace("'","",$_POST['surname']);
$OtherNames=str_replace("'","",$_POST['othernames']);
$FullName=$FirstName.' '.$SurName.' '.$OtherNames;
$Gender=$_POST['gender'];
$Address=str_replace("'","",$_POST['address']);
$DateofBirth=explode("/",$_POST['dateofbirth']);
$DateofBirth=$DateofBirth[2].'/'.$DateofBirth[0].'/'.$DateofBirth[1];
$Email=str_replace("'","",$_POST['email']);
$PhoneNumber=str_replace("'","",$_POST['phonenumber']);
$BiologicalStatus=$_POST['biologicalstatus'];
$GuardianName=str_replace("'","",$_POST['guardianname']);
$GuardianGender=$_POST['guardiangender'];
$GuardianIDType=$_POST['guardianidtype'];
$GuardianIDNumber=str_replace("'","",$_POST['guardianidnumber']);
$GuardianAddress=str_replace("'","",$_POST['guardianaddress']);
$GuardianPhoneNumber=str_replace("'","",$_POST['guardianphonenumber']);
$guardianemail=str_replace("'","",$_POST['guardianemail']);
$RelationshipToChild=str_replace("'","",$_POST['relationshiptochild']);
$DateRegistered=date('Y-m-d');
$PostingAccountNumber=$_POST['postingaccountnumber'];
$Status=$_POST['status'];
Student Information System P a g e 84 of 95
$GurdianOccupation=str_replace("'","",$_POST['guardianoccupation']);
if($query->num_rows==0){
if($conn->query("INSERT INTO
students(InstitutionID,StudentNumber,FirstName,SurName,OtherNames,Gender,Address,Dateof
Birth,BiologicalStatus,GuardianName,GuardianGender,GuardianIDType,GuardianIDNumber,G
uardianAddress,GuardianPhoneNumber,GuardianEmail,RelationshipToChild,DateRegistered,Po
stingAccountNumber,Status,GuardianOccupation,Email,PhoneNumber)
VALUES('$InstitutionID','$StudentNumber','$FirstName','$SurName','$OtherNames','$Gender','
$Address','$DateofBirth','$BiologicalStatus','$GuardianName','$GuardianGender','$GuardianIDT
ype','$GuardianIDNumber','$GuardianAddress','$GuardianPhoneNumber','$guardianemail','$Rel
ationshipToChild','$DateRegistered','$PostingAccountNumber','$Status','$GurdianOccupation','$
Email','$PhoneNumber')")){
#############################################################################
##############
if($conn->query("INSERT INTO
users(InstitutionID,Username,UserCode,Password,UserType,Email,FullName,PhoneNumber,Ge
nder,Blocked)
VALUES('$InstitutionID','$StudentNumber','$StudentNumber','".base64_encode(base64_encode
($StudentNumber))."','Student','$Email','$FullName','$PhoneNumber','$Gender','FALSE')")){
}else{
#############################################################################
##############
}else{
echo '<script>alert("Failed to Save record: - "'.$conn->error.'");</script>';
}
}
else{
echo '<script>alert("The Student Number you have entered Already Exist")</script>';
}
Student Information System P a g e 85 of 95
}
?>
<?php
session_start();
echo '';
include '../config/db_config.php';
$InstitutionID=$_SESSION['InstitutionID'];
$EducationStandardID=$_POST['EducationStandardID'];
$TeacherID=$_POST['TeacherID'];
$ClassID=$_POST['ClassID'];
$SubjectID=$_POST['SubjectID'];
$Day=$_POST['Day'];
$DayNumber=GetWeekDayNumber($Day);
$StartTime=$_POST['StartTime'];
$EndTime=$_POST['EndTime'];
$AcademicPeriodID=$_POST['AcademicPeriodID'];
$EntryType=$_POST['EntryType'];
$ShowDescription='FALSE';
if($EntryType=="Break Time"){
$ShowDescription="TRUE";
$ry=$qry->fetch_array(true);
$ClassName=$ry['ClassName'];
$rs=$DAP->fetch_array(true);
$EducationStandardName=$rs['EducationStandardName'];
if($qryS->num_rows>0){
?>
<?php
}else{
?>
$InstitutionID=$_SESSION['InstitutionID'];
$AssessmentID=$_POST['AssessmentID'];
$EducationStandardID=$_POST['EducationStandardID'];
$ClassID=$_POST['ClassID'];
$SubjectID=$_POST['SubjectID'];
$StudentID=$_POST['StudentID'];
$Marks=number_format($_POST['Marks']);
$Grade='';
$Remarks='';
$ISAbsent='FALSE';
#Assessments Query
$DAP=$conn->query("SELECT*FROM assessments WHERE
AssessmentID='$AssessmentID'");
$rs=$DAP->fetch_array(true);
$SchoolYear=$rs['SchoolYear'];
while($rGrading=$QGrading->fetch_array(true)){
if($conn->query("INSERT INTO
assessmentresults(AssessmentID,InstitutionID,EnrollmentID,StudentID,ClassID,SubjectID,Mark
s,Grade,Remarks,ISAbsent)
VALUES('$AssessmentID','$InstitutionID','$EnrollmentID','$StudentID','$ClassID','$SubjectID',
'$Marks','$Grade','$Remarks','$ISAbsent')")){
//echo 'Student Subject Assessment Results Added Successfully';
}else{
echo 'Failed to Add Student Assessment Results: '.$conn->errno.' - '.$conn->error;
}
?>
Student Information System P a g e 90 of 95
<!----Assessment Results Entry Table will be Displayed Here----------------------------------------->
<table id="example"
class="table table-bordered" cellspacing="0" width="100%">
<thead>
<tr>
<th><input
type="checkbox" onClick="return SelectAll(this);" /></th>
<th>
Subject Name
</th>
<th>Marks</th>
<th>Grade</th>
<th>Remarks</th>
</tr>
</thead>
<tbody>
Student Information System P a g e 91 of 95
<!--------------------Begin Already Entered Subject Marks Part------------------------------------->
<?php
$QSubjectResults=$conn->query("SELECT
`assessmentresults`.`AssessmentResultID`
, `assessmentresults`.`AssessmentID`
, `assessmentresults`.`InstitutionID`
, `assessmentresults`.`EnrollmentID`
, `assessmentresults`.`StudentID`
, `assessmentresults`.`ClassID`
, `assessmentresults`.`SubjectID`
, `assessmentresults`.`Marks`
, `assessmentresults`.`Grade`
, `assessmentresults`.`Remarks`
, `subjects`.`SubjectName`
FROM
`assessmentresults`
INNER JOIN `assessments`
ON (`assessmentresults`.`AssessmentID` = `assessments`.`AssessmentID`)
INNER JOIN `subjects`
ON (`assessmentresults`.`SubjectID` = `subjects`.`SubjectID`)
INNER JOIN `students`
ON (`assessmentresults`.`StudentID` = `students`.`StudentID`)
WHERE `assessmentresults`.`AssessmentID`='$AssessmentID' AND
`assessmentresults`.`StudentID`='$StudentID';");
if($QSubjectResults->num_rows>0){
?>
<tr>
<td><input type="checkbox" name="check[]" value="<?php echo
$rSR['AssessmentResultID']; ?>" id="all" /></td>
<td><?php echo $rSR['SubjectName']; ?></td>
<td><?php echo number_format($rSR['Marks']); ?></td>
<td><?php echo $rSR['Grade']; ?></td>
<td><?php echo $rSR['Remarks']; ?></td>
</tr>
<?php
}
}
?>
<tr>
<td style="width:10px"><input
type="checkbox" name="check[]" style="width:10px" value="" id="all" /></td>
<td style="width:240px">
<select data-placeholder="Select here.." name="subjects" style="width:240px" id="Subjects"
required>
while($FYRows=$QFY->fetch_array(true)){
?>
<option value="<?php echo $FYRows['SubjectID']; ?>"><?php echo
$FYRows['SubjectName']; ?></option>
<?php
}
?>
</select>
</td>
<td
style="width:40px">
<input type="text" style="width:40px" name="marks" id="Marks" />
</td>
<td
style="width:160px"><input type="text" name="grade" id="Grade" readonly
style="background-color:transparent; cursor:inherit; width:160px;" /></td>
Student Information System P a g e 94 of 95
<td><input type="text" name="remarksentry" id="RemarksEntry" readonly style="background-
color:transparent; cursor:inherit;" /></td>
</tr>
</tbody>
</table>
</div>
<!-------------------------------------------------------------------------------------------------->
<?php
}else{
echo '';
}
?>