Vous êtes sur la page 1sur 99

Addis Ababa Science and Technology University

College of Electrical and Mechanical Engineering


Department of CSIT and Software Engineering

Undergraduate Project

School Management System

6/4/2018
Prepared by:

No Name ID
1. Tesfaalem Mesele ETS 1007/07

2. Minalu Biresaw ETS 0795/07

3. Habtamu Tesfaye ETS 0564/07

4. Eskedar Yohannes TETS 0029/07

5. Derartu Buta ETS 0379/07

6. Bereket Solomon ETS 0226/07

Advisor: Mr. CHERE LEMMA. Signature: .


Acknowledgment

First of all, we would like to thank our God for helping through the whole process of this
documentation. And next, we would like to thank our advisor Mr. Chere Lemma. He has been a
huge help by guiding us, encouraging us and for his continuous consult through the documentation
of the proposed system and we wouldn’t have done it without him. And we would also like to
express our gratitude to the Department of Software Engineering for giving us the opportunity to
exercise the real-world experience as a software engineer. We would also want to extend our
gratitude to Dej Azmach Wondrad School and Akaki l’Esperance Boarding School for helping us
through the requirement gathering phase. Not only they helped us in requirement gathering, they
also helped us get a grip of the features that should be included to make the system much more
usable.

i
Table of Contents
Acknowledgment ........................................................................................................................................... i
List of Table ................................................................................................................................................. iv
Abbreviations ............................................................................................................................................... vi
Acronymic.................................................................................................................................................... vi
Abstract ....................................................................................................................................................... vii
Chapter one ............................................................................................................................................... 1
Introduction ............................................................................................................................................... 1
1.1 Background of The Organization .................................................................................................... 1
1.2 Statement of The Problem............................................................................................................... 2
1.3 Proposed System ............................................................................................................................. 3
1.4 Motivation ....................................................................................................................................... 4
1.5 Scope and Limitation of the Project ................................................................................................ 4
1.6 Objective ......................................................................................................................................... 5
1.7 Methodology ................................................................................................................................... 5
Chapter Two.............................................................................................................................................. 7
System Requirement Specification ........................................................................................................... 7
2.1 Background Overview .................................................................................................................... 7
2.2 Functional Reequipment ................................................................................................................. 7
2.3 Non-Functional Requirement .......................................................................................................... 9
2.4 System requirement....................................................................................................................... 10
2.5 Feasibility Study ........................................................................................................................... 10
Chapter Three.......................................................................................................................................... 12
System Analysis and Modeling .............................................................................................................. 12
3.1 Overview ....................................................................................................................................... 12
3.2 Scenario Based Modeling ............................................................................................................. 12
3.3 Behavioral/Dynamic Modeling ..................................................................................................... 52
3.4 Class-Based Modeling .................................................................................................................. 58
Chapter Four ........................................................................................................................................... 60
System Design ........................................................................................................................................ 60
4.1 Overview ....................................................................................................................................... 60
4.2 System Design .............................................................................................................................. 60
4.3 Deployment ................................................................................................................................... 68
4.4 Architecture of The System .......................................................................................................... 69

ii
4.5 Database Design............................................................................................................................ 71
4.6 User Interface Design.................................................................................................................... 72
Chapter 5 ................................................................................................................................................. 81
Implementation and Testing ................................................................................................................... 81
5.1 Implementation ............................................................................................................................. 81
5.2 Testing........................................................................................................................................... 86
Chapter 6 ................................................................................................................................................. 88
Conclusion and Future work ................................................................................................................... 88
6.1 Conclusion .................................................................................................................................... 88
6.2 Future work ................................................................................................................................... 88
References ................................................................................................................................................... 89
Questions for questioner and interview methods .................................................................................... 90
For school Director ............................................................................................................................. 90
For teacher .......................................................................................................................................... 90
For Parent ............................................................................................................................................ 90
For Student .......................................................................................................................................... 90

iii
List of Table
Table 1 use case identification 13
Table 2 Actor identification 15
Table 3 Register school stuff member use case Description 17
Table 4 modify school members account use case Description 19
Table 5 Register Student use case Description 21
Table 6 Produce identification card use case Description 23
Table 7 Generate classes timetable use case Description 25
Table 8 forum discussion use case description 27
Table 9 manage forum discussion use case description 29
Table 10 record student's attendance use case description 31
Table 11 Record Student's mark use case description 33
Table 12 view student report use case description 35
Table 13 view student report use case description 37
Table 14 Edit account use case description 39
Table 15 produce semester report card use case description 41
Table 16 view school report use case description 43
Table 17 Search use case description 44
Table 18 access control matrix for (SMS) 64
Table 19 Test case 87

iv
List of Figure
Figure 1 Use case Diagram ........................................................................................................... 14
Figure 2 Login to the SMS activity diagram ................................................................................ 45
Figure 3 manage user account activity diagram ........................................................................... 46
Figure 4 Registration Activity diagram ........................................................................................ 47
Figure 5 Forum discussion Activity diagram................................................................................ 48
Figure 6 record student mark activity diagram ............................................................................. 49
Figure 7 Generate student report card ........................................................................................... 50
Figure 8 Generate student report card Activity Diagram.............................................................. 51
Figure 9 Register Student mark sequence diagram....................................................................... 52
Figure 10 Register Student Sequence Diagram ............................................................................ 53
Figure 11 generate Student Report Card Sequence diagram ........................................................ 54
Figure 12 Generate Time table Sequence Diagram ...................................................................... 55
Figure 13 Student Forum Sequence Diagram ............................................................................... 56
Figure 14 Forum discussion Object State Diagram ...................................................................... 57
Figure 15 Account State Diagram................................................................................................. 57
Figure 16 SMS Class Diagram ..................................................................................................... 59
Figure 17 Subsystem Decomposition ........................................................................................... 62
Figure 18 Deployment diagram for SMS...................................................................................... 68
Figure 19 Architecture of the system ............................................................................................ 69
Figure 20 System Architecture ..................................................................................................... 70
Figure 21 Database Design diagram ............................................................................................. 71
Figure 22 system interface page flow ........................................................................................... 73
Figure 23 SMS login Interface ...................................................................................................... 74
Figure 24 class schedule interface ................................................................................................ 75
Figure 25 Student Registration interface ...................................................................................... 76
Figure 26Student forum interface ................................................................................................. 77
Figure 27 student report card interface ......................................................................................... 78
Figure 28 student management interface ...................................................................................... 79
Figure 30 Student Identification Card........................................................................................... 80

v
Abbreviations
Gov.t: Government

SMS: School management system

Acronymic
PHP: HTML embedded Web scripting language

HTML: Hyper Text markup language

MYSQL: Relational database management system

HTTP: Hyper Text Transfer Protocol

CSS: Cascading style sheet

vi
Abstract
Education is crucial to development which lays a foundation for sustained economic growth of
one country. But our country’s history in education focus have not that good considering where
the world is right now. And almost all of the primary and high schools teaching and learning
process are carried manually. Having this in mind, Ethiopian government has given special focus
to education to ensure the development of open minded citizens. The project’s objective is to
computerize those manually operated work for better efficiency. The proposed systems major
functionalities are Timetable preparation, Report preparation, and Forum discussion for students.
In order to use the system, every personnel must be registered first. Since our system is web based,
Users will only need to install a browser to access the system. After accessing the system user can
perform certain function depending on their privileged access. The proposed system’s architecture
is based on the Three-Tier client/server architectural style concept. And the proposed system is
modelled based on many Scenario based modellings like Sequence, Activity, State and Use Case
Diagrams are included in this document.

vii
Chapter one
Introduction
1.1 Background of The Organization

Education system forms the backbone of every nation [1] and crucial to development of one
country. And hence it is important to provide a strong educational foundation to the young
generation to ensure the development of open-minded global citizens securing the future for
everyone. Advanced technology available today can play a crucial role in streamlining education-
related processes to promote solidarity among students, teachers, parents and the school staff.

It is one of the most powerful instruments for reducing poverty and inequality and lays a foundation
for sustained economic growth. With this aim currently, Ethiopian government has given special
emphasis to the educational sector and professional skill improvement activities such as
continuous professional development for teachers, training and upgrading teachers and
capacitating schools with manpower and materials are among the major actions which have been
taken in both primary and secondary schools. In order to facilitate and simplify these actions one
of the major tool is to have automated school management system.

Accordingly, the proposed School Management System provide a means of completing main tasks
like Student registration, attendance record, producing report cards, student’s forum, provide a
secure entrance in to the school compound, preparing weekly timetable and producing different
reports for school and parents and it also provides a platform where students can make forum
discussion. But here we focused on developing a system to help the high school system.

And here we are determined to help our country lay a foundation to secure sustainable and
continuing growth by consolidating the High school system in order to pass on a well informed
and educated student to the higher educational sectors like Universities and Colleges.

Our clients are most of the high schools around Addis Ababa specially our focus is directed on
public schools because students in the public schools don’t get the same treatment as the privileged
students in a private school.

1
1.2 Statement of The Problem
1.2.1 Existing System
Currently, most of the schools in Ethiopia is operated manually. Each and every task starting from
registration to preparing a report card at the end is done by the responsible personnel. For example,
at the time of teacher registration into the school, the record officer registers the teacher
information into the school teachers document. The same applies to the student who wants to
register into the school. The student provides picture and pervious educational background.
Register officer check the eligibility of the student document and register the student information
into the school student document. It takes time to provide the students with their own identification
card since the whole process starts after registration. The weekly class timetable is prepared by a
person who manage it manually taking his/her time to avoid any conflict between the classes. In
every class teachers take students attendance manually by calling out their names. Even at the end
of each semester teachers have to take their time to formulate a grade report for each student.
Student’s documents are stored in a room which acts only as a storage unit. When a specific
information about a student is required, the record keeper have to go through all the documents in
that room to access it.

1.2.2 Major Problem of Existing System

As we mentioned above, the existing system is operated manually which makes it prone to errors
and problems like: -

▪ Time consuming and frustrating registration process


▪ Lack of reliable storage
▪ Documents organization problem.
▪ Timetable conflict among classes
▪ Manual attendance
▪ Lack of strong security
▪ Error prone manual grade report preparation
▪ Lack of sufficient communication between parents and the school

2
1.3 Proposed System

Every big change starts with the little one which affects the whole routine it works on. A good and
reliable building needs a well-built base ground to build the top on. The same applies to producing
a future bright generation. Students needs a good base knowledge they can build their future career
on. The current focus shifts towards the higher level educational facilities. There isn’t enough
effort underway to support the middle educational level.

And that’s exactly what we are proposing here. A system which helps the middle educational level.
The system is web-based application that allows the school to control and manage student activities
easily on the computerized system. And it also minimizes waste of time and human labor to
perform a certain task. Our system offers a reliable security by providing every student with an ID
card with a bar code function which they swipe at the gate to enter the school so that no intruder
will enter the compound unauthorized.

The aim of the proposed system is to provide the High school with a system that they can use to
administer the whole school with ease and to facilitate the teaching- learning process.

1.3.1 Advantage of Proposed System

Below, we have stated advantages of the proposed system.


▪ Provides fast and easy way to perform a school task.
▪ Allows teachers to work closely with their student’s parents.
▪ Strong security for the school compound (ID card swipe at the bar code reader)
▪ Provide the school with database to store information.
▪ Avoids conflict of classes’ weekly timetable.
▪ Provide students a platform where they can have open discussion.
▪ Help teachers to formulate a student’s grade report with great ease.
▪ Electronic attendance
▪ Provide monthly SMS report for parent about their child’s

3
1.4 Motivation

In a developing country like Ethiopia, a firm and continuing stance is required on fundamental
development sectors like health sector, agriculture and educational sector. There are always
obstacles in this sector. But we are determined to improve educational sector to pave the way by
tackling those obstacles to produce a bright minded man power to insure a sustainable
development. The reason that motivated us education over other sectors is because education is a
basis to every other sector. Health sectors needs well-educated physicians, construction sector a
well-trained engineer and agricultural also requires an educated farmer for yield a good product.
All the above sectors depend on a well-organized education system so why not choose education.
But even our education system is taking so much hit that it is failing to deliver what’s promised to
other sectors. So, knowing a good education system is a best way to save all our problems, make
it much better by providing a system to manage the school environment.

1.5 Scope and Limitation of the Project


1.5.1 Scope of The Project

The system basically includes registration activities, class time table preparation, report card
preparation and forum discussion platform.

The proposed school management system is determined to facilitate and enhance high school and
preparatory school management activates as well as teaching learning process.

1.5.2 Limitation of The Project

The proposed system doesn’t handle activities related to Human Resource Management, finance
and procurement activities. And the system is designed only for high schools and preparatory
schools. Moreover, the system only supports English. There is no other version with different
languages.

4
1.6 Objective
1.6.1 General Objective

The general objective of this project is to design and develop web-based school management
system for Ethiopian high schools and preparatory schools.

1.6.2 Specific Objective

We have listed the specific objective of our proposed system as follow:


▪ To create easily accessible web-based school information and communication system.
▪ To reduce school record officer’s registration workload partially.
▪ To minimize resource consumption and waiting time on queue for registration.
▪ To organize the school documents with more efficient sorting.
▪ To facilitate attendance record keeping
▪ To facilitate various report generations that was previously done manually.
▪ To allow parents to keep track of their child closely and easily
▪ To make the timetable error free by computerizing the preparation process
▪ To secure the school compound by equipping the gates with bar code reader so that no
strangers can get in the school without authorization.

1.7 Methodology
1.7.1 Data Collection Methodology

To clearly understand the work flow of the existing system and design the appropriate solution, it
is necessary collecting and analyzing all required data. Accordingly, we used the following
requirement determination methodologies.

• Questionnaire: - we choose questioner data collection method because this will help us to
point out user’s functional requirement. We prepare a question and give it to stockholders,
analysis their answer and point out the functional requirements.
• Interview: - we choose interview data collection method because to know about the
existing system deeply and to know the process flow of the existing system on the interview
time we ask all important questions about the existing system that can help us to develop a

5
complete school management system. The interview includes all stockholders the system
stockholders are: -
• School head
• School government
• Teachers
• Students
• Parents
The reason we chose both and not only one of them is because not one of them is capable of
gathering all the information needed all by itself. For instance, we can’t use Interview if the
stakeholder is very busy. We email them written questions (questioner) so that they can write us
back when they are free. And also, there are some situations where we can’t use Questioner
method. The stakeholder might not know how to read and write so Interview can be used here.

6
Chapter Two
System Requirement Specification
2.1 Background Overview
It’s no secret that education is a crucial element for every nations development. As a matter of fact,
it’s almost impossible to get a decent job without a proper degree. But not everyone with a degree
can contribute to the county’s growth. We need a well-educated citizen to fulfil our goals and reach
our dreams. And we can’t do that with a school system that is not well organized to provide a good
education to the little fellas who will take over our country’s future tomorrow.

Ethiopian high school at this time are not running on an automated system which can help run
things more smoothly. But instead, they are being operated fully on man power and intelligence.
and this can cause some problems as they:

▪ Are error prone since all the work is done by human

▪ Is time consuming to perform a certain task?

▪ Can cause conflicts in preparation of timetable

▪ Are overwhelming and inaccurate sometimes to formulate a grade report for


every student manually

▪ Don’t provide students their own discussion room for solving academic problems

The problems listed above clearly shows that the system we have been using barely meets our
minimum requirement to provide this student the means to become a competitive student in an
international level. This might have worked in the medieval times but now the world is changing
too fast that we are probably one of the few countries who haven’t been impacted by globalization.
So, we are here with an idea which can improve the efficiency of our high schools by providing
them with an automated School Management System.

2.2 Functional Reequipment


Functional requirement of the system used to describe a particular behavior of function of the
system when certain conditions met. Functional requirement answers the question for what the
system have to do.

7
The proposed school management system will have the following functionalities

1. Registration

This function will perform various registration starting from Student registration to teacher and
record officer registration. Some registration process will need prerequisites in order to be
performed. For instance, students will have to provide their previous school record to decide
whether they are qualified or not.

2. Student ID card preparation

This function will be performed after Students registration process. It will provide student with
their own identification card. The identification card will have a bar code to minimize the risk of
exploitation using a fake id card.

3. Class timetable preparation

This function will be performed by the system admin and it will prepare classes’ weekly
timetable. It will need classes, teachers and subjects as an input in order to prepare. It is set to
remove error or conflicts made when being prepared manually.

4. Record information

This function will record student’s information like attendance and grade result. All needed to
record student’s attendance is for students to swipe their id card at the gate. But their work
evaluation is submitted by their course teachers.

5. Report generation

This function will generate various reports about school’s general statistics and student’s status
report for parents, school and semester Report card. There are two types of Student report that
can be generated using the system. One is Transcript Report and the other is Report card at the
end of each semester.

6. Forum discussion

This function provides students with a platform for discussing solutions regarding their academic
problems. Any student struggling with any academic problems can post his/her question on the

8
forum and another student can post its respective answer. And if the problem stays unanswered,
teachers can scoop in to answer the question.

2.3 Non-Functional Requirement


Non-requirement function will describe how a system should behave and what limits there are on
its functionality.

1. The performance requirement

The system should have an average response and access time. This will be made possible by
making the proposed system’s architecture appropriate with the requirement and the proposed
system will have a well-structured and efficient coding system. And it should be capable of
handling big workload.

2. Security requirement

The system is much secure because all users have their own password plus the system use a high-
level password encryption method. Because of the system, classified data will be stored in the
database. User validation will be done during login to ensure that the user is valid and that the user
only has access to his or her permitted data. For all this reason we can say our system is secure.

3. Maintainability requirement

The system can be easily maintained by the developer or other authorized trained person and it
should respond as fast as possible in performing any kind of task concerning maintenance.

4. Utility requirement

The system should provide help to guide the user by providing, help document and tips which
clearly stage how the system works

5. Reliability requirement

The system should be reliable during a time where system encounters an error.

6. Usability requirement

9
The system’s interface should be easy to use and be easily understood by any new user who might
not have any clue before about the system. The user will only need basic computer skills to
understand how the system works because the prosed system is much user friendly.

2.4 System requirement


To be used efficiently, all computer software needs certain hardware components or other
software resources to be present on a computer

Hardware requirements

Minimum Requirements

Processor: Intel Pentium /AMD k6 processor

RAM: 2GB

HDD: 40GB NTFS File system

Network :56 kbps Connection

Software requirements

Deals with defining software requirement resources requirements and prerequisites that need to
be installed on a computer to provide optimal functioning of an application.

Operating System: Any

Browser: Any browser

Ozekin: SMS Get way

2.5 Feasibility Study


Feasibility Analysis

Based on the gathered information and the made analysis of the system on the course of
development and after deployment, it is safe to say that the system is feasible from the following
point of views: -

▪ Operational feasibility
▪ Technical feasibility

10
▪ Economy feasibility
▪ Political feasibility
1. Operational feasibility

Operational feasibility studies whether the system can operate efficiently depending on its
surrounding environment like operating system, the availability of the environments required for
the system to operate on. Since our proposed system is a web-based, it can be operated on any
operating system.

2. Technical feasibility

Technical feasibility studies whether the organization has the technical expertise, the hardware and
the software requirement to handle and help the system run smoothly.

3. Economic feasibility

Economic feasibility studies if the system is financially viable. Economically, the system is
implementable. Since all we need is a Personal Computer and an internet connection, there won’t
be much difficulties. Financing the project in terms of cost capital, it may require some finance for
the work force.

4. Political feasibility

Political feasibility studies whether the system conflicts with legal requirements implied by the
country. Our system complies and is acceptable in accordance to the law.

11
Chapter Three
System Analysis and Modeling
3.1 Overview
This chapter will elaborate about the systems requirement modeling and the different ways
included in the requirement modeling. We will use different requirement modeling: - Scenario
based modeling, Behavioral modeling and Class-Based modeling.

3.2 Scenario Based Modeling


This section will explain the system from the actor’s point of view it will capture the system
functionality when the actor is involved directly and indirectly.

Its explains the system by representing it using: -

▪ Use case diagram


▪ User case description
▪ Activity diagram

3.2.1 Use Case Identification


A task or goal that users will be able to accomplish using a program. It should be written in terms
that users can understand.

To identify use cases on the proposed system the team used CRUD technique. It is an acronym for

▪ Create
▪ Read or report
▪ Update
▪ Delete

12
Use case Name Use case Actors
1. Register school stuff member System admin
2. Manage users account System admin, record officer, school head
3. Register student Record officer
4. Produce identification card Record officer
5. Generate classes time table School director (head)
6. Edit account Student, teacher, record-officer, school
director, school government
7. Forum discussion Teacher, student
8. Manage forum discussion Teacher
9. Record mark Teacher
10. Record attendance Student
11. Generate report card Record officer
12. View school report School Government, school director
13. View students report Parent, student, school head

Table 1 use case identification

3.2.2 Use case diagram


Now that we have identified the use cases and the system actors of the system, it’s time for us to
provide the use case diagram of the system. Use case diagram is a graphic representation of the
interactions between the actors and the use cases [7].

13
Figure 1 Use case Diagram

14
3.2.3 Actor Identification
No Actors Description
1. System Admin Admin is a person who is responsible to register and control school stuff
system user’s members, maintain and system overall launch.
2. School director School director is a person registered to the system by the system admin
(head) and responsible to produce the timetable for each class by providing the
necessary parameters and view school and student report.
3. Record Officer A Record Officer is a person registered to the system by the system
admin and responsible on register students and manage students
account, prepare students identification card, generate student’s
semester report card.
4. Teacher Teacher is a person assigned by the school director to each class of
students to follow the students closely. He / She has the responsibility
of recording students mark to the system and access a forum discussion
to verify questions and answer before they post and to give there answer
when it’s in need.
5. Parent A Parent is a person who is registered as parent of the student and
responsible to follow the student in close contact with the school. He /
She can view the status of the student such as attendance and result of
the student online.
6. Student Student is a person who is register as a student in the school and
responsible on recording their attendance.
7. School a person who is registered as a legal concerned official from kebele or
government kifle-ketema to get reports on students, school, teachers of the school.
He or she will be viewing the report online.

Table 2 Actor identification

15
3.2.4 Use Case Description
1. Register school stuff member

Use case Register school stuff member

Primary actor System admin


Goal in context To Register someone as a new school stuff member and give system privilege.
It can be
▪ Record officer
▪ Teacher
▪ School director (head)
Pre-condition 1) Login to the system
2) The person must receive employment agreement from the school

Trigger When school approved and hired a new School Management System user employee
for the school.

Main Scenario System admin System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu system admin

7. Choose registration from the 8. Display available type of registration for


listed SMS menu system admin
9. Choose stuff members 10. Display selected user type registration
registration form
11. Fill the registration form
12. Click on register 13. Check the registration validation form

16
14. Generate temporary user name and
password for user
15. Register the new user data to the
database
16. Display the temporary user name and
password to the system admin
17. View the temporary user name
password
Exception 4. Login error: - takes the system admin back to sign in page to re-enter the correct
credential

12. Unable to register: - the system will redirect back to the new stuff members
registration form to enter a valid information.
To modify the registered user account see edit account
Post-condition the school stuff member has an access to use the system.
Priority High

When available First increment

Frequency of use Many times, per year


Whenever a new school stuff member is appointed

Chanel to actor Via registration interface

Table 3 Register school stuff member use case Description

17
2. Manage users account

Use case Manage users account

Primary actor System administrator, record officer, school head

Goal in context To modify users account information

Pre-condition
1) Log into the system
2) The user must receive user account modification letter from the school
3) there must be registered account

Trigger The school decide to modify some school stuff member account.
Main Scenario System administrator, record System
officer, school head
1. open the school management 2. Display the login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu to the user

7. Choose manage users account 8. Display available users to the user


from the listed SMS menu
9. Select a user from listed 10. Display available modification on the
available users list or enter user selected user
id
11. Submit 12. Display a modification form

13. Choose types of modification

18
14. Fill the modification form
15. Click on update 16. Check the validation of the data

17. Save the update


18. Display a success update message
19. View success update message

Exception
4. Login error: - takes the user back to sign in page to re-enter the correct credential

14. Unable to update the information: - the system will provide a new form for user
to submit the user information correctly.
To register new stuff member, see register school stuff member
Post-condition The user data will be modified
Priority Low
When available First increment

Frequency of use May times per year


Whenever modification is in need

Chanel to actor Via manage user account interface

Table 4 modify school members account use case Description

19
3. Register Students

Use case Register students

Primary actor Record officer

Goal in context To Register someone as a student to the system

Pre-condition 1) The record officer must be login to the system


2) student and parent must be fill the manual registration form.
3) Record officer check the validation of the manual form.

Trigger Record office decide to register someone in to the school as student

Main Scenario Record officer System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for record officer
7. Choose registration from listed 8. Display student registration form
SMS menu
9. Fill student and his/her 10. Display the sign in interface
emergency contact data
11. Upload student and emergency
picture
12. Click on register
13. Check the validation of data

20
14. Generate temporary user name and
password
15. Register the student data on the database
16. Display the temporary user name and
password
17. View the temporary user name
and password
Exception
4. Login error: - takes the system admin back to sign in page to re-enter the correct
credential

12. Invalid information provided: - the system will redirect back to the new student
registration form to enter a valid information of student.
To edit user name and password see the edit account use case
To manage registered account, see the manage account use case

Post-condition The student is register to the system as a student of the school

Priority High

When available Whenever the new student is arriving to the school

Frequency of use Twice per year (At the beginning of both semester)

Channel to actor Via student registration interface

Table 5 Register Student use case Description

21
4. Produce identification card

Use case Produce identification card

Primary actor Record officer


Goal in context To give student identification card
Pre-condition 1) the student must be register as a student of the school
Trigger The student register in the school as the student
Main Scenario Record officer System
1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for record officer

7. Choose student from listed 8. Display all school grades and section
SMS menu
9. Choose grade and section or 10. Display all available students in selected
enter the student id on the class section
search text box
11. Choose student from listed 12. Display student profile and other
class students functions
13. Click on prepare identification 14. Prepare student identification
card
15. Display the student identification card
16. View the identification card

17. Click on print

22
Exception 4. Login error: - takes the record officer back to sign in page to re-enter the correct
credential
Post-condition Students have a school identification card

Priority Moderate

When available First increment


Frequency of use Many times, per day
Whenever the student loose his or her their identification card necessary or
whenever student registered to the school
Chanel to actor Via student management interface

Table 6 Produce identification card use case Description

23
5. Generate classes timetable

Use case Generate classes timetable

Primary actor System admin

Goal in context To generate weekly classes schedule

1) Login to the system


Pre-condition 2) Classes must be registered
3) Teachers must be registered
4) Subjects must be registered

Trigger The start of the academic year requires the school to formulate a weekly time table

Scenario School director(head) System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for school
director
7. Choose time table from listed 8. Display all available class with their
SMS menu section in the school
9. Choose the class 10. Display form to enter the information
needed to generate the class time table.
11. Enter the information
12. Submit
13. Check the validation of the information

24
14. Prepare the time table
15. Save the class weekly time table to the
data base
16. Enter user name and password on 17. Display the class weekly time table for
the space provide school director(head)
18. View the class weekly time table
19. Click on print

Exception 4. Login error: - takes the system admin back to sign in page to re-enter the correct
credential
12. Courses not Provided: – The system will require certain courses for a certain
classis so it will tell us to add courses to the class.

Post-condition All the school classes weekly time table will be produced
Priority High
When available First increment

Frequency of use Once per year two times per year on the beginning of two semesters

Channel to actor Via school schedule interface

Table 7 Generate classes timetable use case Description

25
6. Forum discussion

Use case Forum discussion

Primary actor Student, teacher

Goal in context To provide student with a system where they can help each other

Pre-condition 1) Log into the SMS

Trigger The student or teachers has academic question or academic answer to post on forum

Main Scenario School, teacher System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for school
director
7. Choose Forum discussion from 8. Display two choices answer and
listed SMS menu question
9. Choose answer 10. Display all available questions with in
answer area
11. Set the answer
12. Click on answer 13. Post the answer

14. Choose Question 15. Display a text field


16. Set his / her question
17. Click on post question 18. Sent verification request for teacher

26
Exception’
4. Login error: - takes the system admin back to sign in page to re-enter the correct
credential
12. Unsupported Format answer – The teacher will notify the students if they try to
post answer unsupported file and wrong question.
13. Unsupported Format question– The teacher will notify the students if they try
to post question unsupported file.
To see forum discussion verification, see forum discussion management
Post-condition Student answer or post question on the school forum discussion

Priority Moderate

When available First increment

Frequency of use Many times, per day


Whenever student or teacher have question and answer to post on forum discussion

Channel to actor Via forum discussion interface

Table 8 forum discussion use case description

27
7. Manage forum discussion

Use case Manage forum discussion

Primary actor Teacher

Goal in context To control questions and answers before they are being posted

Pre-condition
1) Login to the SMS
2) Students must send request to post questions or answer on the forum

Trigger Student sent request to post questions or answer

Main Scenario School, teacher System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for school
director
7. Choose forum discussion from 8. Depend on the teacher course the
listed SMS menu system display list of question with in
check-in box form to be verified before
post
9. Verify the question 10. Display all available questions with in
answer area
11. Click on done 12. Post the questions on the forum
discussion

28
Exception 4. Login error: - takes the teacher back to sign in page to re-enter the correct
credential
Postcondition Question and answers post to the forum discussion
Priority High

When available First increment

Frequency of use Many times, per day


Whenever student attend on the forum discussion

Channel to actor Via forum discussion interface

Table 9 manage forum discussion use case description

29
8. Record student’s attendance

Use case Record student’s attendance

Primary actor Student

Goal in context To record student’s attendance

Pre-condition
1) The student has to be a verified member of the school
2) The student must have identification card
3) Barcode must be plug in to the computer

Trigger School day

Main Scenario Student Barcode System


1. Swipe his/he 2. Read the
identification card on identification card
the barcode
3. sent the student 4. Accept the student
identification number identification
to the system number
5. take the day
attendance.
Exception 1. Card declined – the system tells the personnel to contact the responsible
authority
Postcondition The system record student attendance

Priority High

When available First increment

30
Frequency of use One times per day
Whenever student coming to the school at a class time

Channel to actor Via student attendance interface

Table 10 record student's attendance use case description

31
9. Record students Mark

Use case Record student’s Mark

Primary actor Teacher

Goal in context To record student’s grade into the system and to let students and their parents to see
the grade online

Pre-condition 1) The students and classes must be assigned


2) The teacher must be assign for that class
3) Students must take exam or assignment

Trigger Students take exam or assignment

Main Scenario Teacher System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of


the information
6. Display the SMS menu for the
teacher
7. Choose record mark from listed 8. Display teacher class
SMS listed menu
9. Choose his / her class 10. Display selected class students
11. Choose student from listed 12. Display form to add a mark
class students
13. Add the student mark

32
14. Submit the mark 15. Check the validity of the mark
16. Save the student mark
17. Display success message
18. View the updated mark
Exception 4. Login error: - takes the teacher back to sign in page to re-enter the correct
credential
14. Invalid Information provided – the system will redirect back to the form to
enter a valid student mark
.
Postcondition The student mark is registered into the system

Priority High

When available First increment

Frequency of use Many times, per month


When the teacher wants to set student mark into the system
Channel to actor Via student grade interface

Table 11 Record Student's mark use case description

33
10. View student report

Use case View student report

Primary actor teacher, school head

Goal in context To simplify tracking of student’s attendance and grade

Pre-condition 1) Log into the SMS


2) mark and attendance must be recorded
Trigger Teacher, school head want to see student report

Main Scenario School head, teacher System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of the


information
6. Display the SMS menu for user

7. Choose report from listed SMS 8. Display all available reports to the user
menu
9. Choose student report 10. Display all available classes

11. Choose class 12. Display the class section

13. Choose section 14. Display all available students in selected


class section
15. Choose student from listed 16. Display the selected report that include
class students attendance and mark
17. View the report

34
Exception i. Login error: - takes the user back to sign in page to re-enter the correct
credential

Postcondition The teacher or school head see the student school report
Priority Moderate
When available First increment

Frequency of use Many times, per month


Whenever the school head or teacher want to see the student report
Channel to actor Via student report interface

Table 12 view student report use case description

35
11. View student report

Use case View student report

Primary actor Parents and Student

Goal in context To see student daily activity in the school by family (parent)

Pre-condition 1) Log into the SMS


2) mark and attendance must be recorded

Trigger Parents want to see their child’s school activity


Main Scenario
Parent System
1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of


the information
6. Display SMS menu for parent

7. Choose report 8. Display a text area to accept


student identification card
9. Enter student identification card
10. Click on view report 11. Display a report that include
student Attendance and grade.
12. View the displayed student
report
Exception Login error: - takes the parent or student back to sign in page to re-enter the correct
credent

36
Invalid identification card: - the system let the parent or student to enter valid
identification card

Postcondition View student school activity

Priority Moderate

When available First increment

Frequency of use Many times, per month


Whenever parents want to see their child’s school activity

Chanel to actor Via student report interface

Table 13 view student report use case description

37
12. Edit account

Use case Edit account

Primary actor Record officer, teacher, student, parent, system admin, school government

Goal in context To modify own SMS account username and password

Pre-condition 1) Log into the SMS


2) User must be registered first as a system user

Trigger User want to change his or her own SMS account password or username

Main Scenario System user System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of


the information
6. Display SMS menu for system user

7. Choose edit account from the 8. Display list of modification


listed menu username or password
9. Choose modification
10. Click on choice 11. Display a modification form
12. Modify 13. Check the validation of changed
data
14. Click on update 15. Save the change
Exception

38
4. Login error: - takes the user back to sign in page to re-enter the correct
credential
5. Invalid modification: - take the user back to modification form to make valid
update again
Postcondition User change his or her own account user name and password
priority Low
When available First increment
Frequency of use Many times, per year
Whenever the user wants to change his or her user name and password

Channel to actor Via manage account interface

Table 14 Edit account use case description

39
13. Produce semester report card

Use case Produce semester report card

Primary actor Record officer

Goal in context To print student semester report card

Pre-condition 1) Log into the SMS


2) Students must be registered in the school
3) Class semester must be end
4) Teacher must finish submitting students mark

Trigger Semester end and student want to receive semester grade report

Main Scenario Record officer System


1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of


the information
6. Display the SMS menu for the
record officer
7. Choose report card 8. Display year
9. Choose year 10. Display available class on that year
11. Choose class 12. Display section
13. Choose section 14. Display all students on the selected
section
15. Choose student from listed
students

40
16. Click on generate report card 17. process the report card

18. Display the report card


19. Click on print 20. Process the print
Exception 4. Login error: - takes the system admin back to sign in page to re-enter the
correct credential

Postcondition Students has their own hard copy semester report card
Priority Moderate

When available First increment

Frequency of use Two times per year


When the semester end

Channel to actor Via student report card interface

Table 15 produce semester report card use case description

41
14. View school report

Use case View school report

Primary actor School head, school government

Goal in context To see school general report

Pre-condition 1) Log into the SMS


2) School year must be start

Trigger The school head or the government want to see the school report

Main Scenario School head, school government System

1. open the school management 2. Display the SMS login interface


system
3. Enter user name and password

4. Click on login button 5. Accept and check the validity of


the information

6. Display the SMS menu for the user

7. Choose school report 8. Display list of school report

9. Choose a report type he or she 10. Display the report


want to see about the school
11. View the report

12. Click on print 13. Process the print

42
Exception 4. Login error: - takes the user back to sign in page to re-enter the correct
credential
Postcondition The system admin can see and also have a hard copy of the school report

Priority Low

When available First increment

Frequency of use Many times, per year


Whenever school head or school government want to see the school report
Channel to actor Via school report interface

Table 16 view school report use case description

43
15. Search
Use case Search
Primary actor school head, record officer
Goal in context To access specific user information simply
Pre-condition 3) Log into the SMS

Trigger Teacher, school head want to see student profile


Main Scenario School head, record officer System
1. open the school management 2. Display the SMS login interface
system
3. Enter user name and password
4. Click on login button 5. Accept and check the validity of the
information
6. Display the SMS menu for user

7. Choose activity from SMS 8. Display search text box


menu
9. Enter ID

10. Submit 11. Check the validation of the id

12. Choose section 13. Display information on the id

14. View the report


Exception 4. Login error: - takes the user back to sign in page to re-enter the correct credential
10. Invalid id: - take the user back to search form to enter valid ID
Postcondition View information
Priority Low
When available First increment

Frequency of use Many times, per day


Channel to actor Via all interface whenever a search method is in need
Table 17 Search use case description

44
3.2.5 Activity Diagram
An activity diagram presents a series of actions or flow of control in a system similar to a flowchart
or a data flow diagram. They can also describe the steps in a use case diagram. Activities modeled
can be sequential and concurrent. Next is diagrams prepared for certain activities [6] [7].

Figure 2 Login to the SMS activity diagram

45
Figure 3 manage user account activity diagram

46
Figure 4 Registration Activity diagram

47
Figure 5 Forum discussion Activity diagram

48
Figure 6 record student mark activity diagram

49
Figure 7 Generate student report card

50
Figure 8 Generate student report card Activity Diagram

51
3.3 Behavioral/Dynamic Modeling
Behavioral models are used to represent the control structure of a system. They often describe a
modeled structure of the system changing from one state(form) to another. They can be represented
by Sequence diagrams and State diagrams. We have constructed those diagrams for our system
below.

3.3.1 Sequence Diagram


Sequence diagram is a way to show or validate the scenario of a use case. It helps to predict how
the system will behave after a certain action [5].

Figure 9 Register Student mark sequence diagram

52
Figure 10 Register Student Sequence Diagram

53
Figure 11 generate Student Report Card Sequence diagram
54
Figure 12 Generate Time table Sequence Diagram

55
Figure 13 Student Forum Sequence Diagram

56
3.3.2 State Diagram
State diagram or a State Machine diagram describes the behavior of a single object in response to
a series of events in a system. This behavior is represented and analyzed in a series of events that
occurs in one or more possible states.

Figure 14 Forum discussion Object State Diagram

Figure 15 Account State Diagram

57
3.4 Class-Based Modeling
3.4.1 Identifying Classes

1. System admin
2. Student
3. Record
4. Timetable
5. User profile
6. Grade
7. Record officer
8. Forum
9. Parent
10. Attendance
11. Teacher
12. Materials

58
3.4.2 Classes Diagram

Figure 16 SMS Class Diagram

59
Chapter Four
System Design
4.1 Overview
We have stated the functional and nonfunctional requirement of the system. We have also constructed
different UML diagrams based on the requirement we gathered and analyzed. And now in this chapter, we
will see System design, System decomposition into subsystems, the system architecture and the Database
design of the system.

4.2 System Design


4.2.1 Design goals

Guide the decisions to be made by the developers [2] relying mostly on the non-functional
requirements of the system. This goal is one of the most important characteristics that developers
must keep in mind in the design phase of the development process.

Design goal are grouped into four categories: -

▪ Performance
▪ Reliability
▪ Security
▪ Usability

Performance

One of the goals is getting the system a decent response time from a performance point of view.
Users usually gets frustrated when a page takes time to load the data they requested. A school
system gets awfully busy Another determinant of performance criteria is efficiency, meaning the
system must provide the best performance by using the smaller space and memory as much as
possible.

Reliability

The goal here is making the system very dependable and fault tolerant so that our users can depend
on our system without any worries. Making the system tolerant for errors is a very important
characteristic since most of our users are not expert on Computerized system.

60
Security

Here, it goes without saying. Since our system is all about managing school, good security is
obviously the most essential characteristic to keep in mind. We sometimes here about a student
that hacked into the school database to improve his grade. So, we aim to make our security a good
one.

Usability

It doesn’t matter if our system is a masterpiece if the interface to the system as complex as it gets.
We have observed an educational film about a software which have an outstanding compression
algorithm but a very complex interface which in turn contributed to their struggle to make their
system popular. So, its fundamental to make user friendly interface to increase the usability.

4.2.2 System Decomposition

Subsystem decompositions reduces the complexity of a large system by slicing it into subsystems.
This independent function is then packed into a package as a component. Our school management
system is decomposed into subsystems. The system we decomposed have the following
subsystems. We came to the conclusion of choosing these as a sub system because each of are the
main reason for developing the system and most of them have enormous function themselves.

• Registration
• Record Student Information
• Report
• Student Forum
• Timetable

61
Next is a figure which shows the decomposition of the School Management System.

Figure 17 Subsystem Decomposition

62
Component description

1. Registration

This module provides registering New members in to the school

1.1 School stuff members

1.2 Student

Required interface: - Home page, login page

Provide interface: - Their respective registration form page

2. Record Student Information

2.1 Record attendance

Required interface: - Registered students list

Provide interface: - Record attendance interface

2.2 Register student grade

Required interface: - Registered student list

Provide interface: - Grade submission form

3. Report

3.1 Student report – The current status of the student

3.2 Student report card – The final status of the student

3.3 School report – School statistics

Required interface: - registered student list, registered staff members list

Provide interface: - View report page

4. Time table

4.1 Generate time table for classes

63
Required interface: - Class list, Registered teachers list, and course list

Provide interface: - Prepare timetable page

5. Forum discussion

5.1 Ask question on the forum discussion

5.2 Answer question on the forum discussion

5.3 Manage forum discussion

Required interface: -Access forum page

Provide interface: - Forum interface

4.2.3 Access control

Access control (AC) in the following diagram we show the access control matrix for School
management system (SMS).

Actors Subsystem
Time table Attendance Report Student forum Registration Record
Mark
System Admin

Record officer

Teacher

Student

Parent

School director(head)

School government

Table 18 access control matrix for (SMS)

64
4.2.4 Object Specification

Student the class contains all the necessary informations of student operation to manuplate these
information

Student

~blockNo:string
~ClassYear:date
~Grade:int
~Question: string

+answerQuestion(int,string):void
+Post Question(int,string):void
+record Attendance (): void
+viewGradeReport():void

Attribute

▪ BlockNo This type of object described the number of block the students belongs to
▪ Class year: this type is date specify the student which learn what class year
▪ Grade: this type is int which give information of the student grade
▪ Question: this type is string which describe the student rise questions

Functions

▪ AnswerQuestion(): with the return type is void which invoked answer questions Attribute and
values
▪ Post Questions(): with the return type is void which invoked post question attribute and values
▪ Record Attendance(): with the return type is void which invoked the attribute and value of
record attendance
▪ ViewProfile(): with return type void which contain the value and attribute of record attendance
▪ ViewGradereport():

65
a. Invariants

studentId must not be null

Preconditions

▪ AnswerQuestion(): Answer question objects must be initialized


▪ RecordAttendance(): information must be initialized
▪ ViewProfile(): the profiles attributes must be initialized
▪ ViewQuestions(): the questions must be initialized

Post condition

▪ AnswerQuestion(): Answer question object attribute will be retrieved


▪ RecordAttendance(): the attendance attribute will be retrieved
▪ ViewProfile(): the list of the profiles information initialized and updated
▪ ViewQuestions the the questions will be initialized and retrieved

System Admin

This class contain all the necessary information about system admin and the operation System
Admin

Attribute

NewUserName it creates new user name to the customer

Functions

▪ DeleteUserAccounts(): when invoked it delete user account


▪ EditUserAccount(): when it invoked it edit or update user account
▪ GenerateReportcard(): when it invoked it generate the report card
▪ RegisterRecordOfficer(): when it invoked it register the record officer
▪ RegistorTeacherid(): when it invoked it directly register the id of the teacher
▪ ScheduleTimeTable(): when it invocked it schedule the the time table
▪ SetUserName(): when it invocked it initialize the user name
▪ SetPassword(): when it invocked it set or initialized the password

66
System Admin
+deleteuseraccount(string):void
~edituseraccount(string, string):void
-newpassword:string
newusername:string
~genertereport(string):void
~RegestorRecordOfficer():void
~RegistorTeachersinfo():void
~Schedule Timetable():void
+Set Username():void
SetUserpassword():void
+answerQuestion(int,string):void
+Post Question(int,string):void
+record Attendance():void
+viewGradeReport():void

a. Invariants

userAccount must not be null

precondition

▪ DeleteUserAccounts(): user account objects must initialized


▪ EditUserAccount(): the user account must be edited
▪ GenerateReportcard(): the report card must be generated
▪ RegisterRecordOfficer(): the register officer must be registered
▪ RegistorTeacherid(): the teacher must be register
▪ ScheduleTimeTable(): the time table must be scheduled
▪ SetUserName(): the user name must be set or initialized

Postcondition

▪ GenerateReportcard(): the recent value of the report card will be retrieved


▪ RegisterRecordOfficer(): the record officer attribute will be retrieved

67
▪ RegistorTeacherid():the teacher attribute will be retrieved
▪ ScheduleTimeTable(): the recent attribute of the time table will be retrieved
▪ SetUserName():the attribute of user name will be retrieved

4.3 Deployment
The deployment design is where we decide which hardware/software configuration is suitable for
the subsystems to run on. Many large systems run on multiple computers to acquire high
performance needs. So, when we come to our system, it’s a three-tier client server-based system
which in turn makes the software configuration not much of a worry since all it needs is a
browser and can run on any operating system. And hardware wise, it requires a networked
environment configured to enable many clients connect to the server through an internet
connection. Since our system is web based, there will be two nodes named Client and Web
server which are represented in a UML deployment diagram below.

Figure 18 Deployment diagram for SMS

68
4.4 Architecture of The System
Our proposed system is set to use the three-tier client/server architectural style. A three-tier
client/server is a type of multi-tier computing architecture in which an entire application is
distributed across three different computing layers or tiers [4]. It divides the presentation,
application logic and data processing layers across client and server devices. The three layers/tier
are defined as follow: -

Presentation layer - provides the application’s user interface (UI). Typically, this involves the
use of Graphical User Interface for smart client interaction, and Web based technologies for
browser-based interaction.

Logic tier - pulled out from the presentation tier and, as its own layer; it controls an application’s
functionality by performing detailed processing. Logic tier is where mission- critical business
problems are solved. The components that make up this layer can exist on a server machine, to
assist in resource sharing.

Data tier - This tier consists of database servers, is the actual DBMS access layer. It can be
accessed through the business services layer and on occasion by the user services layer. Here
information is stored and retrieved. This tier keeps data neutral and independent from application
servers or business logic.

A three-tier client/server adds an additional layer/tier to the client/server-based two-tier models.


This additional layer is a server tier that acts as an intermediary or middleware appliance. In a
typical implementation scenario, the client or first tier holds the application presentation/interface
and broadcasts all of its application-specific requests to the middleware tier server. The
middleware or second tier calls the application logic server or third tier for application logic. The
distribution of the entire application logic across three tiers helps optimize the overall application
access and layer/tier level development and management.

69
Figure 20 System Architecture

70
4.5 Database Design

Figure 21 Database Design diagram

71
4.6 User Interface Design
The School management system has two different websites using the same database. The first
one is the local website system that only work on the school boundary for the system admin,
record officer and teacher and the second one is school Web site that work world widely for
parents, student and other the school website visitors.

Here is the general flow or hierarchy of the school management system pages

72
Figure 22 system interface page flow

73
Here is some of the school management system local website system result interaction with the
system imaginary pictures and description.

Predicted user interface

Figure 23SMS login Interface


Figure23 login system is the first page of the school management system all system user except
student and parent accesses the system functionality though the login page(interface) login
system controls the users if the user is eligible to use the system or not.

74
Figure 24class schedule interface
The system produces a feasible timetable satisfying the constraints as shown in Figure 24 Due to
screen size we have limited the table to be displayed for print into a page per class/section, which
could be given to each class. The system also facilitates a timetable to be generated and printed
for each teacher. And accessed by system admin.

75
Figure 25 Student Registration interface
As we see the purpose of this form is to collect basic information of the student such as name
and address of the student and accessed by record officer, we can see on figure 25

76
Figure 26Student forum interface

The system produces a feasible timetable satisfying the constraints as shown in Figure 26 Due to
screen size we have limited the table to be displayed for print into a page per class/section, which
could be given to each class. The system also facilitates a timetable to be generated and printed
for each teacher. And accessed by system admin.

77
Figure 27 student report card interface
The other role of the record officer is to record marks and generate transcript and report cards.
These are routine tasks which take much of the times of the user, but once the marks are recorded
the tasks are simplified. When the user wants to generate report cards or transcripts, he/she selects
the corresponding sub menu from the “Reports” menu and a form is displayed to facilitate
generation of the reports. A screen shot of a report card is shown in Figure 27 and the transcript
report has a similar format.

78
Figure 28 student management interface
show the system admin interface for managing users account. The system admin can block, unblock or
Edit users using this interface also can search student with in any information of the user.

79
Figure 29 Student Identification Card
Figure 30 show the student Identification card that have a 128-bar code in it. This Identification card is
use to be in the school boundary.

80
Chapter 5
Implementation and Testing
5.1 Implementation
Implementation uses the structure created during architectural design and the results of system
analysis to construct system elements that meets the stakeholder’s requirements and system
requirements developed in the early life cycle phases.

Here, we will try to elaborate the different tools and development languages used in order to
implement the system.

Software Tools

Xampp – is a free and open source cross platform web server solution stack package developed
by Apache friends containing Apache server, MariaDB, PHP and Perl.

JetBrains Phpstorm – is a cross- platform IDE for php built on JetBrains IntelliJ IDEA platform.

Mozilla Firefox – is a free open source web browser developed by Mozilla and available for
Windows, macOS, Linux, and BSD operating systems.

Ozekin – is an open Short Message Peer to Peer protocol designed to provide a flexible data
communications interface.

Development language
Bootstrap - most popular framework with HTML, CSS, JavaScript languages. It is also free and
open-source front-end library.
PHP- Hypertext pre-processor, it is widely used open source general purpose scripting languages
suited for web development and can be embedded into HTML.
MySQL- it is an open source relational database management system, Structured Query
Language. It works well with other languages like PHP and makes integration simple.

81
Source Code
Login validation checking model

public function login($data){


$user = $data['user_name'];
$pass = $data['password'];
$this->db->select('*');
$this->db->from('account');
$this->db->where(array('user_name'=>$user, 'password' =>$pass));
$query = $this->db->get();
$users = $query->row();
$_SESSION['users_type']= $users;

if (empty($users)===false) {

if ($users->blocking==="false"){
if ($users->user_type=='security') {

$this->db->select('*');
$this->db->from('student');
$data['students']=$this->db->get();
$this->load->view('templete/include');
$this->load->view('templete/security');
$this->load->view('body/list_of_students',$data);
}
if ($users->user_type=='teacher') {
$this->db->select('*');
$this->db->from('teacher');
$this->db->where(array('id' => $users->id));
$result = $this->db->get();
$data['teacher_data'] = $result->row_array();
$this->load->view('templete/include');
$this->load->view('templete/teacher',$data);
}
if ($users->user_type=='student') {
$this->db->select('*');
$this->db->from('student');
$this->db->where(array('id' => $users->id));
$result = $this->db->get();
$data['student_data'] = $result->row_array();
$this->load->view('templete/include');
$this->load->view('templete/student',$data);
}

82
if ($users->user_type=='head') {
$this->db->select('*');
$this->db->from('head');
$this->db->where(array('id' => $users->id));
$result = $this->db->get();
$data['head_data'] = $result->row_array();
$this->load->view('templete/include');
$this->load->view('templete/head',$data);
$this->load->view('body/school_report');];
}
if ($users->user_type=='officer') {
$this->db->select('*');
$this->db->from('officer');
$this->db->where(array('id' => $users->id));
$result = $this->db->get();
$data['record_officer_data'] = $result->row_array();
$this->load->view('templete/include');
$this->load>view('templete/record_officer',$data);
$this->load->view('body/students');
$_SESSION['key']='officer';
$_SESSION['profile'] = $data['record_officer_data'];
}
}
else {
redirect('Login');
}
}
else {
redirect('Login');
}
}
To display Classes schedule controller
<?php
class display_schedule extends CI_Controller{
public function student(){
$this->load->model('post_model');
$data=$this->post_model->profile();
$data['grade'];
$data['section'];
$this->load->model('post_model');
$this->post_model->display_schedule_for_student($data);
}

83
public function head(){
$this->load->model('post_model');
$data['section']=$this->post_model->student_section();
$data['schedule']=$this->post_model->schedule_info();
$this->load->view('templete/include');
$this->load->view('templete/head');
$this->load->view('body/display_class_schedule',$data);
}
public function officer(){
$this->load->model('post_model');
$data['section']=$this->post_model->student_section();
$data['schedule']=$this->post_model->schedule_info();
$this->load->view('templete/include');
$this->load->view('templete/record_officer');
$this->load->view('body/display_class_schedule',$data);
}
}
?>
To generate Barcode 128 Library

<?php
class Barcode
{
function bar128($text) {
$char128asc=' !"#$%&\'()*+,-
./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv
wxyz{|}~';
$char128wid =
array('212222','222122','222221','121223','121322','131222','122213','122312','132212','221213',
'221312','231212','112232','122132','122231','113222','123122','123221','223211','221132',
'221231','213212','223112','312131','311222','321122','321221','312212','322112','322211',
'212123','212321','232121','111323','131123','131321','112313','132113','132311','211313',
'231113','231311','112133','112331','132131','113123','113321','133121','313121','211331',
'231131','213113','213311','213131','311123','311321','331121','312113','312311','332111',
'314111','221411','431111','111224','111422','121124','121421','141122','141221','112214',
'112412','122114','122411','142112','142211','241211','221114','413111','241112','134111',
'111242','121142','121241','114212','124112','124211','411212','421112','421211','212141',
'214121','412121','111143','111341','131141','114113','114311','411113','411311','113141',
'114131','311141','411131','211412','211214','211232','23311120' );
$w = $char128wid[$sum = 104];
$onChar=1;
for($x=0;$x<strlen($text);$x++)
if (!( ($pos = strpos($char128asc,$text[$x])) === false )){

84
$w.= $char128wid[$pos];
$sum += $onChar++ * $pos;
}
$w.= $char128wid[ $sum % 103 ].$char128wid[106];
$html="<table cellpadding=0 cellspacing=0><tr>";
for($x=0;$x<strlen($w);$x+=2
$html .= "<td><div class=\"b128\" style=\"border-left-
width:{$w[$x]};width:{$w[$x+1]}\"></div>";
echo " .";
return "$html<tr><td colspan=".strlen($w)."</table>"; }} ?>
To Display class schedule view

<table class="table">
<thead class="thead-dark">
<tr>
<th>Period</th>
<th>Monday</th>
<th>Tuesday</th>
<th>Wednesday</th>
<th>Thursday</th>
<th>Friday</th>
</tr>
</thead>
<tbody>
<?php
for ($a = 0; $a <= 34; $a) {
for ($b = 1; $b <= 7; $b++) {?>
<tr>
<td><?php echo $q; ?></td><?php
for ($c = 1; $c <= 5; $c++) {
$k='t'.$a;
?>
<td><?php echo $schedule_result->$k; ?></td><?php
$a++;
} ?>
</tr>
<?php
$q++;
}
}
?>
</tbody>
</table>

85
5.2 Testing
Testing is the process of executing a program with an intent of finding software bug. It can also be
stated as the process of validating and verifying a product to decide whether it meets the business
and technical requirements that guided its design and development. So, it is all about reducing the
errors and defects of a software in order to keep user’s interaction with the system at a good level.

Test Case Test Name Precondition Input Output Expected Remark


Id Output
1 Login User has Valid User’s User’s The system checks his
account username Homepage Homepage eligibility and
Valid password displays his/her
homepage
2 Login User has Valid Invalid Invalid The system checks his
account username username username eligibility and reloads
Invalid password password login page with an
password combination combination error message.
3 Login User has Invalid Invalid Invalid The system checks his
account username username username eligibility and reloads
Valid password password password login page with an
combination combination error message.
4 Login User has Invalid Invalid Invalid The system checks his
account username username username eligibility and reloads
Invalid password password login page with an
password combination combination error message.
5 Material User is Correct file Material is Material is The system checks
Upload verified and format selected attached attached whether the file
logged in format comply and
attaches the file.
6 Material User is Incorrect file Unsupported Unsupported The system checks
Upload verified and format selected file format file format whether the file
logged in format comply and
displays unsupported
file format message.
7 Student’s Teacher is Correct Saves Saves The system checks
mark verified and Number format student’s student’s whether the format
submission logged in inserted mark mark comply and saves the
mark.
8 Student’s Teacher is Incorrect Unsupported Unsupported The system checks if
mark verified and Number format character character the format complies
submission logged in inserted and displays an error
message pointing out
the unsupported
character.
9 Student An ID and A valid ID card Attendance Attendance The system read ID’s
Attendance Barcode reading recorded recorded barcode information
Recording Reader and checks the
information in the

86
database then records
the attendance.
10 Student An ID and An invalid ID Invalid Card Invalid Card The system read Id’s
Attendance Barcode card reading detected detected barcode information
Recording Reader and checks the
information in the
database then displays
an invalid ID
message.

Table 19 Test case

87
Chapter 6
Conclusion and Future work
6.1 Conclusion
Education is the base of development to one country. We believe the automation on School
Management System will improve the teaching and learning process and it is important that
schools are using automated system and digitalizing their work. We expect our system will have
good impact on the teaching and learning process of our country and help our educational system
on the digital world.
As software engineering graduates, we believe automation of systems like Education is
necessary. We trust that our system will do good on the educational advancement of the country.

6.2 Future work


Because of the time and resource limitation we were not able to go outside our scope and include
some additional features in the system. But in the future, we plan to fully automate the whole
School Management System. We plan to add additional features and expect to get some suggestion
on how the current system should be to improve the quality of the system. We also plan to work
with many other schools to make sure automated school management system is widely used.
We believe that we can work towards some game changing upgrades for the system by adding the
following features.
• E-Learning
• Staff Attendance
• Staff Payroll
• Parent and Teacher online conference room

88
References
[1] School Management System Literature review, Degif Teka, Former Undergraduate of AAU.

[2] Object-Oriented Software Engineering Using UML, Patterns, and Java™ Third Edition,

Bernd Bruegge & Allen H. Dutoit

[3] Templates for System Documentation, Chere Lemma, Lecturer in AASTU.

[4] https://alitarhini.wordpress.com/2011/01/22/concepts-of-three-tier-architecture/

[5] https://www.smartdraw.com/sequence-diagram/ , Sequence Diagram Concepts

[6] https://www.smartdraw.com/activity-diagram/ , Activity Diagrams Concepts

[7] Scenario Based Modeling_part1&2, Alemitu Mequanint, Lecturer in AASTU

89
Questions for questioner and interview methods
For school Director
1. Do you have a system that manages Learning and Management Systemin your School?
2. If No, was there an attempt to enhance or automate the Learning and Management System?
3. Kind of information do you need from this system that you don’t have now?
4. What desired functionalities do you need from the system?
5. What are the current problems you are facing today without such systems?
6. What do you have to do manually that you would like to be automated?
7. Which report do you currently use? And what on the report is important?
8. Who is in charge of creating departments?
For teacher
1. How do you manage assignments process with your students?
2. How do you give evaluation marks to your students?
3. What desired functionalities do you need from the system?
4. What are the current problems you are facing today without such systems?
5. What do you have to do manually that you would like to be automated?
6. Which report do you currently use? And what on the report is important?
7. How do you explain your communication with your students? Please rate from 0-10?
8. How do you give teaching materials to your students?
9. Is there an online solution to give teaching materials to students?
10. How do you manage assignments process with your students?
For Parent
1. What kind of information do you need from this system that you don’t have now?
2. What desired functionalities do you need from the system?
3. What are the current problems you are facing today without such systems?
For Student
4. What kind of information do you need from this system that you don’t have now?
For Student
1. What are the current problems you are facing today without such systems?
2. What desired functionalities do you need from the system?
3. What kind of information do you need from this system that you don’t have now?
4. What do you have to do manually that you would like to be automated?

90

Vous aimerez peut-être aussi