Our proposed web-based Questions Sharing and Interactive Assignments system mainly focuses
on the current primary school education system.
This is a web-based system that will not only help in keeping pupil`s records, the system is also
intended at helping the teachers to assess pupil’s performance in a more effective way, help pupils keep track of their progress and see which areas they ought to improve in
1. THE COPPERBELT UNIVERSITY
SCHOOL OF MATHEMATICS AND NATURAL SCIENCES
GROUP PROJECT TITLE: INTERACTIVE ONLINE ASSESSMENT SYSTEM
SUMBMITTED IN PARTIAL FULFILLMENT FOR THE AWARD OF A BACHELOR OF
SCIENCE IN COMPUTER SCIENCE.
COURSE NAME: PROJECT MANAGEMENT
COURSE CODE: CS 301
SUPERVISOR: MR. SHUMBA
PROJECT COORDINATOR: MR. MUMBA
PROGRAM: BSc COMPUTER SCIENCE
YEAR OF STUDY: 3
GROUP MEMBERS:
DANIEL NG’ANDU 14268088
MUSIALIKE MAKENA 14331851
MELVIN MALAYA 13053584
ANDREW SAPANOI 14462877
2. II
ABSTRACT
Virtual education and online examinations are an emerging concept. Here the tests are not taken
on paper in a classroom but through an electronic medium as a substitute. In this case a web page
will contain test questions and course material.
This type of learning and taking of examinations online are gaining importance every day and
very soon they are going to be an integral part of our world, the academic world.
Taking up these virtual tests through an electronic medium is termed as E-Learning. Today E-
Learning is no more a technical word that only a few people know. It is turning to be a part of
everyone's life whether a student, employee or a housewife, all tend to use E-Learning in one
way or another. Larger organizations such as universities, are turning towards E-Learning
solution for providing training digitally. This means less money spent on equipping various
departments with realms of paper and printing machines. This also has a positive impact on the
environment, as it means fewer tress are cut down for the purposes of paper production.
As the number of Internet access points are growing rapidly in Zambia and around the world, E-
Learning is also gaining a new peak. This electronic medium serves best for dissemination of
information. E-Learning is proving itself as a boon for students/pupils especially for the disabled
who are not able to go and attend the classes.
3. III
DECLARATION
We hereby declare that this project is our work and that to the best of our knowledge and belief.
It contains no material previously published or written by another person except where due
acknowledgement is made.
PARTICICIPANTS SIGNATURE DATE
1. DANIEL NG’ANDU ………………… …………………
2. MUSIALIKE MAKENA ………………… ………………….
3.MELVIN MALAYA ………………… …………………..
4. ANDREW SAPANOI ………………… …………………..
SUPERVISOR: MR. SHUMBA DATE
Signature………………………… …………………
5. V
ACKNOWLEDGEMENTS
Our deepest gratitude goes to God who has provided all that was needed to complete this project.
There was never lack or want. Throughout this entire study, He strengthened us even through
most difficult times.
Mr. Shumba has been the ideal thesis supervisor. His sage advice, insightful criticisms, and
patient encouragement aided the writing of this thesis in innumerable ways. I would also like to
thank Mr. Mumba whose steadfast support and guidance of this project was greatly needed and
deeply appreciated.
We also appreciate the government of the republic of Zambia for the financial assistance
rendered to us to complete this project.
6. VI
Table of Contents
1. CHAPTER ONE...........................................................................................1
INTRODUCTION .....................................................................................................1
1.1. INTRODUCTION........................................................................................2
1.2. PROBLEM STATEMENT ..........................................................................2
1.3. PROPOSED SYSTEM.................................................................................2
1.4. OBJECTIVES...............................................................................................3
1.5. PROJECT SCOPE........................................................................................3
1.6. METHODOLOGY.......................................................................................3
2. CHAPTER TWO..........................................................................................5
LITERATURE REVIEW ..........................................................................................5
2.1. INTRODUCTION........................................................................................6
2.2. EXISTING SYSTEMS.................................................................................6
2.2.1. Questions Sharing and Interactive Assignments (QSIA) .............................6
2.2.2. Modular object-oriented dynamic learning environment (Moodle).............8
2.2.3. E-Homebook System (EHS).........................................................................8
2.2.4. EduWare........................................................................................................8
3. CHAPTER THREE....................................................................................10
REQUIREMENTS SPECIFICATION....................................................................10
3.1. INTRODUCTION......................................................................................11
3.2. SCOPE AND OBJECTIVE........................................................................11
3.3. BENEFITS AND OBJECTIVES OF PROPOSED SYSTEM...................11
3.4. FUNCTIONAL REQUIREMENTS...........................................................11
3.4.1. Input ...........................................................................................................11
3.4.2. Processing ..................................................................................................11
3.4.3. Storage .......................................................................................................12
3.4.4. Output.........................................................................................................12
7. VII
3.5. NON-FUNCTIONAL REQUIREMENTS ................................................12
3.5.1. HARDWARE.............................................................................................12
3.5.2. SOFTWARE..............................................................................................12
4. CHAPTER FOUR ......................................................................................13
DESIGN SPECIFICATION ....................................................................................13
4.1. INTRODUCTION......................................................................................14
4.2. ARCHITECTURAL DESIGN...................................................................14
4.3. DATA DESIGN .........................................................................................15
4.4. APPLICATION DESIGN ..........................................................................19
4.4.1. Logic Design...............................................................................................19
4.4.2. HIERARCHICAL INPUT PROCESS OUTPUT DIAGRAM (HIPO) .....20
4.5. USER INTERFACE DESIGN ...................................................................20
4.6. SECURITY DESIGN.................................................................................22
5. CHAPTER FIVE........................................................................................23
IMPLEMENTATION..............................................................................................23
5.1. INTRODUCTION......................................................................................24
5.2. IMPLEMENTATION TOOLS ..................................................................24
5.2.1. Hardware....................................................................................................24
5.2.2. Software .....................................................................................................24
6. CHAPTER SIX...........................................................................................26
SYSTEM EVALUATION AND TESTING ...........................................................26
6.1. INTRODUCTION.....................................................................................27
6.2. PURPOSE OF TESTING..........................................................................27
6.3. TESTING CRITERIA...............................................................................27
6.3.1. UNIT TESTING ........................................................................................27
6.3.2. INTEGRATION TESTING.......................................................................42
6.3.3. SYSTEM TESTING ..................................................................................42
8. VIII
7. CHAPTER SEVEN...................................................................................43
CONCLUSION AND RECOMMENDATIONS ....................................................43
7.1. CONCLUSION .........................................................................................44
7.2. RECOMMENDATION.............................................................................44
8. REFERENCE ............................................................................................45
References................................................................................................................46
9. APPENDICES...........................................................................................47
9.1. APPENDIX I.............................................................................................48
9.1.1. PROJECT PROPOSAL .............................................................................48
9.1.1.1. INTRODUCTION .....................................................................................48
9.1.1.2. PROBLEM STATEMENT........................................................................48
9.1.1.3. THE PROPOSED SYSTEM .....................................................................48
9.1.1.4. BENEFITS OF THE PROPOSED SYSTEM............................................48
9.1.2. COMPONENT ACTIVITIES OF THE PROJECT...................................48
9.1.2.1. Meetings with supervisor...........................................................................48
9.1.2.2. Collection of Data......................................................................................49
9.1.2.3. Draft of Requirements Specification Document........................................49
9.1.2.4. Project Design............................................................................................49
9.1.2.5. Project Development..................................................................................49
9.1.2.6. Software Testing ........................................................................................49
9.1.2.7. License Agreement ....................................................................................49
9.1.2.8. Quality Assurance......................................................................................49
9.1.2.9. Acceptance Testing....................................................................................49
9.1.2.10.Handover of Product to Client...................................................................49
9.1.3. BUDGET....................................................................................................50
9.1.4. MILESTONES ...........................................................................................50
9.1.5. GANTT CHART........................................................................................51
9. IX
9.2. APPENDIX II.............................................................................................52
9.2.1. USER MANUAL.......................................................................................52
INTRODUCTION ...................................................................................................52
HOW TO INSTALL THE SYSTEM ......................................................................52
USING THE SYSTEM............................................................................................52
9.3. APPENDIX III ...........................................................................................59
SAMPLE CODE......................................................................................................59
11. 2
1.1. INTRODUCTION
What is e-learning? [1]
Quite simply, e-learning is electronic learning, and typically this means using a computer to
deliver part, or all of a course whether it's in a school, part of your mandatory business training
or a full distance learning course (http://www.virtual-college.co.uk/elearning/elearning.aspx.).
In the early days it received a bad press, as many people thought bringing computers into the
classroom would remove that human element that some learners need, but as time has progressed
technology has developed, and now we embrace smartphones and tablets in the classroom and
office, as well as using a wealth of interactive designs that makes distance learning not only
engaging for the users, but valuable as a lesson delivery medium.
The introduction of ICT (Information and communicational technology) in most primary schools
in Zambia and across the world has made it easy to share information on the wide world web
regardless of location.
The current case with most institutions of learning is the lack funds to buy papers and ink needed
to print out examination papers and handouts for pupils, thus causing inconveniences to the
current learning process, and also when the papers are used to write tests, there are not properly
disposed of thus posing an environmental pollution when the papers are burnt.
In the case of The Copperbelt University (C.B.U) last academic year, most departments had no
paper and ink to prepare examinations papers when the time for examinations drew near.
1.2. PROBLEM STATEMENT
According to our preliminary research we discovered that the old way of conducting
examinations has a negative impact on the environment due to the unnecessary usage of paper as
it means that trees are cut down to produce paper, which can lead to global warming and
ultimately desertification. The unnecessary burning of paper after pupils write their exams or
finish reading their handouts can cause damage to the ozone layer.
And it has been noticed that the cost of conducting examinations is high due to buying of paper,
ink and printing machines.
1.3. PROPOSED SYSTEM
Our proposed web based Questions Sharing and Interactive Assignments system mainly focuses
on the current primary school education system.
This is a web based system that will not only help in keeping pupil`s records, the system is also
intended at helping the teachers to assess pupil’s performance in a more effective way, help
pupil`s keep track of their progress and see which areas they ought to improve in.
12. 3
1.4. OBJECTIVES
Objectives of the proposed system include:
1. Be able to record pupil’s details.
2. Be able to assess the pupil`s comprehension through tests.
3. System will be able to grade pupil’s performance immediately and give detailed
feedback.
4. System will be able to give pupils feedback from correct or wrong answers.
5. Online tests can be more accessible to pupils with disabilities i.e. blindness who have
assistive technologies built into their computers than handwritten tests are.
6. System should be able to save time between publication of results and marking of tests by
teachers.
1.5. PROJECT SCOPE
This project was developed in phases, first we developed a website that is user friendly using
HTML and CSS, we used CSS3 for styling our pages. Then PHP (hypertext preprocessor) was
used to create dynamic content on web pages and to interact with the database containing pupil`s
records.
This system is only available online.
1.6. METHODOLOGY
DATA COLLECTION
Data collection methods will include;
INTERVIEWS
Interviews, among many other methods used to collect data verbally, are a powerful tool as they
give chance to get clarity and avoid possible misunderstandings between the interviewee and the
interviewer. They were used for this reason and because it is often easier to schedule an
interview with upper management than to have them, say, complete a questionnaire and because
they are people who are not able to express themselves well in writing but can express their
concerns in detail verbally.
We interviewed management, and pupils at various primary schools in Kitwe on the challenges
they face with the current system being used in primary schools of writing tests on paper, and
printing costs for those preparing exams.
PROGRAMMING LANGUAGES & TOOLS
Since our proposed system is a web based system and it includes a database, the programming
languages we used to achieve this include;
13. 4
HTML5 & CSS
Html (hypertext markup language) is a standard markup language that we used to create web
pages, we also used it to create user input fields such as student registration forms. We used
CSS3 for styling our pages. CSS stands for cascading style sheets. preferred integrated
development environment(IDE) we choose for HTML5 is notepad++.
PHP
PHP (hypertext preprocessor) is one of the many server-side scripting languages. We used it to
create dynamic content on web pages and to interact with the database containing pupil`s
records.
We found it is easy to learn, and it has an extensive documentation tool called the manual.
Preferred integrated development environment(IDE) to be used to write our PHP code will be
notepad++, Eclipse and NetBeans.
MYSQL
MySQL (Structured Query Language (SQL) a standard language used for relational database
programming. This has become one of the widest used and powerful databases around. It was
used because it interacts well with PHP. Preferred integrated development environment(IDE) to
be used to write our database was Microsoft Access.
16. 7
QSIA focuses on knowledge sharing among participants, while maintaining a secure and
private working environment. One of QSIA s sub-tasks is matching mates: the capability to
make matches among recommenders and those seeking recommendations. Sharing
knowledge via QSIA includes three aspects: Uploading knowledge items. Composing a
question and allowing others to use it. QSIA has four different access levels: private (opened
only to the owner), personal (opened to a selected set of users), partial (opened only to a
selected set of learning groups) or public (opened to everybody). In each of these levels, the
user can choose to restrict the access to a specific role (teachers, for example).
Ranking knowledge items. Answering a question and then ranking it on a scale of 1–5, so
others could benefit from one’s professional opinion and recommendations. Receiving
recommendations. Looking at the average rank other participants (instructors or students)
provided for a certain question. Thus, every user can benefit from the expertise of others. The
recommendation system enables instructors and students to get targeted suggestions
of knowledge items [4].
QSIA offers new prospects for individual assessment based on computerized follow-up and
monitoring of the individual answering path chosen by each student. The QSIA online
assessment activities are called assignments and have a number of applications. QSIA
assignments can be seen both as a formal and informal evaluation of the students’
knowledge. The formal evaluation is carried out by a quiz given to the students
simultaneously but not necessarily in the same place. The informal evaluation is represented
by self-tests students
can carry out any time and any place for detecting their difficulties and misunderstanding.
QSIA assignments can be reviewed by the instructor before distribution to the students. If
there are no computer facilities, a hard copy of the assignments can be printed or exported to
common word processor formats. When administered online, the instructor can monitor the
progress of the students, according to parameters such as number of questions answered and
more. The system allows the instructor to choose between several grading strategies, which
may be added dynamically to the system in runtime. Instructors can view and analyse the
grades of the students, according to three parameters: students, assignments or knowledge
item. Furthermore, the system offers aggregate reports [4].
The educational line of work produces massive learning materials for both instructors and
students. After years of learning and teaching, educators possess valuable lectures, working
sheets, written projects, exercises, assignments and more. Scholars often have trouble
organizing their papers, files and folders. Valuable psychometric history pertaining to items
and their quality often gets lost in the shuffle. QSIA helps solve this problem. QSIA allows
managing educational content using folders, search facility and editing tools. It enables users
to create and manage a set of folders that includes all of the content owned by them. The
folders allow users to manage their content s properties using centralized and time-saving
methods. Content such as knowledge items, created by the QSIA user, can be indexed under
a certain discipline. The list of personalized knowledge areas can be used afterwards in order
17. 8
to retrieve the contents. The system keeps a list of disciplines or personalized knowledge
areas suited for each user. Since QSIA is an online system, users can retrieve their personal
educational contents any time and any place providing there is a computer with a connection
to the Internet [4].
2.2.2. Modular object-oriented dynamic learning environment (Moodle)
This is a free and open-source software learning management system written in PHP and
distributed under the GNU General Public License. Developed on pedagogical principles,
Moodle is used for blended learning, distance education, flipped classroom and other e-learning
projects in schools, universities, workplaces and other sectors. With customizable management
features, it is used to create private websites with online courses for educators and trainers to
achieve learning goals. Moodle (acronym for modular object-oriented dynamic learning
environment) allows for extending and tailoring learning environments using community sourced
plugins
2.2.3. E-Homebook System (EHS)
This is web-based interactive education interface. E-Homebook System (EHS) has agents which
provide a teacher–parent–student communication interface through Internet. The EHS comprises
intelligent agents: interaction agent, instruction agent, information agent, evaluation agent and
log agent. The agents manage a learning portfolio conception, observe and record students e-
learning behaviour through the web log, and provide teachers a reference of portfolio
information. The agents adopt a trigger function to analyse the students learning behaviour from
Internet as well as from classroom, evaluate overall performance, then send an e-mail messages
automatically to the teachers and parents to guide and assist the students who need to revise their
learning attitude. Similarly, the agents will record parent’s participation portfolio, then teachers
may draft better communication strategy. The EHS provides a better communication role
between students–parents–teachers, implements an integrated performance measurement
method, and conducts a better teaching strategy support interface for elementary education.
2.2.4. EduWare
EduWare school management software is an online system that has been specially designed to
maintain all the records of school or educational institutions. EduWare software helps to
maintain all the administrative and financial activities of the school. It provides paperless
management and easy management of students, staff and school records [5].
Functionalities and benefits:
Trustee or head of the educational institution can check the reports of fees collection and
daily money transaction reports from anywhere.
Teachers can upload the marks with editing facility anytime from anywhere.
Management can check the attendance report of staff and students from any place.
Multiple branches can be managed.
No limitation of the data storage.
Data stores on web.
18. 9
Bulk SMS facility available.
Attendance, exam and result management in easy way.
Staff can easily access any information about the student from anywhere
20. 11
3.1. INTRODUCTION
The System is intended to be an online system for primary school pupils in Zambia. Many
systems fail because they do not meet the requirements of the intended users. This document
seeks to deliver in detail the requirements specifications, which includes the features and
functionality of the proposed system. This chapter outlines the operations of the required system,
inputs, outputs, hardware and software required to develop the system. It basically sets out the
user requirements as gathered during the requirements elicitation stage. The document highlights
how the proposed system is expected to operate by describing both functional and non-functional
requirements.
3.2. SCOPE AND OBJECTIVE
This project was developed in phases, first we developed a website that is user friendly using
HTML and CSS, we used CSS3 for styling our pages. Then PHP (hypertext preprocessor) was
used to create dynamic content on web pages and to interact with the database containing pupil`s
records. This system is only available online.
3.3. BENEFITS AND OBJECTIVES OF PROPOSED SYSTEM
Objectives of the proposed system include:
Be able to record pupil’s details.
Be able to assess the pupil`s comprehension through tests.
System will be able to grade pupil’s performance immediately and give detailed
feedback.
System will be able to give pupils feedback from correct or wrong answers.
Online tests can be more accessible to pupils with disabilities i.e. blindness who have
assistive technologies built into their computers than handwritten tests are.
System should be able to save time between publication of results and marking of tests by
teachers.
3.4. FUNCTIONAL REQUIREMENTS
3.4.1. Input
All the inputs from the user is via keyboard input and mouse point click. The user navigates the
website by clicking on the icons and links. The icons give appropriate response to the given
input. The following are inputs the system will receive:
Uploading of course material and assignments.
Entering pupil’s assessment results.
Receiving user choice from a list of possible answers.
Adding of questions and answers to the database by system administrators.
Adding and deleting users.
3.4.2. Processing
Processing of the system refers to the operations performed on data entered into the system to
generate output such as:
Calculating C.A(Continuous Assessment).
21. 12
Update student’s records.
Sorting of pupils marks from the highest to the lowest.
Modification of pupils details
3.4.3. Storage
Data and all the files are stored on a database system. In addition, other important information
such as administrator username and password is stored on a database as well as that of other
local users such pupils.
3.4.4. Output
Show pupil’s details.
Produce results.
Produce class reports to the teacher.
Show search results of pupils ‘details by use of I.D (identification).
Should generate and display pupil’s performance.
3.5. NON-FUNCTIONAL REQUIREMENTS
These are the constraints on the services or functions offered by the system.
3.5.1. HARDWARE
The minimum hardware requirements are:
Processor
Computer with a 600 MHz or faster processor (1 GHz or higher recommended)
RAM
Minimum: 256 MB
Recommended: 512 MB
Keyboard and mouse
A mouse was needed for the manipulation of Graphical User Interface and keyboard for input.
Monitor
A suitably sized monitor (preferably 14-inch or larger) was required for screen output.
3.5.2. SOFTWARE
The minimum hardware requirements
An operating system (Windows 7 or Later version)
PHP and MYSQL server (XAMPP, WAMP)
Any web browser (Opera, Mozilla FireFox, Google, Internet Explorer)
23. 14
4.1. INTRODUCTION
This chapter has evolved out of the Requirements Specification preceding it. It outlines the
design of how the proposed system will be implemented. The design specification document
bridges the gap between Systems requirements and implementation of a system that satisfies
those systems’ requirements. [6]
The Design outlined in this document will describe:
1. Architectural Design
This is to do with how the physical components of the system are arranged and resources
accessed by the clients.
2. Data Design
Data designs is concerned with data that our system used. This mainly involves database
design which is illustrated using entity-relationship(ER) diagrams and tables that result
from the data.
3. Interface Design
This is to do with how the system appeared to the user.
4. Security Design
This is to do with how the system is secured and protected from unauthorized access.
4.2. ARCHITECTURAL DESIGN
This section shows the structure of how the hardware components are arranged. The system
utilizes client/server architecture as shown below. Client server is a program relationship in
which one program (the client) requests a service or resource from another program (the server).
In this case the client is the web browser of the user which requests a service which are the web
pages of the system from the server on which the system is hosted. The system’s database was
implemented as software on the server.
24. 15
Figure 1:showing the client server architecture
4.3. DATA DESIGN
This section shows E-R (Entity Relational) diagrams. It also gives a structural specification
consisting of a description of files and data types.
How Data is used in the database is illustrated using entity relationship diagrams and tables.
4.3.1. Entity Relation Schema
Pupil (Pupil-id, Pupuil_name, gender, Address)
Teacher (Teacher-id, Teacher_name, Phone_No, Email-address, address)
Subject (Subject-id, name)
Class (class-id, class_teacher)
Test (test-id, results)
Exercise (exercise-id)
25. 16
4.3.2. ENTITY RELATION DIAGRAM
PUPIL
TEACHER
grade
CLASS
EXERCISESUBJECT has
TEST
has
takes
takes
has
Pupil-id
Class-id
Exercise-id
-id
Test-id
-id
26. 17
KEY
Entity Relationship Entity type
Attribute
One to one relationship
One to many relationships
Optional association
Figure 2 showing entity relation diagram
4.3.3. DATABASE TABLES
The following are the data tables derived from the entity relationship diagram showing the fields,
their data types, size and description of each fields.
4.3.3.1. Pupil’s table
FIELD NAME DATA TYPE SIZE DESCRIPTION
Pupil-id Integer 10 Primary key uniquely identifies a pupil.
First-name Varchar 20 The first name of the pupil.
Last-name Varchar 20 The last name of the pupil.
Gender Enum The gender of pupil.
Class-id Varchar 8 Foreign key identifies the class the pupil belongs.
Address Varchar 30 The address of the pupil.
4.3.3.2. Teachers table
FIELD
NAME
DATA
TYPE
SIZE DESCRIPTION
Teacher-id Integer 10 Primary key uniquely identifies a teacher.
First-name Varchar 20 The first name of the teacher.
Last-name Varchar 20 The last name of the teacher.
E-mail Varchar 60 The working e-mail address of the teacher
Address Varchar 30 The address of the teacher
Subject-id Varchar 10 Foreign key identifies the subject the teacher teaches
Class-id Varchar 8 Foreign key identifies the class the teacher supervises.
27. 18
4.3.3.3. Subject table
FIELD NAME DATA
TYPE
SIZE DESCRIPTION
test_id Int 100
test_questions Varchar 100 The first name of the pupil.
option_A Varchar 100
option_B Varchar 100
option_C Varchar 100
question_answer Varchar 100
test_name Varchar 30
teacher_id Varchar 11
subject_id Varchar 11 Primary key a subject.
4.3.3.4. Class table
FIELD
NAME
DATA
TYPE
SIZE DESCRIPTION
Class-id Integer 10 Primary key uniquely identifies a class.
Teacher-id Integer 10 Foreign key that identifies the teacher that supervises the
class.
Subject-id Integer 10 Foreign key that identifies the subjects the class has.
4.3.3.5. Test table
FIELD
NAME
DATA
TYPE
SIZE DESCRIPTION
Test-id Integer 10 Primary key uniquely identifies a test.
Teacher-id Integer 10 Foreign key identifies a teacher who prepares the test.
Subject-id Integer 10 Foreign key that identifies the subjects in which the test is
given.
Results Double 4 The marks obtained by the pupil.
4.3.3.6. Exercise table
FIELD
NAME
DATA
TYPE
SIZE DESCRIPTION
Exercise-id Integer 10 Primary key uniquely identifies an exercise.
28. 19
Teacher-id Varchar 20 Foreign key identifies a teacher who prepares the exercise.
Subject-id Integer 10 Foreign key that identifies the subjects in which the exercise
is given.
4.4. APPLICATION DESIGN
4.4.1. Logic Design
The logical design provides the flow of logic in the system. It describes the design of an
application giving the modules to be added and showing how the modules interact to accomplish
the system’s objective or goal. Hierarchical Input Process Output (HIPO) diagrams is used for
the architecture design of the Interactive Online eLearning and Assessment System. Figure
below shows a decomposition of the system into respective modules.
The following are the modules and their description:
4.4.1.1. User Login Module
This module allowed users (Pupils, and Teachers) including the systems Administrator to log
into the system. It provided the users an interface to input their passwords and usernames. This
module established a connection and was able to inform the user. Because the technology for
distribution of the system is the web, the transport layer protocol that was used for this is the
Hypertext Transfer (or Transport) Protocol (HTTP).
4.4.1.2. Main Menu Module
This module displayed all the necessary categories upon logging in and it controls all processing.
Invokes programs to handle data entry.
4.4.1.3. Add User Module
This module is invoked by the System Administrator module to create a new user account for a
user. This includes giving each user a username and a password. To create a new user account,
the administrator was required to enter the pupil`s and teacher`s: first names, surnames,
identification numbers, gender, class, physical address and phone numbers.
4.4.1.4. User Logout Module
This module is for ‘Exiting’ or leaving the system; it leads to shutting down or closing of the
system. It will be invoked to logout from the various panels logged into (i.e., administrator, pupil
or teacher).
4.4.1.5. System Administrator Module
This module triggered the addition and deletion of various user accounts in the system. It is
therefore, a function meant for the System Administrator. This particular module also enabled all
Administrator Module Staff to keep track of all members of staff and all the available resources.
Generation of a report containing summarized information about drugs was also possible with
this module.
29. 20
4.4.1.6. Teacher Module
The following information was required for registration of Teachers: identification number, first
name, surname, phone number, email address, and physical address
4.4.1.7. Pupil Module
The following information was required for registration of pupils: identification number, first
name, surname, gender, physical address.
4.4.1.8. Delete User Module
This module is invoked by the System Administrator module to remove user accounts from the
System.
4.4.1.9. Edit User Module
This module is invoked to edit user details by System Administrator module. Editing user details
include charging the usernames, passwords, granting or denying certain privileges
4.4.2. HIERARCHICAL INPUT PROCESS OUTPUT DIAGRAM (HIPO)
Figure 3 shows the HIPO diagram
4.5. USER INTERFACE DESIGN
This section describes how the user-interface of the main pages of the system appeared like, what
links are present and which input fields are available to the user.
Log in
Student
Notes Tests
Teacher Administrator
Exercises Upload content Edit results View results Add user Delete
user
31. 22
Figure 5 shows home page
4.6. SECURITY DESIGN
Security design generally addresses the questions, how the system avoids unauthorized access,
who was allowed to modify of data in the system`s database, and how this was implemented?
Security on the website was implemented using PHP (Hypertext Pre-processor), security
certificates were used. There were three (3) password levels: one for the administrator(s) and one
for the pupil(s) and the other for the teachers.
The administrator(s) was given privileges to update the database and website.
Password was stored in the database with an MD5 encryption;
MD5 is a one-way encryption technique. The database was protected from SQL (Structured
Query Language) injection by the use of HTML5 entities, these changed any commands inputted
by the user to their representation in character. Each username was required to be unique and so
every user has a different and unique password and username combinations. [7]
33. 24
5.1. INTRODUCTION
From the designs stage, the next step was to carry out the implementation of the system. This
chapter focuses on the tools that were used to implement the design of the system.
Implementation stage of software development is the process of converting a system’s design
specification into an executable system. It specified how the user requirements in the design
specification were satisfied.
This document describes the transition of the classified website into a system and focuses on the
implementation of the Learning System. This review looked at the following objectives:
The system is able to record pupil’s details.
The system is able to give pupil’s feedback from correct or wrong answers in practice
exercises.
The System is able to grade the pupil’s performance immediately after taking a quiz and
give a detailed feedback.
5.2. IMPLEMENTATION TOOLS
A programming tool or Software development tool is a computer program that software
developers use to create, debug, maintain, or otherwise support other programs and applications.
5.2.1. Hardware
Pentium IV Computer with processing speed 1.5 GHz, 1 GB of Ram, 250 GB Hard disk space
was used.
5.2.2. Software
XAMPP
Notepad++
Web Browser (Google Chrome)
5.2.2.1. XAMPP
XAMMP is the most popular PHP development environment.
It is a completely free, easy to install Apache distribution containing MYSQL, PHP and Perl.
The XAMPP open source package has been set up to be incredibly easy to install and to use. [8]
It allows web designers and programmers to test their work on their computers without any
access to the internet.
5.2.2.2. Notepad++
This is an open source code and text editor used for writing code in Hypertext Markup Language
(HTML5), PHP Hypertext Preprocessor (PHP), Cascading Style Sheet (CSS3) and JavaScript
(JS). [9]
34. 25
5.2.2.3. Web Browser
Google Chrome was used as our choice to test or run our PHP, CSS, JS and HTML code on our
localhost.
5.2.3. Mark up and Scripting Programming languages
Hypertext Markup Language (HTML5)
PHP Hypertext Preprocessor (PHP)
My-Structured Query Language(MySQL)
JavaScript
Cascading Style Sheet (CSS)
Bootstrap
5.2.3.1. Hypertext Markup Language (HTML)
HTML is a markup language used for describing web pages [10]. It was used for the creation of
system pages; it was mostly used for creation of user input fields such as the login form, user
registration form, tables for easy display of data.
5.2.3.2. PHP Hypertext Preprocessor (PHP)
PHP is server scripting languages and a powerful tool for making dynamic and interactive web
pages [11]. It was used to create dynamic content on the system and all the interactions with the
database as well as handling all browser requests and sending information across the internet to
the user browser.
5.2.3.3. My-Structured Query Language Improved (MySQLi)
MySQL is a database system used on the web, it uses standard SQL statements, it is database
system that runs on a server and it is free to download and use. [12]
5.2.3.4. JavaScript
JavaScript is the scripting language of the web [13]. It was used for adding some functionality to
the system.
5.2.3.5. Cascading Style Sheet (CSS3)
CSS is style sheet language that describes the presentation of an HTML document. It describes
how elements must be rendered on screen, on paper, or in other media. [14]
CSS was used to design all the systems interfaces.
5.2.4. Bootstrap
Bootstrap is a free front-end framework for faster and easier web development. It includes
HTML and CSS based design templates for typography, forms, buttons, tables, navigation,
modals, image carousels and many other, as well as optional JavaScript plugins. Bootstrap also
gives you the ability to easily create responsive designs. [15]
36. 27
6.1. INTRODUCTION
This chapter describes the criteria used when testing the system. Testing and evaluation simply
outlines the ways in which the system was subjected to different tests in order to determine
whether or not the system performed in accordance with the requirements specified in the
requirement specification document. This was done on the complete integrated system to achieve
the functionality it was set to achieve. Testing provided the opportunity to detect errors and
inconsistency of the system before finally passing it to the users.
6.2. PURPOSE OF TESTING
The main purpose of testing was to ensure that the system was running in an error free
environment. Another objective was to uncover any improper functioning in the system.
Testing is time consuming but it is a vital activity, it is impossible that errors would not be
found in the system during testing. This may be due to incorrect programming,
misunderstanding or omissions of specifications.
The following were the motivations for the test
To check that the requirements of the users were met and that the system adheres to
the user requirements.
To make sure that the system was programmed correctly, that is, the
program logic constituted in the scripts performed the specific function that they
were intended to perform.
6.3. TESTING CRITERIA
Testing of the system was done using the commonly used testing phases which are; Unit testing,
integration testing, and finally System testing. Each of these testing criteria served a vital
purpose to the completion of the System with the aim of exploring the System to detect errors
underlying each layer of testing. At whatever stage and phase of testing the aim was to find
errors and inconsistency in the System.
6.3.1. UNIT TESTING
Unit testing is the testing of individual components or modules of the system. Unit testing was
done on individual modules.
Home page: The homepage is the front page of the website that holds the links and buttons
to different user pages. The user that isn’t logged is able to view what the system offers and
cannot fully interact with the system.
37. 28
Figure 6 showing home page
Create Account Page: This page allows the administrator to fill in the form and submit to the
database. The Administrator fills in the form correctly in order to successfully create an account for
the user and no blank fields can be submitted.
39. 30
$password2 = mysql_real_escape_string($_POST["password2"]);
$address = mysql_real_escape_string($_POST['address']);
$class_id = mysql_real_escape_string($_POST['class_id']);
$gender = mysql_real_escape_string($_POST['gender']);
if($password === $password2){
$Sql = "INSERT INTO `pupil`(`pupil_id`, `user_name`, `first_Name`, `last_Name`, `gender`,
`class_id`, `address`, `password`)
VALUES('','$user_name','$first_name','$last_name','$gender','$class_id','$address','$password')";
//executing above query
$conn->query($Sql);
//setting session variable
$_SESSION['SignUp_success'] = $user_name;
header("location:ViewData.php");
}
elseif(!$password == $password2){
$_SESSION['SignUp_failure'] = 'failure';
header("location:SignUp_page.php");
}
else{
}
}
?>
Login Page: This page allows the users to access their accounts.
The following where the tests carried out on the log in page:
Entering a correct username and password
Attempt to login with an incorrect username or password
Attempt to login with either username or password incorrectly
Attempt to login into the system without providing any login information.
40. 31
Description Expected
results
Actual
Results
Login with correct
details
Login successful Login successful
Login with wrong
details
Login unsuccessful Login unsuccessful
Submitting empty
fields
No blank fields
accepted
No blank fields
accepted
Figure 8 login page
42. 33
Login code for all users
<?php
session_start();
require('connection.php');
if(isset($_POST['login_button']))
{
$user_name = $_POST['user_name'];
$password = $_POST['password'];
$user_name = stripslashes($user_name);
$password = stripslashes($password);
$user_name = mysqli_real_escape_string($conn,$_POST["user_name"]);
$password = mysqli_real_escape_string($conn,$_POST["password"]);
//Query statement for selecting details from database
$Sql = "SELECT * FROM pupil WHERE user_name = '".$user_name."' AND password =
'".$password."' ";
if(!$result = $conn->query($Sql))
{
echo $conn->error;
exit();
}
//else do this
if($result->num_rows == 1)//if num_rows == 1 then it means we have a user with that combo of
username and password
{
//fetching data from db as associative array
while($row=$result->fetch_assoc()){
//setting our SESSION variables
$_SESSION['login_success'] = $user_name;
43. 34
$_SESSION['id'] = $row['pupil_id'];
$_SESSION['name'] = $row['user_name'];
}
header("location:student.php");
}
else {
//if num_rows == 0 then we have no user with that username and password combo
$_SESSION['login_failure'] = "failure";
header("location:LoginPage_student.php");
}
}
?>
Viewing pupil’s page: This allows the Administrator to view all registered pupils, edit their
details and deleting them from the system
Figure 11 viewing pupil's in the system
View pupil’s code
<?php
session_start();
require('connection.php');
if(isset($_SESSION['connect_error'])){
echo ‘
<div class = "container">
47. 38
?>
</div>
</div>
</body>
</html>
Editing pupils code
<?php
// connect to the database
include('connection.php');
// check if the form has been submitted. If it has, start to process the form and save it to the
database
if(isset($_POST['submit'])){
// get form data, making sure it is valid
$pupil_id = $_GET['id'];
$username = mysqli_real_escape_string($conn, htmlspecialchars($_POST['user_name']));
$firstname = mysqli_real_escape_string($conn, htmlspecialchars($_POST['fname']));
$lastname = mysqli_real_escape_string($conn, htmlspecialchars($_POST['lname']));
$old_password = mysqli_real_escape_string($conn, htmlspecialchars($_POST['pwd1']));
$new_password = mysqli_real_escape_string($conn, htmlspecialchars($_POST['pwd2']));
$class_id = mysqli_real_escape_string($conn, htmlspecialchars($_POST['class_id']));
$gender = mysqli_real_escape_string($conn, htmlspecialchars($_POST['gender']));
$address = mysqli_real_escape_string($conn, htmlspecialchars($_POST['address']));
if(!empty($username)){
$sql = "update pupil set user_name = '$username' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
if(!empty($firstname)){
$sql = "update pupil set first_Name = '$firstname' where pupil_id = '".$pupil_id."'";
48. 39
$update = $conn->query($sql);
}
if(!empty($lastname)){
$sql = "update pupil set last_Name = '$lastname' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
if(!empty($new_password)){
$sql = "update pupil set password = '$new_password' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
if(!empty($class_id)){
$sql = "update pupil set class_id = '$class_id' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
if(!empty($gender)){
$sql = "update pupil set gender = '$gender' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
if(!empty($address)){
$sql = "update pupil set address = '$address' where pupil_id = '".$pupil_id."'";
$update = $conn->query($sql);
}
header("Location: ViewData.php");
}
?>
Exercise and teat pages: This page allows the pupils to take quick exercises and tests in
various subject.
49. 40
Description Expected
result
Actual
Result
Correct answer Calculates score Calculates score
Wrong answer Does not earn you a score Does not earn you a score
Table 1
Figure 12 taking exercise
Quiz code
<script type="text/javascript">
//Set number of questions
var numQuest=6;
var ie=document.all
function showAnswer(el,ans){
ie? ie[el].innerHTML='The answer is: '+ ans : document.getElementById(el).innerHTML='The
answer is: '+ ans
}
function addup() {
var q, right, statement, total=0
questions=new Array();
for (i = 0; i < numQuest; i++)
questions[i]=0
50. 41
if (document.forms.quiz.q1['right1']){
for (i = 0; i < numQuest; i++){
q="q"+(i+1)
right="right"+(i+1)
if (document.forms.quiz[q][right].checked)
questions[i]=1
}
}
else if (document.getElementById){
for (i = 0; i < numQuest; i++){
right="right"+(i+1)
if (document.getElementById(right).checked)
questions[i]=1
}
}
else
return;
for (i = 0; i < numQuest; i++)
total += questions[i]
//Set score response below.
statement='You scored '+ total +' out of '+ numQuest +' correct, '+
Math.round(total/numQuest*100) +'%'
ie? ie.results.innerHTML=statement :
document.getElementById('results').innerHTML=statement
}
function clearR(){
ie? ie.results.innerHTML='' : document.getElementById('results').innerHTML=''
for (i = 0; i < numQuest; i++)
51. 42
ie? ie["ans"+(i+1)].innerHTML='' : document.getElementById("ans"+(i+1)).innerHTML=''
}
</script>
6.3.2. INTEGRATION TESTING
After coding all the modules, each module underwent unit testing which is performed on
individual modules to test program logic focusing on each unit of code. After testing, all the
errors that were detected were corrected. In testing the modules of the system, all modules were
connected to the database and all the unit requests of that module were tested and executed.
6.3.3. SYSTEM TESTING
This is the testing conducted on a complete system to evaluate the system’s compliance with the
specified requirements. The main aim of this test was to test for the compatibility of the modules
making up the system. Other reasons for the system testing included testing to assess whether the
system will cope with mainstream data and conditions, checking the system’s performance
behavior that is, checking how long the system will take to execute certain tasks. System testing
also tests the system to see how it handles errors and recovers from them. System testing falls
within the scope of black box testing, and as such, should require no knowledge of the inner
design of the code or logic.
53. 44
7.1. CONCLUSION
Our system mainly concentrates on the Zambian primary school education system. The system
was designed based on the requirements specifications. The system is able to record pupil’s
details and assess them on tests and exercises they take. It is also able to give immediate
feedback to pupil’s after taking a test or exercise.
The system saves time between marking and publication on results by giving immediate
feedback.
7.2. RECOMMENDATION
Being an E-learning system, the system should be able to support one word answers and essay
type of questions.
55. 46
References
[1] "www.virtual-college.co.uk," [Online]. Available: http://www.virtual-
college.co.uk/elearning/elearning.aspx. [Accessed 12 october 2016].
[2] J. H. E Pollard, Exploring e-learning, The Institute for Employement Studies, 2001.
[3] M. B. Y. D.-G. E. T. Sheizaf Rafaeli, "QSIA-a Web_based environment for learning, assessing and
knowledge sharing communities," 10 October 2005. [Online]. Available:
http://www.researchgate.net/publication/223869968. [Accessed 18 October 2016].
[4] M. B. Y. D.-G. E. T. Sheizaf Rafaeli *, "QSIA-a Web-based environment for learning, assessing and
knowledge sharing in communities," 10 October 2005. [Online]. Available:
https://www.researchgate.net/publication/223869968. [Accessed 18 October 2016].
[5] "School Management Software, eduWare School Software, Web portal and Mobile Applications,"
[Online]. Available: http://onlineschoolsoftware.jimbo.com/. [Accessed 2016].
[6] Notes of Guidance on Computer Science Project Deliverables.
[7] "w3shools.com," [Online]. Available: http://w3schools.com.
[8] "apachefriends.org," [Online]. Available: http://www.apachefriends.org/index.html.
[9] "notepad-plus-plus.org," [Online]. Available: http://notepad-plus-plus.org.
[10] "w3schools.com," [Online]. Available: http://www.w3schools.com/html/html_intro.html.
[11] "w3schools.com," [Online]. Available: http://www.w3schools.com/php/default.html.
[12] "w3schools.com," [Online]. Available: http://www.w3schools.com/php/php_mysql-intro.html.
[13] "w3schools.com," [Online]. Available: http://www.w3schools.com/js/default.html.
[14] "w3schools.com," [Online]. Available: http://w3schools.com/css/default.html.
[15] "w3schools.com," [Online]. Available: http://w3schools.com/bootstrap/default.html.
[16] C. Y. C.-s. C. Hsi-mei Chen, 13 5 2005. [Online]. Available: www.elsevier.com/locate/compedu.
[Accessed 2016].
[17] "School Management Software, eduWare School Software, Web Portal And Mobile Applications,"
[Online]. Available: http://onlineschoolsoftware.jimbo.com/. [Accessed 2016].
57. 48
9.1. APPENDIX I
9.1.1. PROJECT PROPOSAL
9.1.1.1. INTRODUCTION
E-learning is electronic learning, and typically this means using a computer to deliver part, or all
of a course whether it's in a school, part of your mandatory business training or a full distance
learning course (http://www.virtual-college.co.uk/elearning/elearning.aspx.).
The system proposed in this document provides a Question Sharing and Interactive system that
will enable pupils to take tests online unlike the current way of taking tests.
9.1.1.2. PROBLEM STATEMENT
Currently there are no e-learning systems dedicated to primary schools in Zambia, and so;
It is costly to conduct tests due to the high prices of paper, ink and printing machines.
There is no paper way of disposing of test paper and usually pupils burn the test
papers which can cause damage to the ozone layer.
9.1.1.3. THE PROPOSED SYSTEM
This document proposes to design a web based Questions Sharing and Interactive Assignments
system that will mainly focus on the current primary education system in Zambia.
The system will not only help in keeping pupil’s records, the system is also intended at helping
the teachers assess pupil’s performance in a more effective way, help pupil’s keep track of their
progress and see which areas they ought to improve in.
9.1.1.4. BENEFITS OF THE PROPOSED SYSTEM
The proposed system was able to:
Let teachers to enhance the content and delivery of their subject matter through uploading
of materials on the site.
Automatically grade responses, saving time for the instructor and providing more detailed
feedback to pupil’s.
Let pupils have access to study materials from any location and on any device.
Save time because results will be automatically and instantly calculated and
communicated to both pupils and teachers.
9.1.2. COMPONENT ACTIVITIES OF THE PROJECT
This project has the following components:
9.1.2.1. Meetings with supervisor
Frequent weekly meetings with the supervisor were conducted so as to seek guidance and
clarification on how the project should was to be done and to report on the milestones achieved.
58. 49
9.1.2.2. Collection of Data
Data collection was done through research via the Internet; existing successful classified e-
learning systems were studied to learn how best the proposed system can be a success.
9.1.2.3. Draft of Requirements Specification Document
The requirements Specification Documents was derived from existing classified website of
which the supervisor as the client was consulted frequently.
9.1.2.4. Project Design
A projected design was created through the gathering and processing of the collected data
together with the system requirements. Only upon ratification of the project design by the client
was the proposed system moved to the next phase of development.
9.1.2.5. Project Development
Coding of the system began once the Design Specifications Document and project design have
been approved.
9.1.2.6. Software Testing
The different elements of the system were tested as components and also as an integrated whole,
to see how the system would operate when used by the intended users.
9.1.2.7. License Agreement
A license agreement document was prepared that will outlined the terms and conditions of use of
the system, of which when the user goes beyond or faults these terms and conditions the
administrators was given the right to delete the user’s advert and suspend the user. Users were
required to read through and accept the terms and conditions before being able to participate in
the system.
9.1.2.8. Quality Assurance
The review of the system and related documentation for completeness, correctness, reliability
and maintainability, was done after the entire system was complete.
9.1.2.9. Acceptance Testing
The final integrated system was tested with the supervisor before handing it over. This was done
to ensure that the developed system is functioning as expected meets the system requirements.
9.1.2.10. Handover of Product to Client
All relevant documents and the final product was submitted to the supervisor as the client. The
submitted product included all adjustments made and components that were added after
acceptance testing. This activity will be marked the end of the project.
59. 50
9.1.3. BUDGET
Below are the proposed approximations of costs for the successful completion of the project:
ITEMS QUANTITY COSTS(K)
Transport 8 Trips 350
Internet 40GB 1000
Printing 10 Documents 250
Incidental costs
Total: 2,500
9.1.4. MILESTONES
The following have been outlined as project milestones and therefore critical to the whole project
being delivered to the client on time.
Table of Milestones
Activity Date For Deadline
1.Approved Project Proposal 11th
October,2016
2.Approved Literature Review 3rd
November,2016
3.Approved Requirements Specification 11rd
November,2016
4.Approved Design Specification 12th
December,2016
5.Coding And Testing 14th
February,2017
6.Integration of Modules 28th
February,2017
7.Approved Implementation Document 16th
March,2017
8.Acceptance Testing 21st
March, 2017
9.Approved Conclusion Document 23rd
March, 2017
10.Completed Project Report(Spiral Bound) 11th
April,2017
11. Project Submission 28th
May, 2017
60. 51
9.1.5. GANTT CHART
The Gantt chart below shows the project schedule.
Months October November December January February March April
Weeks 1 2 3 4 1 2 3 4 5 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Project proposal
literature review
and Design and
Requirements
Specification
Coding and
Module testing
Integrating and
System Testing
Production of
User Manual
Production of
Installation
Manual
Acceptance
and testing
Documentation
Handover of
Product
61. 52
9.2. APPENDIX II
9.2.1. USER MANUEL
INTRODUCTION
This appendix describes how the system can be used effectively and efficiently by all types of
users. The systems URL which will be used is http://localhost/learningSystem, however if the
system is installed on a remote machine, you will be required to use the actual URL to where the
application is installed.
HOW TO INSTALL THE SYSTEM
Installation of Apache, PHP and MYSQL is one of the most important parts of a running sever
from any machine. These parts can be installed at once by installing XAMPP. For the purpose of
this project the software has been downloaded and together with the root folder for the system in
the installation CD.
To install the system, we first need to install the XAMPP software that will run the web system.
Once you have installed XAMPP and it running, you can add the system to your new web server
by going to “C:xampphtdocs”. This will be where all the web pages of the system will be
located and should be stored.
To open the website, open your internet browser and type in the address of the site and click ‘go’
or press enter. You will be able to view various items on the home page.
USING THE SYSTEM
Connection to the network
The computer should be connected to the serve machine having the system through a network.
Open the web browser on the computer (examples of web browsers: Mozilla Firefox, Internet
explorer, Google Chrome)
Once the browser has been started, the user will have to specify the uniform resource locater
(URL), which points to the address of a specific resource on the website address. Type the
URL in the address slot and press enter or click Go.
63. 54
After pressing enter you will be redirected to the home page.
Figure 14 showing home page
To sign-up, the system administrator registers the users to the system. Users can be
signed-up as teacher or pupil.
64. 55
Figure 15 shows student registration page in administrators view
Users who have been registered to the system to the system can login using the login
credentials which have been given to the by the administrator. If a teacher or pupil wants
to login, he or she can click on the teacher and pupil login link respectively.
When a teach logs in, he or she can upload notes and assignments. The teacher can also
prepare tests.
66. 57
Figure 17 shows teacher page
when the pupil logs in he can select a subject taken by the teacher present at that time or
any subject he wants to go through.
Figure 18showing students view after log in
After choosing a subject the pupil is able to view the subject content, the notes posted by
the teacher, the assignments and take quick exercises. The pupil is also able to take tests
when the teacher prepares one.
70. 61
<div class="col-md-4">
<div class="panel panel-success">
<div class="panel-heading">
<h4><i class="fa fa-fw fa-check"></i> Maths</h4>
</div>
<div class="panel-body">
<p>Graph a two-variable equation,
Classify quadrilaterals, Experimental probabilityProportional relationships, phrases
and clauses,
connotations, climate change, world history, and more....</p>
<a href="LoginPage_student.php" class="btn btn-danger">Learn More</a>
</div>
</div>
</div>
<div class="col-md-4">
<div class="panel panel-success">
<div class="panel-heading">
<h4><i class="fa fa-fw fa-check"></i> Geography</h4>
</div>
<div class="panel-body">
<p> Oceans and Continents,
Foundations of Maya Civilization,
The Age of Exploration: origins, Life as a colonist,
Causes of the American Revolution: the French and Indian War, and more...</p>
<a href="LoginPage_student.php" class="btn btn-danger">Learn More</a>
</div>
</div>
71. 62
</div>
<div class="col-md-4">
<div class="panel panel-success">
<div class="panel-heading">
<h4><i class="fa fa-fw fa-check"></i> Environmental Science</h4>
</div>
<div class="panel-body">
<p>Compare properties of materials,
Identify living and nonliving things,
Identify plants and animals,
Observe and compare traits,
Identify changes to Earth's surface,and many more</p>
<a href="LoginPage_student.php" class="btn btn-danger">Learn More</a>
</div>
</div>
</div>
<div id="footer" style = "color:white;">
<h3 style = "text-decoration:underline; color:white;float:left;">Contact us on:
</h3><br>
<div class="col-md-4 " id = "social-icons">
<ul class="list-inline social-buttons">
<li>
<a href="www.twitter.com">
<img src = "contact_us/Twitter.png" style = "width:50px;height:50px;border-
radius:100%;"/>
</a>
</li>
<li>