You are on page 1of 87

Education Management System

(EMS)

A dissertation presented to
Mam Bushra Almas

By

Azhar Ghafoor
&
Anish

In partial fulfillment of the requirements


for the degree BS in Information Technology in the
Institute of Information Technology QAU, Islamabad
2015-2019
This is to certify that Mr. Azhar Ghafoor Registration No. 04161513072 has effectively
finished the final project thesis as “Education Management System” from Quaid-i-
Azam University, Islamabad to satisfy the partial prerequisite of the degree “Bachelor of
Sciences in Information Technology.”

Internal Examiner

Ms. Bushra Almas


Assistant Professor

Institute of Information Technology,


Quaid-i-Azam University, Islamabad.

2|Page
This is to certify that Mr. Anish Registration No. 04161513053 has effectively finished
the final project thesis as “Education Management System” from Quaid-i-Azam
University, Islamabad to satisfy the partial prerequisite of the degree “Bachelor of
Sciences in Information Technology.”

Internal Examiner

Ms. Bushra Almas


Assistant Professor

Institute of Information Technology,


Quaid-i-Azam University, Islamabad.

3|Page
“I want to dedicate this work to my parents,
teachers and friends for their endless love, support
and encouragement.”

4|Page
ACKNOWLEDGEMENT

First of all, I would like to pay my thankfulness to Almighty Allah for giving me courage and patience
to finish this project effectively. I am thankful to my parents and family who were always there with
support and encouragement. My success became possible only due to prayers of my mother, whose love
and affection has been inspirational throughout my life.

I want to express my sincere gratitude and appreciation to my supervisor Mam Bushra Almas. Her
supervision guided and supported me from starting to the ultimate level and empowered me to improve
an understanding of the project.

I am also deeply grateful to all the teachers of department. They always remains source of inspiration for
me. I also express my honest gratefulness and appreciation to all my seniors who gave me moral support
and helped me throughout my BS.

At the end, I want to praise my friends especially Saad Rasool, Ali Haider and Anish Dadlani and my
class fellows who were always with me in the hour of agony. I will always cherish the moments we spent
together.
All these people helped me a lot otherwise I would not have been capable of finishing this project in
time.

Thank you all.

Azhar Ghafoor

5|Page
ACKNOWLEDGEMENT

First of all, I would like to pay my thankfulness to Almighty Allah for giving me courage and patience
to finish this project effectively. I am thankful to my parents and family who were always there with
support and encouragement. My success became possible only due to prayers of my mother, whose love
and affection has been inspirational throughout my life.

I want to express my sincere gratitude and appreciation to my supervisor Mam Bushra Almas. Her
supervision guided and supported me from starting to the ultimate level and empowered me to improve
an understanding of the project.

I am also deeply grateful to all the teachers of department. They always remains source of inspiration for
me. I also express my honest gratefulness and appreciation to all my seniors who gave me moral support
and helped me throughout my BS.

At the end, I want to praise my friends especially Saad Rasool, Ali Haider and Azhar Ghafoor and
my class fellows who were always with me in the hour of agony. I will always cherish the moments we
spent together.
All these people helped me a lot otherwise I would not have been capable of finishing this project in
time.

Thank you all.

Anish

6|Page
ABSTRACT
Information Technology (IT) can be an important constituent for innovation as enables e-learning and it
can provide conditions for an organization to be able to work with new businesses and improved
processes. In this regard, Education Management Systems (EMS) allow communication and interaction
between teachers and students in virtual spaces. However, studies indicate that there are gaps in research,
especially concerning the use of information technology for the management of e-learning. To this end,
we have applied different learning methods to get an optimal teaching and learning approach. This
approach will integrate e-learning, traditional learning and other educational assistive technologies to
hinder all weaknesses of teachers and students. .Physically challenged students were not entertained
properly in older systems, considering their all misfortunes they may face, this system will help every
student to access all facilities online.

7|Page
Table of Contents

Chapter 01: Introduction to Proposed System ...…………………………………….…..01


1.1 INTRODUCTION. .............................................................................................................................. 15
1.2 EXISTING SYSTEMS ........................................................................................................................ 16
1.3 LIMITATIONS OF EXISTING SYSTEMS .............................................................................................. 16
Chapter 02: Proposed System …………………………………………………………... 05
2.1 PROBLEM STATEMENT.................................................................................................................... 18
2.2 PROPOSED SYSTEM ......................................................................................................................... 18
2.3 SCOPE OF THE SYSTEM ................................................................................................................... 19
2.4 OBJECTIVES .................................................................................................................................... 20
2.5 OVERVIEW OF PROPOSED SYSTEM.................................................................................................. 20
2.6 MODULES OF PROPOSED SYSTEM ................................................................................................... 21
2.6.1 Registration ............................................................................................................................ 21
2.6.2 Admin ...................................................................................................................................... 21
2.6.3 Student .................................................................................................................................... 21
2.6.4 Teacher ................................................................................................................................... 22
2.6.5 Login ....................................................................................................................................... 22
2.6.6 Manage Class ......................................................................................................................... 22
2.6.7 Upload .................................................................................................................................... 22
2.6.8 Manage announcements ......................................................................................................... 22
2.7 ADVANTAGES OF PROPOSED SYSTEM ............................................................................................. 23
2.8 ASSUMPTIONS AND DEPENDENCIES ................................................................................................ 24
Chapter 03: Requirement Analysis …………………………………………………….. 12
3.1 INTRODUCTION ............................................................................................................................... 26
3.1.1 Requirement Elicitation .......................................................................................................... 26
3.1.2 Requirement Analysis ............................................................................................................. 26
3.1.3 Requirement Modeling ........................................................................................................... 26
3.1.4 Reviews ................................................................................................................................... 26
3.2 STAKEHOLDER REQUIREMENTS ...................................................................................................... 26
3.3 SOLUTION REQUIREMENTS ............................................................................................................. 27
3.3.1 Functional Requirements ........................................................................................................ 27
3.3.2 Nonfunctional Requirements .................................................................................................. 28
3.4 SOFTWARE REQUIREMENTS ............................................................................................................ 29
3.5 HARDWARE REQUIREMENTS .......................................................................................................... 29
Chapter 04: System Analysis and Design ………………………………………………. 17
4.1 INTRODUCTION ............................................................................................................................... 31
4.2 USE CASE DIAGRAM ...................................................................................................................... 31
4.2 ACTIVITY DIAGRAM ................................................................. ERROR! BOOKMARK NOT DEFINED.
4.3 CLASS DIAGRAM ............................................................................................................................ 50
4.4 SEQUENCE DIAGRAM...................................................................................................................... 51
4.5 ENTITY RELATIONSHIP DIAGRAM (E.R.D) ..................................................................................... 52
4.6 DATA FLOW DIAGRAM (D.F.D) ..................................................................................................... 53
Chapter 05: Relational Schema ………………………………………………………… 45
5.1 INTRODUCTION ............................................................................................................................... 31
8|Page
Chapter 06: Tools and Technologies ………………………………………………….... 53
6.1 INTRODUCTION ............................................................................................................................... 64
6.2 TOOLS AND TECHNOLOGIES ........................................................................................................... 64
6.2.1 Microsoft Visual studio Code ................................................................................................. 64
6.2.2 MySQL Workbench ................................................................................................................. 64
6.2.3 XAMPP ................................................................................................................................... 65
6.2.4 Microsoft Visio ....................................................................................................................... 65
6.2.5 PHP ........................................................................................................................................ 65
6.2.6 HTML...................................................................................................................................... 65
2.6.7 SQL ......................................................................................................................................... 65
2.6.8 JavaScript ............................................................................................................................... 66
2.6.9 Bootstrap ................................................................................................................................ 66
2.6.10 CSS........................................................................................................................................ 66
2.6.11 Voice Search (Google API) .................................................................................................. 67
Chapter 07: System Testing …………………………………………………………….. 58
7.1 INTRODUCTION ............................................................................................................................... 69
7.2 SOFTWARE TESTING TYPES ............................................................................................................ 69
7.2.1 Manual Testing ....................................................................................................................... 69
7.2.2 Automation Testing ................................................................................................................. 69
7.3 TESTING APPROACHES ................................................................................................................... 69
7.3.1 White Box Testing ................................................................................................................... 69
7.3.2 Black Box Testing ................................................................................................................... 69
Chapter 08: Interfaces …………………………………………………………………... 68
8.1 INTRODUCTION ............................................................................................................................... 77

9|Page
List of Figures

Figure 2.1: Block diagram ..................................................................................................................................... 19


Figure 2.2: Context diagram .................................................................................................................................. 21
Figure 4.1: Use Case Diagram of Visitor .............................................................................................................. 31
Figure 4.2: Use Case Diagram of Admin .............................................................................................................. 32
Figure 4.3: Use Case Diagram of Student ............................................................................................................. 33
Figure 4.4: Use Case Diagram of Instructor .......................................................................................................... 34
Figure 4.5: Activity Diagram for User Registration .............................................................................................. 47
Figure 4.6: Activity Diagram for User Login ........................................................................................................ 48
Figure 4.7: Activity Diagram (Entire process) ...................................................................................................... 49
Figure 4.8: Class Diagram ..................................................................................................................................... 50
Figure 4.9: Sequence Diagram .............................................................................................................................. 51
Figure 4.10: Entity Relationship Diagram (E.R.D) ............................................................................................... 52
Figure 4.11: Data Flow Diagram (D.F.D) Level 0 (For Admin) ........................................................................... 53
Figure 4.12: Data Flow Diagram (D.F.D) Level 0 (For Student) .......................................................................... 54
Figure4.13: Data Flow Diagram (D.F.D) Level 0 (For Instructor) ....................................................................... 55
Figure 4.14: Data Flow Diagram (D.F.D) Level 1 (For Student) .......................................................................... 56
Figure 4.15: Data Flow Diagram (D.F.D) Level 1 (For Instructor) ...................................................................... 57
Figure 6.1: Voice Search ....................................................................................................................................... 67
Figure 8.1: Homepage ........................................................................................................................................... 77
Figure 8.2: User Login Page.................................................................................................................................. 77
Figure 8.3: User Signup Page ................................................................................................................................ 78
Figure 8.4: Student Signup Page ........................................................................................................................... 78
Figure 8.5: Teacher Signup Page........................................................................................................................... 79
Figure 8.6: Admin Dashboard Page ...................................................................................................................... 79
Figure 8.7: Programs Page .................................................................................................................................... 80
Figure 8.8: Department Page ................................................................................................................................. 80
Figure 8.9: Students Page ...................................................................................................................................... 81
Figure 8.10: Teachers Page ................................................................................................................................... 81
Figure 8.11: Uploaded Content List Page ............................................................................................................. 82
Figure 8.12: Student Dashboard Page ................................................................................................................... 82
Figure 8.13: Student Notification Page ................................................................................................................. 83
Figure 8.14: Student Message Page....................................................................................................................... 83
Figure 8.15: Student Uploading and Downloading Content Page......................................................................... 84
10 | P a g e
Figure 8.16: Student Assignment Submitting Page ............................................................................................... 84
Figure 8.17: Student Announcement Viewing Page ............................................................................................. 85
Figure 8.18: Teacher Dashboard Page................................................................................................................... 85
Figure 8.19: Teacher Content Uploading and Downloading Page ........................................................................ 86
Figure 8.20: Teacher Uploading and Downloading Page...................................................................................... 86
Figure 8.21: Teacher Announcements Creating Page ........................................................................................... 87

11 | P a g e
List of Tables

Table 2.1: User Classes and Characteristics .......................................................................................................... 23


Table 3.1: Software Requirements ........................................................................................................................ 29
Table 3.2: Hardware Requirements ....................................................................................................................... 29
Table 4.1: Use Case Registration .......................................................................................................................... 35
Table 4.2: Use Case Search Video Content........................................................................................................... 35
Table 4.3: Use Case View Video Content ............................................................................................................. 36
Table 4.4: Use Case Download Video Content ..................................................................................................... 36
Table 4.5: Use Case Login .................................................................................................................................... 37
Table 4.6: Use Case Search Content ..................................................................................................................... 37
Table 4.7: Use Case View Content........................................................................................................................ 38
Table 4.8: Use Case Upload Content .................................................................................................................... 38
Table 4.9: Use Case Download Content................................................................................................................ 39
Table 4.10: Use Case Create Class ........................................................................................................................ 39
Table 4.11: Use Case Add Courses ....................................................................................................................... 40
Table 4.12: Use Case Add Programs ..................................................................................................................... 40
Table 4,13: Use Case Add Instructor .................................................................................................................... 41
Table 4.14: Use Case Add Department ................................................................................................................. 41
Table 4.15: Use Case View Result ........................................................................................................................ 42
Table 4.16: Use Case Upload Result ..................................................................................................................... 42
Table 4.17: Use Case Upload Assignment ............................................................................................................ 43
Table 4.18: Use Case View Assignment ............................................................................................................... 43
Table 4.19: Use Case Join Class ........................................................................................................................... 44
Table 4.20: Use Case Create Announcement ........................................................................................................ 44
Table 4.21: Use Case Update Announcement ....................................................................................................... 45
Table 2.22: Use Case Delete Announcement ........................................................................................................ 45
Table 4.23: Use Case View Announcement .......................................................................................................... 46
Table 4..24: Use Case Logout ............................................................................................................................... 46
Table 5.1: Assignment Table................................................................................................................................. 61
Table 5.2: Class Table ........................................................................................................................................... 61
Table 5.3: Class Course Overview Table .............................................................................................................. 60
Table 5.4: Department Table ................................................................................................................................. 59
Table 5.5: Files Table ............................................................................................................................................ 61

12 | P a g e
Table 5.6: Message Table ...................................................................................................................................... 62
Table 5.7: Notification Table ................................................................................................................................ 61
Table 5.8: Notification Read Student Table ........................................................... Error! Bookmark not defined.
Table 5.9: Notification Read Teacher Table .......................................................... Error! Bookmark not defined.
Table 5.10: Year Table .......................................................................................................................................... 59
Table 5.11: Student Table ..................................................................................................................................... 59
Table 5.12: Student-Assignment Table ................................................................................................................. 61
Table 5.13: Subject Table ...................................................................................................................................... 60
Table 5.14: Teacher Table ..................................................................................................................................... 59
Table 5.15: Teacher Class Table ........................................................................................................................... 60
Table 5.16: Teacher-Announcement Table ........................................................................................................... 61
Table 5.17: Teacher-Class-Student Table ............................................................................................................. 61
Table 5.18: Teacher-Notification Table ................................................................................................................ 62
Table 5.19: Users Table......................................................................................................................................... 59
Table 7.1: Test Case of User Registration ............................................................................................................. 70
Table 7.2: Test Case of User Login ....................................................................................................................... 70
Table 7.3: Test Case of Admin Adding Teacher and Student ............................................................................... 70
Table 7.4: Test Case of Admin Adding Department ............................................................................................. 71
Table 7.5: Test Case of Admin Adding Program .................................................................................................. 71
Table 7.6: Test Case of User Viewing Content ..................................................................................................... 71
Table 7.7: Test Case of User Uploading Content .................................................................................................. 72
Table 7.8: Test Case of User Downloading Content ............................................................................................. 72
Table 7.9: Test Case of User Sending Message .................................................................................................... 72
Table 7.10: Test Case of User Receiving Message ............................................................................................... 73
Table 7.11: Test Case of Creating Announcements .............................................................................................. 73
Table 7.12: Test Case of Modifying Announcements ........................................................................................... 73
Table 7.13: Test Case of View Announcements ................................................................................................... 74
Table 7.14: Test Case of Deleting Announcements .............................................................................................. 74
Table 7.15: Test Case of Voice Search ................................................................................................................. 75
Table 7.16: Test Case of User Logout ................................................................................................................... 75

13 | P a g e
Chapter 01

Introduction to Proposed System

14 | P a g e
1.1 Introduction
Education provides a roadmap for the betterment of individuals as well as for the economic prosperity
of whole society. There are two modes of education, one is traditional learning like schools, colleges and
universities etc. and the other one is distance learning named as e-learning or digital learning. Traditional
fashion of learning is costly and backbreaking especially for physically challenged students (like deaf,
handicapped and blind), students facing challenges like shortage of time and other obligatory resources
to complete their education. E-learning provides a helping hand to students in situations, where it seems
to be impossible for them to get education. It provides an economical and hasty mode of learning as it
has equipped to deal with such circumstances.

In Pakistan like country where with a heavy heart; we have most horrible education signs worldwide i.e.
world’s 2nd highest number of children out of school are in Pakistan, approximately 5.1 million that is
1 in 12 of the world’s out-of-school children in 2010. We are spending very low on education i.e. 7
times more budget is reserved for military than on primary education, where we have widespread
education dissimilarities in the world i.e. In 2007, one quarter of 7-16-year-olds had never been to school,
with extensive differences by region, wealth, status and gender., where neglecting children’s education
is among top worst countries i.e. in the Education Development Index Pakistan ranks 113 out of 120
countries, where 13% of girls and 11% of boys do not go to schools because schools are far away from
their homes, where 34% of girls and 6% of boys do not study because of family restrictions, where people
living in poverty every so often depend on their kids to contribute to the family’s income and they do not
allow them to get education instead, where 15% of girls do not study because of educational expenses
while 19% boys are facing such challenges and many more serious issues are there, in such places it is
only e-learning which could impede all such tribulations and pains by providing every student equal
chances of gaining information from wide sea of knowledge.

With the passage of time and advancement in technology especially with the advent of websites
delivering educational content online, e-learning has groomed much in last few decades. As, these
systems make best use of audio and visual aids to enhance learning-teaching interactions between
students and instructors; providing a set of teaching tools which enable media-rich instructions and
motivations for the students to learn better, faster and to retain information longer.

Students have many things to do in parallel therefore it is unrealistic for them to sit in library for study
purpose all the time. Teachers face problems in delivering and students in getting the course relevant
materials such as slides, notes, video lectures, assignment and quiz announcements etc. This thing
motivated us to build a system which could impede all such tribulations and provide a smoother way of
learning.

15 | P a g e
1.2 Existing Systems

After the origination of Internet and World Wide Web, the world has been converted to a global village.
In past, it was very challenging to share knowledge worldwide but nowadays it is very stress-free to
share and learn by using the Internet. Internet has supported education a lot by familiarizing us with the
concept of e-learning based Education Management Systems (EMS). Technology has transformed the
scenarios within teaching and learning as classes which earlier to the digital era were limited to lectures,
talks and physical objects, no longer have to be considered in that manner. Teachers and students now
have digital computes to teach and learn from online available resources like digital textbooks and other
online platforms, we term all it as digital education.

It is expected that the market of online education management systems will cost over $15.72 billion in
new future. It is more than obvious that e-learning has modernized and transformed the way that we look
at knowledge and skill earning. Thereby, there is a growing demand for Education Management
Systems to systematically deploy and manage e-learning; having many features to choose from, that’s
why we can definitely say that Education Management Systems are here to stay!
Students have also shown willingness to embrace digital learning technologies and practices. According
to a survey held in 2015, nearly 49% of the students indicated that they have taken at least one course in
last few months using these online modes of education.
There are thousands of such systems available today like Litmos, Create LMS, Totara Learn, eFront,
BizLibrary, Google Class Room, Moodle, iTunes U, Edmodo, Easy LMS, OpenEdX, NEO LMS and
many more due to which it is expected that half of all colleges will be e-learning-based by 2020.

1.3 Limitations of Existing Systems

Software is something which simplifies tasks and makes it easier to run colleges and higher education
institutions like universities, but frequently it becomes a source of hassle and expense only. The proper
online education system helps institutes to manage education process, track students’ progress by
generating their performance reports, notify stakeholders in real-time, class management and provide
user friendly environment. While selecting the wrong software can throw the education system into a bin
that will be at unnecessary cost, time-consuming and counter-productive.

Similarly, if all existing systems have some benefits, then they also have some limitations as well. These
systems provide an interface where we type something from our keyboard and they respond relevantly.
For students with some disabilities (like if they are blind, deaf, hearing impairments, low vision or
handicapped) it is almost impossible for them to interact with these systems. Because some of the
students especially physically challenged students were not treated like other learners, this thing originate
a feeling of diffidence in them. Keeping all this in mind we thought that at least we have to try our best
to reduce some of their pains and pangs. These were some prominent factors, which influenced us to this
system.

16 | P a g e
Chapter 02

Proposed System
2.1 Problem Statement

Traditional learning is difficult and time consuming for students as they must be present all the time in
the class room to know about announcements regarding quizzes, assignments, class schedules and all
other class activities. Physically challenged students are not entertained properly while developing such
systems, considering their all misfortunes they may face. This system will help every student to access
these facilities online.

2.2 Proposed System

In this study we will apply different learning methods to get an optimal teaching and learning approach.
This approach will integrate e-learning, traditional learning and other educational assistive technologies
to hinder all weaknesses of students they face in traditional learning.

One method is developing a web-oriented system which faculty and students of an institute can use for
file sharing by. It will be useful as students and faculty both can access files from anywhere. This system
will work both for registered and unregistered users. Unregistered users will visit the website and be able
to see events details and also they could watch and download all available video lectures. To login, users
will have to enter their username usually registration number for students and employee id for admin and
instructors and their password. Admin will create the class, courses and add respective instructors.

Instructor will upload course content, make announcements (students will be notified by an alert
message), mark their assignments and quizzes, at the end of semester they will upload the results and
attendance of entire class. When a video lecture will be played, systems will automatically generate
subtitles of the lecture to enhance readability and understanding of the lecture.

To make disable students equally able to use the system, audio recognition feature will be added so that
they could command by just speaking without having any mouse or keyboard in hand. This system will
make teacher and student interactions easy and will allow students to participate in each of their class
activity even not being inside the class. Students will be capable to directly send and receive messages
to their teachers and class fellows to discuss any query related to the course.

Admin will have a dashboard panel which will be helpful for him to find out that how many users are
currently using the system. Students will be able to upload their assignments within a due date and they
will also be able to see their class fellows and course offered by the department.

18 | P a g e
Search Video Content

VISITORS
Upload
content and
Verification
Group Co
nte
Creation nt

irm
Up

nf
loa

Co
din
g

Publish the Content


ADMIN Login Details
DATABASE

Upload
Confirm

rify
Ve

View/
Login to
INSTRUCTOR Login Details Link, URL, Search Download
Account
Content

STUDENT
Login Details

Figure 2.1: Block diagram

2.3 Scope of the System

This study aims to build a system that is necessary for students when they are facing challenges like
shortage of time and they have to prepare for exams. In such situations it would be feasible for them to
have all helping material available at single location. Main objective of this project is to promote a user-
friendly, efficient and safe way for instructors to upload, students to download and view files of every
course without being physically present at the university.

19 | P a g e
2.4 Objectives

Main objective of this study is to build a system which will help students by providing them their study
material online. Primarily this study intends to;
 Develop an efficient system for uploading and downloading of every course related material.
 To make use of e-learning very easy for each user
 Secure All Data
 Transform IT for Higher Education
 Increase Efficiencies and Reduce Costs
 Make easy Account Maintenance
 Make the user of the database enable to see all information.
 Make easy implemented routine for students and teachers.
 Provide easy solution
 Develop a system which will work like many other systems with some additional features like
voice search also allowing them to save video lectures so that they will be able to watch it later
when needed along with their subtitle files.

2.5 Overview of Proposed System

In this system users will be divided in two types. First those who will be authorized to upload something
on the website and second those who have restrictions. Before publishing something onto the website
users will be authenticated against their accounts; only verified users would be allowed to take
administrative actions such as publishing something onto the system.
Additional features will be provided, like quiz and assignment announcements also generating and
sending an alert message to students after their announcement automatically, public and private
directories, special privileges to students and faculty, restrictions on content’ visibility, uploading
attendance, results, assignments and other course relevant material, downloading the content, grading
the assignments and viewing the results, final analytical reports of the class performance. It will take
audio as input from video lectures converting and showing it in a side window in text format; enhancing
visualization and understanding of the lecture.

20 | P a g e
Visitor Search, view, Account Details Content uploading,
INSTRUCTOR
download Video Task Scheduling, Creating class,
Content Grading, Send and Receive
Messages

Video Content

Account Verification
Available Contents Education management
System
Account Details, Downloading
Material, Assignment Submission,
View Result and Announcements, Send
and Receive Messages

Class and Admin


Activities Account Verification,
Management Available Content
ADMIN STUDENT

Figure 2.2: Context diagram

2.6 Modules of Proposed System


2.6.1 Registration
 Student
 Teacher
 Admin

2.6.2 Admin
 Verification (Uploaded Content)
 Responsible for taking administrative actions

2.6.3 Student
 Join class
 View Uploaded Content
 View announcements, results and reports
 Upload assignments
 Download uploaded content

21 | P a g e
2.6.4 Teacher
 Make announcements
 Add Class
 Upload content
 Mark result of assignments
 Share links of online video lectures

2.6.5 Login
 User name
 Pin code

2.6.6 Manage Class


 Add instructor
 Create class
 Add Department
 Add Programs
 Create courses
 Update status

2.6.7 Upload
 Assignments
 Other course content
 Results

2.6.8 Manage announcements


 Create
 Update
 Notify student
 Delete
 View

22 | P a g e
Table 2.1: User Classes and Characteristics

Sr. User Category Role

 Uploading content,
 Making announcements,
01
Instructor  Grading assignments
 Generating reports

 Uploading assignment
Student  Downloading
02
 Exploring course content.

 Class creation
 Course creation
Admin
03  Adding instructors
 Adding Department

 Exploring the website


04 Visitor  Watch video lectures
 Download video lectures

2.7 Advantages of Proposed System

Students can get access to every course material in the fastest time in several varying formats. If students
have access to the internet, they can train themselves anytime from anywhere. Every student, who is part
time student or is working full time, can take benefit. It is a very suitable and flexible opportunity; most
of all, students don't have to depend on anyone for anything. Not only they can train themselves on a day
to day basis, but additionally on weekends or whenever they have the free time. There is no hard and fast
rule. This system will also be beneficial for the instructors by the follow-up of students, share course
material, announce quizzes, assignments and evaluate student performance. Students can rewind, stop
and watch lectures later if they do not understand the topic very first time.

23 | P a g e
2.8 Assumptions and Dependencies

Everything around the world is composed of many other sub modules and entities which are dependent
on each other and performs a required functionality coordinating with each other. Similarly, here in this
system each function will be performed using many modules at the same time. By the way a good internet
connection and a microphone will be most essential obsessions of this system.

24 | P a g e
Chapter 03

Requirement Analysis

25 | P a g e
3.1 Introduction

Requirement analysis is one of the most sensitive process in Software Development Life Cycle (SDLC).
Different tasks are led to ascertain various needs of stakeholders of the system that is to be
built or reformed. In this process user gathers, examines, outline and document the requirements that
are associated to a specific business objective. These requirements may be functional and nonfunctional
requirements, user requirements, software/hardware requirements or business requirements etc. From
these, high-grade requirements are extracted which are actionable, quantifiable, testable
and observable. These requirements are then documented to help to recognize business
opportunities and to facilitate system design. Requirements analysis is conducted iteratively to
improve requirements for documented functions, and to verify that product can satisfy to customer.
Effective requirement analysis encompasses four types of activities.

3.1.1 Requirement Elicitation


In this step we collect requirements by communicating with all stakeholders of the system that is to be
built or enhanced like students, faculty, staff or common users (parents).

3.1.2 Requirement Analysis


It supports to decide the quality of the requirements, ascertaining whether the
requirements are uncertain, incomplete, ambiguous, and contradictory. These problems
must be resolved before moving to the next step.

3.1.3 Requirement Modeling


In this step requirements are frequently documented in different formats such as use
cases, user stories, natural-language documents, or process specification.

3.1.4 Reviews
This step is conducted to make enhancements in the process going forward.

3.2 Stakeholder Requirements

Stakeholder requirements describe ‘what’ the customer need the output product to have. These
requirements are important to understand because stakeholders does not state that how their requirements
will be implemented but they just give an idea of what they require from the final product. As a Business
Analyst we must safeguard against these requirement statements at initial stages of the project, which
describe “how” to deliver all these requirements. For example, our stakeholder requires that each
department must have an admin to manage all activities of the department, students must be notified
when a new announcement is made by the instructor of the course or any audio or video lecture which is
to be played must also show its transcription along. Stakeholders assume you know that they needs an
admin panel, student notification and video transcription and all they are concerned with is how it will
look. We must keep this in mind when we speak to our stakeholders in future about their requirements.

26 | P a g e
3.3 Solution Requirements

Example 1: “I want to have an admin panel for each department” – Stakeholder raising this requirement
is from administration.

Example 2: “I want to generate result and attendance report of students” – Stakeholder raising this
requirement is the instructor of the course.

Example 3: “I want to be notified by an alert message whenever a new announcement is made” –


Stakeholder raising this requirement is the student.

Solution Requirement Example 4: “The admin panel must have a dashboard.” – Stakeholder who raised
this requirement is the admin of a department.

These requirements define ‘how’ the stakeholders want that their requirements should be implemented.
Here the stakeholder requirements are concerned of having an admin panel, has now been prolonged
with more detailed solution requirements involving how these requirements must be implemented. Take
note here that with advancement our requirements analysis is digging into more specific and detailed
requirements.

Some requirements may have been specified and documented but it is quite possible that they may be
reflected as inacceptable all through a requirement validation session with all stakeholders within the
room. It is good to capture all requirements, but it is more essential to validate and ensure that each one
stakeholder agree about which requirements are in fact valid. In this situation, the validation criteria may
include budget, time and scope limitations, which may be the reason why the instructor cannot have
reports after all.

3.3.1 Functional Requirements

Different tasks that we want a system to accomplish are usually defined as functional requirements. An
easy way to remember this type requirements is to consider what we want from our system to be capable
of. In this context, an example of our system would be that a functional requirement exists to have video
lectures, which can have transcriptions, be watched and saved but not allowing everyone to upload them.
This is something that we want the system to be able to perform. The major inputs, outputs and significant
jobs of the system are as follows:

o User enters his user_id and password for login.


o Only instructors can upload data (videos, books, slides and announcements etc.) while students
can only view with a special permission to upload their assignments only.
o Only admin is privileged to create class, add courses, students and assign instructors to each
course.

27 | P a g e
o Instructors will made announcements regarding quizzes, assignments or class rescheduling etc.
and students will be notified by an alert message.
o Students can only view their grades and then send their queries to the respective teacher within a
specified time.
o Admin will have a dashboard to check how many students and instructors have joined the course
and class etc.
o Users can use the feature of voice search to find the lectures available in the directory.
o Students can see and chat with their class fellows.
o There may be a lot more.

3.3.2 Nonfunctional Requirements

The non-functional requirement defines the features that you want the system to have. In the scenario of
our system it would be a non-functional requirement relating the need to have a backup-system installed
to be used in the happening of a disaster to avoid unnecessary data loss. The non-functional type of
solution requirement therefore defines the attributes a system or process should possess and not a
function that the system must perform. Significant nonfictional requirements of the system are as follows:

o The system shall protect the privacy of all users using the system.
o The system shall stop access to abortive functions while providing access to all presently
working functions.
o The system should be available 24‐hours a day but in case of any failure and maintenance it
shall not be shut down more than once in a 24‐hour period.
o The system must be able to interface with any HTML (Hypertext Markup Language) browser.
o Except the system is non‐operational, the system shall present a user with notification
informing them that the system is inaccessible.
o And there may be many others.

28 | P a g e
3.4 Software Requirements

Table 3.: Software Requirements

Operating system Microsoft Windows 7/ Windows 8/Windows 10

Environment Any web browser like Chrome, Mozilla or Baidu etc.

Browser version Latest version is preferred

Coding platform Microsoft Visual Studio Code

Code editor Notepad++, Notepad

Database Design Tool MySQL Workbench, XAMPP

Web server XAMPP

Diagramming tool Microsoft Visio

3.5 Hardware Requirements

Table 2.2: Hardware Requirements

System 32/64-bit operating system

RAM 4GB or above

Processor 1.9 GHz or higher

Internet 4Mbps or above

Mic Active Mic is required

29 | P a g e
Chapter 04

System Analysis and Design

30 | P a g e
4.1 Introduction

System analysis and design is primarily gathering, analyzing, and validating the information about the
system as well as defining the requirements and prototypes of the system. Before designing a new system,
we verify the alternatives and prioritize our requirements. On the basis of these requirements we inspect
the information needs of end-user and then on need we enhance the system goal line. A Software
Requirement Specification (SRS) document, which postulates the software, hardware, functional, and
network requirements of the system is prepared at the end of this phase to start design.
When SRS is finalized then we made the design of application, network, databases, user interfaces, and
system interfaces. We convert the SRS document into logical structure, which holds detailed and
complete set of specifications that can be implemented in a programming language. At the end, proposed
design is reviewed to confirm that final design meets the requirements specified in SRS document.
Finally, a design document is prepared which is used during next phases. To explain the system, we use
different kind of diagrams which are:

4.2 Use Case Diagram

It is a graphical representation of the relations between the components of a system. It is a run-through


used in system analysis to ascertain, make clear, and unify the system requirements. It holds four
constituents. The boundary, which defines the system of concern in relative to the world around it. Actors
are basically characters involved in the system. Use cases, which specific parts played by the actors and
relationships between actors and use cases.

Registration

Search Video
Content

View Video Content

VISITOR

Download Video
Content

Figure 4.1: Use Case Diagram of Visitor

31 | P a g e
Registration

Login

Create Class

Add Department

Add Courses

ADMIN Add Instructor

Add Year/Session

Sign Out

Figure 4.2: Use Case Diagram of Admin

32 | P a g e
Registration

Login

Search Content

View Content

Upload Content

Download Content

STUDENT

Join Class

View Result

Upload Assignment

Sign Out

Figure 4.3: Use Case Diagram of Student

33 | P a g e
Registration

Login

View Content

Upload Content

Create Annoucements

View Annoucements

Update Annoucements

INSTRUCTOR
Delete
Annoucements

Upload Result

View Result

View Assignments

Join Class

Sign Out

Figure 4.4: Use Case Diagram of Instructor


34 | P a g e
Table 3.1: Use Case Registration

Use Case ID 01

Use Case Name Registration

Actor Admin, Instructor, Student

Description User accesses the website and register.

Pre-Condition User accesses the website.

Post Condition User successfully registers.

User accesses the website, clicks on “Register Yourself” and provides


Basic Flow
required details to create an account.

Exceptional Flow Registration unsuccessful.

Table 4.2: Use Case Search Video Content

Use Case ID 02

Use Case Name Search

Actor Visitor, Admin, Instructor, Student

Description User can search the content.

Pre-Condition User accesses the website.

Post Condition User can acquire relevant content as per the query.

Basic Flow User enters the query in search bar and gets relevant content.

Exceptional Flow Content not available, incorrect query.

35 | P a g e
Table 4.3: Use Case View Video Content

Use Case ID 03

Use Case Name Watch Video Content

Actor Visitors

Description User watches the video lectures.

Pre-Condition User accesses the website.

Post Condition User can view and acquire relevant content.

Basic Flow User can scroll down to find the content manually.

Exceptional Flow Content not available.

Table 4.4: Use Case Download Video Content

Use Case ID 04

Use Case Name Download Video Content

Actor Visitors

Description User can download the content.

Pre-Condition User can download all available content.

Post Condition User provides destination path.

Select the content user want to download, providing destination path and
Basic Flow
hit download button.

Exceptional Flow Downloading failed.

36 | P a g e
Table 4.5: Use Case Login

Use Case ID 05

Use Case Name Login

Actor Admin, Instructor, Student

Description User login to his/her account by providing user id and password.

Pre-Condition User accesses the website, login.

Post Condition User can then access the account.

User accesses the website, click on “Login”, and provide user id and
Basic Flow
password to access the account.

Exceptional Flow Unregistered account, unsuccessful login, incorrect user id and password.

Table 4.6: Use Case Search Content

Use Case ID 06

Use Case Name Search Content

Actor Student, Instructor

Description User can search the content.

Pre-Condition Successful login.

Post Condition User can acquire relevant content as per the query.

Basic Flow User enters the query in search bar and gets relevant content.

Exceptional Flow Content not available, incorrect query.

37 | P a g e
Table 4.7: Use Case View Content

Use Case ID 07

Use Case Name View Content

Actor Student, Instructor

Description User can view the content.

Pre-Condition Successful login.

Post Condition User can view and acquire relevant content.

Basic Flow User can scroll down to find the content manually.

Exceptional Flow Content not available.

Table 4.8: Use Case Upload Content

Use Case ID 08

Use Case Name Upload Content

Actor Instructor, Student

Description User can upload course relevant content.

Pre-Condition User provides basic details about the content he/she is uploading.

Post Condition User uploads the content.

User clicks on upload button, provide details about the content after
Basic Flow
selection and the click on share button to share in the class.
Error in uploading content because of uploading unauthorized content or
Exceptional Flow
uploading failed.

38 | P a g e
Table 4.9: Use Case Download Content

Use Case ID 09

Use Case Name Download Content

Actor Student, Instructor

Description User can download the content.

Pre-Condition User can download all available content.

Post Condition User provides destination path.

Select the content user want to download, providing destination path and
Basic Flow
hit download button.

Exceptional Flow Downloading failed.

Table 4.10: Use Case Create Class

Use Case ID 10

Use Case Name Create Class

Actor Admin

Description Admin can create the class for course relevant activities.

Pre-Condition Successful login.

Post Condition Successfully class created.

After login, admin is provided with the option to create the class, by
Basic Flow clicking the class creation option he provide all necessary information
about the class and click ok button.

Exceptional Flow Unsuccessful operation.

39 | P a g e
Table 4.11: Use Case Add Courses

Use Case ID 11

Use Case Name Add Courses

Actor Admin

Description Admin adds courses in class created

Pre-Condition Admin successfully creates class.

Post Condition Admin successfully add courses of a class.

Admin after creating class, clicks on add courses and enter the names of
Basic Flow
all courses then hit ok button

Exceptional Flow Unsuccessful operation.

Table 4.12: Use Case Add Programs

Use Case ID 12

Use Case Name Add Programs

Actor Admin

Description Admin adds the programs i-e. BS/MS/PHD

Pre-Condition Successful login to admin account.

Post Condition Admin successfully added program.

Basic Flow Admin after login, clicks on programs section and enters the program.

Exceptional Flow No request found.

40 | P a g e
Table 4.13: Use Case Add Instructor

Use Case ID 13

Use Case Name Add Instructor

Actor Admin

Description Admin adds instructor.

Pre-Condition Successful login to admin account.

Post Condition Admin successfully assign instructors.

Admin after login, clicks on teachers’ section and enters the teachers
Basic Flow
name.

Exceptional Flow Unsuccessful operation.

Table 4.14: Use Case Add Department

Use Case ID 14

Use Case Name Add Department

Actor Admin

Description Admin adds department.

Pre-Condition Successful login to admin account.

Post Condition Admin successfully adds department.

Admin after login, clicks on department section and enters the department
Basic Flow
name and person in charge name.

Exceptional Flow Unsuccessful operation.

41 | P a g e
Table 4.15: Use Case View Result

Use Case ID 15

Use Case Name View Result

Actor Student, Instructor

Description User can view the result.

Pre-Condition Instructor has uploaded the result.

Post Condition User can view result.

Basic Flow User can go to result section to view the result manually.

Exceptional Flow Result not uploaded by instructor.

Table 4.16: Use Case Upload Result

Use Case ID 16

Use Case Name Upload Result

Actor Instructor

Description Instructor can upload the result.

Pre-Condition Instructor has assigned the marks.

Post Condition User can view result.

Basic Flow User can go to assignment section to upload marks the manually.

Exceptional Flow Marks not assigned by instructor.

42 | P a g e
Table 4.17: Use Case Upload Assignment

Use Case ID 17

Use Case Name Upload Assignment

Actor Student

Description User can upload assignments for the relevant course.

Pre-Condition User provides name for the assignment he/she is uploading.

Post Condition User uploads the assignment.

User clicks on upload button, provide name for the assignment and then
Basic Flow
click on send button to send to the instructor.

Exceptional Flow Uploading failed.

Table 4.18: Use Case View Assignment

Use Case ID 18

Use Case Name View Assignment

Actor Instructor

Description User can view assignments sent by students.

Pre-Condition Successful login.

Post Condition User views the assignment.

Instructor clicks on assignment folder option and then he can see all of the
Basic Flow
available assignments.

Exceptional Flow Assignments not available.

43 | P a g e
Table 4.19: Use Case Join Class

Use Case ID 19

Use Case Name Join Class

Actor Student, Instructor

Description User can join the class.

Pre-Condition Successful login.

Post Condition User searches for the class and then join the class.

After logging into the system, click on join class, choose class and then
Basic Flow
press the ok button

Exceptional Flow Class not available.

Table 4.20: Use Case Create Announcement

Use Case ID 20

Use Case Name Create Announcement

Actor Instructor

User can create announcement regarding informing students for class


Description
activity.

Pre-Condition Successful login.

Post Condition User creates the announcement then share in class.

Instructor clicks on announcements section, provide some description


Basic Flow
about the announcement, and post it in the class.

Exceptional Flow Announcements not created successfully.

44 | P a g e
Table 4.21: Use Case Update Announcement

Use Case ID 21

Use Case Name Update Announcement

Actor Instructor

Description User can update announcement.

Pre-Condition User must have created the announcement.

Post Condition User edits the announcement, and then shares it in class.

If instructor wants to make some change in the announcement then he


Basic Flow
clicks on the update button and changes it.

Exceptional Flow Announcement not available.

Table 4.22: Use Case Delete Announcement

Use Case ID 22

Use Case Name Delete Announcement

Actor Instructor

Description User can delete announcement.

Pre-Condition User must have created the announcement.

Post Condition User deletes the announcement.

If instructor wants to delete the announcement, he clicks on the delete


Basic Flow
button to remove that announcement.

Exceptional Flow Announcement not available.

45 | P a g e
Table 4.23: Use Case View Announcement

Use Case ID 23

Use Case Name View Announcement

Actor Instructor, Student

Description User can view announcement.

Pre-Condition User must have created the announcement.

Post Condition User views the announcement.

Users are notified by an alert message about the announcement, even if


Basic Flow they want to see that announcement then can simply go to their class
option and see it there.

Exceptional Flow Announcement not available.

Table 4.24: Use Case Logout

Use Case ID 24

Use Case Name Logout

Actor Admin, Instructor, Student

Description User logout from the account.

Pre-Condition User must have logged in to the account.

Post Condition User destroy their session when they logout.

Basic Flow Users clicks on logout button.

Exceptional Flow If the user doesn’t click on logout button, session is not destroyed.

46 | P a g e
4.2 Activity Diagram

Activity diagram is another significant diagram in UML to define the vibrant features of the system.
Activity diagram is mainly a flowchart to symbolize the flow from one activity to another activity.
Activity by itself can be termed as an operation of the system. The control flow is drawn from one
operation to another. This flow can be progressive, diverged, or parallel. Activity diagrams deal with all
type of flow control by using diverse elements such as fork, join, etc.

Provide Details

Veriy_User_ID

Incorrect_Details
Not Valid
User_ID_Already_Taken

Valid

Verify_Every_Field

Not Valid

Valid

User_Registered

Login_Page

Figure 4.5: Activity Diagram for User Registration

47 | P a g e
Provide_User_ID, Password

Veriy_User_ID, Password

Not Valid

Valid

Login_Successful

Homepage

Figure 4.6: Activity Diagram for User Login

48 | P a g e
Main Page

Login as Instructor Login as Student Login as Admin No

No
No
Yes
Yes Yes

Add View
Upload Manage Join
Upload View / Download View
Join Send/Receive
Send/Receive

Class
Programs
Content Result Class
Result
Class Courses Department
Announcements Content Messages
Messages
Announcements
Content

Figure 4.7: Activity Diagram (Entire process)

49 | P a g e
4.3 Class Diagram

Class diagram represents the static view of an application. Class diagram is not only used for picturing,
relating, and recording different features of a system but also for making executable code of the software
application.

Class diagram defines the attributes and operations of a class and also the restrictions enforced on the
system. The class diagrams are extensively used in displaying the object-oriented systems for the reason
that they are the only UML diagrams, which can be plotted directly with object-oriented languages. Class
diagram shows a group of classes, interfaces, relations, alliances, and constraints. It is also identified as
a structural diagram.

Users

Register_Users
Unregistered_User
-user_id : int
-user_name : string
-email : string +search_videos() : void
-phone_no : int +register() : void
-dept : string
-user_password : int
+register() : void
Admin Class
-user_id : int -class_id : int
-user_name : string -class_name : string
-dept : string
Login +create_class() : void
+add_courses() : void
-user_id : int
+assign_teachers() : void
-user_password : int
+add_dept() : void
+login() : void

Course
-course_id : int
Result -course_name : string
Student
-user_id : int Instructor
-user_name : string +upload_result() -user_id : int
-dept : string +view_result() -user_name : string
+view_courses() : void +view_courses() : void
+view_content_of_course() : void +view_content() : void
+join_class() : void +view_assignments() : void
+upload_assignment() : void +upload_content() : void
+view_result() : void +upload_result() : void
+view_A() : void +manage_annoucements() : object Content
+view_P() : void -content_id : int
+view__annoucenment() : void -content_name : string
-content_description : string
-file_type

Annoucenments
-id : int
-name : string
-description : string
+create_annoucenment() : void
+update_annoucenment() : void
+delete_annoucenment() : void
+view_annoucenment() : void

Figure 4.8: Class Diagram

50 | P a g e
4.4 Sequence Diagram

Annoucement Assignment Content Student Course Instructor Class Admin Result

create_class()

created

add_courses()

courses_added

add_teachers()

added

view_courses()
add_class()
course_list
added
upload_content()

uploaded

add_student()

added
view_courses()

course_list

view_content_of_courses()

content_list
join_class()

approved

upload_content()

uploaded

create_announcement()
students_notified()

upload_assignment()

uploaded

view_assignment()

shown
upload_result()

uploaded

view_result()

displayed

manage_annoucenments()

successful

Figure 4.9: Sequence Diagram

51 | P a g e
4.5 Entity Relationship Diagram (E.R.D)

An ER diagram displays the affiliation amid entity sets. An entity set is a collection of alike entities and
these entities can have attributes. In terms of DBMS, an entity is a table or attribute of a table in database,
so by displaying relationship between tables and their attributes, ER diagram displays comprehensive
logical structure of a database.

Figure 4.10: Entity Relationship Diagram (E.R.D)

52 | P a g e
4.6 Data Flow Diagram (D.F.D)

Data flow diagrams are used to realistically symbolize the flow of data in an information system. DFD
defines the routes that are involved in a system to handover data from the input to the file storage and
reports generation. Data flow diagrams can be alienated into logical and physical. The logical data flow
diagram defines flow of data through a system to execute certain functionality of a business. The physical
data flow diagram defines the employment of the logical data flow.

Add Teacher, Added


ADMIN Add teacher, student
Student

Class Created
Create Class Class

Added
Add Dept Department

View Content
Viewed
Content

Figure 4.11: Data Flow Diagram (D.F.D) Level 0 (For Admin)

53 | P a g e
Uploaded
Assignments

Upload Assignments
View / Content Displayed
Download Content
Content Details
Database
Content Name

Content Details

Content Details Content Uploaded


STUDENT Upload Content

Join Class

Class Joined
Class
View Result

Send/Receive Msg
Result Shown
Result

Sent/Received
Message

Figure 4.12: Data Flow Diagram (D.F.D) Level 0 (For Student)

54 | P a g e
Content Displayed
Content Name View Content
Content Details
Database
Content Details

Content Uploaded
Content Details Upload Content

INSTRUCTOR Send/Receive Msg


Message Sent/Received

Students Notified
Make Announcements Announcement

Result Marked
Mark Result Result

View Assignment
Shown
Assignments

Add Class

Added
Class

Figure4.13: Data Flow Diagram (D.F.D) Level 0 (For Instructor)

55 | P a g e
Result

Result
Displayed
Result

Login
Course
View Result
Login Details Course List

User ID Course Course


Select
STUDENT Password
Login Details
Course
Name
Content

Invalid
Login
Content List

Content Details Content


Content Upload
Send / Receive msg Content Viewed /
Uploading to Uploaded (teacher/classmate) Select Name View/ Downloaded
Database Content Download

Sent / Received
Message

Figure 4.14: Data Flow Diagram (D.F.D) Level 1 (For Student)

56 | P a g e
Result

Students
Announcem Notified
Result
ent Marked
Result

Make Announcements
Login

Login Mark Result Upload


Details Content
Course List
Course

User ID Course Add Content


Password Select Uploading to Uploaded
INSTRUCTOR Login Details
Course
Details
Database

Msg Received
Course
Invalid Login
Name

Viewed / Replied
Message Content

Content Content
List

Content
Select Name View Viewed
Content Content

Figure 4.15: Data Flow Diagram (D.F.D) Level 1 (For Instructor)

57 | P a g e
Chapter 05

Relational Schema

58 | P a g e
5.1 Introduction

A relational schema for a database is a framework of how data is structured. It can be a graphic illustration
or another kind of chart used by programmers to understand how each table is laid out, including the
columns and the types of data they hold and how tables connect.
A database schema usually specifies which columns are primary keys in tables and which other columns
have special constraints such as being required to have unique values in each record. It also usually
specifies which columns in which tables contain references to data in other tables, often by including
primary keys from other table records so that rows can be easily joined.

Table 5.1: Users Table


Table 5.3: Teacher Table

Table 5.2: Student Table

Table 5.4: Department Table

59 | P a g e
Table 5.5: Year Table Table 5.9: Contents Table

Table 5.6: Class Table


Table 5.10: Files Table

Table 5.7: Class Course Overview Table

Table 5.11: Teacher Class Table

Table 5.8: Subject Table

60 | P a g e
Table 5.12: Teacher-Class-Student Table Table 516: Student-Assignment Table

Table 5.13: Teacher Shared Table

Table 5.17: Teacher-Announcement Table

Table 5.14: Class Quiz Table

Table 5.18: Notification Table

Table 5.15: Assignment Table

Table 5.19: Notification Read Table

61 | P a g e
Table 5.20: Message Table Table 5.12: Teacher-Notification Table

Table 5.23: Events Table


Table 5.21: Message Sent Table

62 | P a g e
Chapter 06

Tools and Technologies

63 | P a g e
6.1 Introduction

Subsequently completing the design stage, we step forward to implementation phase to transform our
design into an executable and working product. Implementation is basically grasping the technical
requirements of the system and then deploying them using various tools and technologies available at
large extent in the world of internet. As we know that this system is web based, so it is needed to decide
which tools and technologies we have to opt for system development. In this chapter we will discuss
about all possible options necessary for development and deployment of the system and which
programming languages and tools we have used throughout the implementation phase.

6.2 Tools and Technologies

It may not be a tough task for an experienced developer to choose from a never-ending list of tools and
technologies, but for a beginner having no experience in the field, surely it becomes a grim task. Having
some knowledge and research about various technologies, we will now be using different kind of
software’s, languages, web browser, servers and database management tools for the development of this
system. Tool that I will be using for developing this system are Microsoft Visual Code, tools through
which our database is designed and managed are MySQL Workbench and XAMPP, Windows 2007 or
above as operating system, XAMPP as server and Microsoft Visio as diagraming tool. To make it
compatible with environment in which it is running, accessible to all users, making fast load times,
achieving Browser Consistency, Effective Navigation, user friendly interface, Good Error Handling, and
user-friendly color contrasts; I have chosen distinguished languages of their time like PHP, HTML,
JavaScript, Bootstrap, jQuery and SQL etc. This system will be used on mobile phones, laptops, desktops
etc. having a good internet connection and an active Microphone to use voice search feature.

6.2.1 Microsoft Visual studio Code

Visual Studio Code is a source-code editor developed by Microsoft for Windows, Linux and macOS. It
includes support for debugging, GitHub, syntax highlighting, intelligent code completion, snippets,
and code refactoring. It is highly customizable, allowing users to change the theme, keyboard shortcuts,
preferences, and install extensions that add additional functionality. In the Stack Overflow 2019
Developer Survey, Visual Studio Code was ranked the most widespread developer environment tool,
with 50.7% of 87,317 respondents claiming to use it.

6.2.2 MySQL Workbench

MySQL Workbench is an integrated graphical tool for database designers, developers, and DBAs as it
works without a glitch for various web development and designing tasks. MySQL Workbench relief’s
users with development, design, database migration, database administration and performance
improvement. No matter what device you’re working on, MySQL Workbench promises to be a top-
contender in management of MySQL databases. The MySQL developer tools team declares 8.0.16 as
their general available (GA) for MySQL Workbench 8.0 on April 25, 2019.
64 | P a g e
6.2.3 XAMPP

XAMPP is most dominant, free an open source cross-platform which is one solution to run your web
services. XAMPP is developed by Apache Friends and released in May 2002. XAMPP Stands for Cross
Platform(X), Apache (A), and MySQL (M) also Sometimes (M) refers to Maria DB, PHP (P) and Pearl
(P).
Where, Cross-platform means it is accessible to multiple operating systems like, windows, Linux and
MacOS. Generally, PHP developers prefer XAMPP tool while developing their web applications or
projects. XAMPP tool offers easiest solution to run server and database which is of assistance for web
developers to host their web application locally.

6.2.4 Microsoft Visio

Microsoft Office Visio is a diagramming and vector graphics application and is part of the Microsoft
Office family. It was initially hosted in 1992 by the Shapeware Corporation. Later on, it was developed
by Microsoft in 2000. Microsoft released their latest version v16.0; Standard and Professional in 2019.

6.2.5 PHP

It was originally created by Rasmus Lerdorf in 1994 and now it is produced by The PHP Group. PHP
initially stood for Personal Home Page, but now it stands for the PHP: Hypertext Preprocessor. It is a
widely-used open source general-purpose scripting language that is specifically apposite for web
development and can be implanted into HTML.

6.2.6 HTML

HTML was developed by WHATWG in 1993. It is the standard markup language for making Web pages.
It stands for Hyper Text Markup Language and styles the structure of a Web page which consists of a
series of HTML elements. These elements tell the browser how to display the content and are represented
by different tags. These tags label pieces of content such as "heading", "paragraph", and “table. Browsers
use these tags to render the content of the page.

2.6.7 SQL

SQL stands for Structured Query Language. SQL is used to converse with a database. According to
ANSI, it is the standard language for relational database management systems. SQL statements are used
to carry out tasks such as update data on a database or retrieve data from a database. Some common
relational database management systems that use SQL are: Oracle, Sybase, Microsoft SQL Server,
Access, Ingres, etc. The standard SQL commands such as "Select", "Insert", "Update", "Delete",
"Create", and "Drop" are mostly used to achieve nearly all tasks that one may need to do with a database.

65 | P a g e
2.6.8 JavaScript

It was designed by Brendan Eich and developed by Netscape Communications Corporation, Mozilla
Foundation, Ecma International in December 4, 1995. It is frequently shortened as JS and it is a high
level, interpreted programming language having curly-bracket syntax. Along with HTML and CSS,
JavaScript is one of the essential technologies of the WWW. JavaScript empowers interactive web
pages that’s why it is an important part of web application. The enormous majority of websites use it and
main web browsers have a dedicated JavaScript engine to execute it.

2.6.9 Bootstrap

Bootstrap is a free front-end framework for faster and less difficult web development which includes
HTML and CSS based design templates for design, forms, buttons, tables, navigation, modals, image
containers and many other, as well as optional JavaScript plugins. Bootstrap additionally offers the
ability to easily create responsive designs which is; creating those web sites that automatically adjust
themselves to look good on all devices, from small phones to large desktops.

2.6.10 CSS

Cascading Style Sheets (CSS) is a style sheet language used for describing the appearance of a document
written in a markup language like HTML. CSS is a bedrock technology of the World Wide Web,
alongside HTML and JavaScript. It was developed by World Wide Web in Consortium on December 17,
1996. CSS is designed to enable the parting of appearance and content, including layout, colors,
and fonts.

66 | P a g e
2.6.11 Voice Search (Google API)

<script>

function startDictation()
{

if (window.hasOwnProperty('webkitSpeechRecognition'))
{

var recognition = new webkitSpeechRecognition();

recognition.continuous = false;
recognition.interimResults = false;

recognition.lang = "en-US"; Figure 6.1: Voice Search


recognition.start();

recognition.onresult = function(e) {
document.getElementById('transcript').value = e.results[0][0].transcript;
recognition.stop();
document.getElementById('labnol').submit();
};

recognition.onerror = function(e) {
recognition.stop();
}
}
}
</script>

67 | P a g e
Chapter 07

System Testing

68 | P a g e
7.1 Introduction

Software testing is a procedure to assess the functionality of a software application intending to discover
whether the developed software met specified requirements or not and to detect the faults to confirm that
the product is fault free in order to produce the quality product.

7.2 Software Testing Types


7.2.1 Manual Testing

Manual testing is the procedure of testing the software by hand to find the faults. Tester should have
knowledge of the viewpoint of end-users to confirm that all features are working as stated in the software
requirement document. In this course of testing, tester executes the test cases and generate the reports by
hand deprived of using any automatic tools.

7.2.2 Automation Testing

Automation testing is the procedure of testing a software using an automatic tool to discover faults. In
this procedure, tester executes the test scripts and generate the test outcomes automatically by using
various tools. Some of the well-known automation testing tools for functional testing are QTP/UFT and
Selenium.

7.3 Testing Approaches

o White Box Testing


o Black Box Testing

7.3.1 White Box Testing

It is also termed as Glass Box, Clear Box, and Structural Testing. This testing is grounded on
applications’ internal code structure. In white-box testing, a core viewpoint of the system as well as
programming skills are used to design test cases. This testing is generally done at the unit level.

7.3.2 Black Box Testing

It is also termed as Behavioral, Specification-Based or Input-Output Testing. In this testing process


testers assess the functionality of the software under tests deprived of watching at the internal code
structure of the software.

69 | P a g e
Table 7.1: Test Case of User Registration

Test Case ID TC-1


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Registration
Description Check whether user is registered or not.
Procedure Enter all the details and click the register button.
Expected Result User should register successfully.
Actual Result User registered successfully.
Status Success.

Table 7.2: Test Case of User Login

Test Case ID TC-2


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Login
Description Check whether user is login or not.
Procedure Enter username and password and click the login button.
Expected Result User should login successfully.
Actual Result User logged in successfully.
Status Success.

Table 7.3: Test Case of Admin Adding Teacher and Student

Test Case ID TC-3


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Add teacher, student
Checks whether teachers and students are added to database
Description
or not.
Procedure Only admin can add teachers and students.
Expected Result Teachers and students added in database successfully.
Actual Result Teachers and students are added successfully.
Status Success.

70 | P a g e
Table 7.4: Test Case of Admin Adding Department

Test Case ID TC-4


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Add Department
Description Check whether department is added or not.
Procedure Enter department name and Person in charge name.
Expected Result Department should be added successfully.
Actual Result Department added successfully.
Status Success.

Table 7.5: Test Case of Admin Adding Program

Test Case ID TC-5


Tester Anish
Test Type Black Box
Test Case Name Add Program
Description Check whether programs are added or not.
Procedure Enter program name i-e. BS / MS / MSc / PhD.
Expected Result Programs should be added successfully.
Actual Result Programs added successfully.
Status Success.

Table 7.6: Test Case of User Viewing Content

Test Case ID TC-6


Tester Anish
Test Type Black Box
Test Case Name View Uploaded Content
Description Check whether content is uploaded by teacher / student.
Procedure View content list.
Expected Result Content list should be displayed successfully.
Actual Result Content list displayed successfully.
Status Success.

71 | P a g e
Table 7.7: Test Case of User Uploading Content

Test Case ID TC-7


Tester Anish
Test Type Black Box
Test Case Name Upload Content by teacher / student
Description Check whether content is successfully uploaded by teacher /
student.
Procedure Uploaded content along with content description.
Expected Result Content should be uploaded successfully.
Actual Result Content uploaded successfully.
Status Success.

Table 7.8: Test Case of User Downloading Content

Test Case ID TC-8


Tester Anish
Test Type Black Box
Test Case Name Download uploaded Content
Description Check whether content is uploaded by teacher / student.
Procedure Open uploaded content and click on download button to
download content.
Expected Result Content should be downloaded successfully.
Actual Result Content downloaded successfully.
Status Success.

Table 7.9: Test Case of User Sending Message

Test Case ID TC-9


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Send Message to teacher / student.
Description Check whether message successfully sent.
Procedure Click on message and then give recipient name
Expected Result Message should be sent successfully.
Actual Result Message sent successfully.
Status Success.

72 | P a g e
Table 7.10: Test Case of User Receiving Message

Test Case ID TC-10


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Receive Message
Description Check whether message received or not.
Procedure Click on message and see if any new message is received.
Expected Result Message should be received successfully.
Actual Result Message received successfully.
Status Success.

Table 7.11: Test Case of Creating Announcements

Test Case ID TC-11


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Create Announcements
Description Check whether announcements are created by teacher or
not.
Procedure Click on announcements and the course name in which to
make announcement.
Expected Result Announcements should be created successfully.
Actual Result Announcements created successfully.
Status Success.

Table 7.12: Test Case of Modifying Announcements

Test Case ID TC-12


Tester Azhar Ghafoor
Test Type Black Box
Test Case Name Modify Announcements
Description Check whether announcements are modified by teacher or
not.
Procedure Click on announcements and the course name and click on
announcement modify.
Expected Result Announcements should be modified successfully.
Actual Result Announcements modified successfully.
Status Success.

73 | P a g e
Table 7.13: Test Case of View Announcements

Test Case ID TC-13

Tester Anish

Test Type Black Box

Test Case Name View Announcements

Description Check whether announcements are made by teacher or not.

Procedure Click on notification to view if any announcement is made


by teacher.
Expected Result Announcements should be viewed successfully if made by
teacher.
Actual Result Announcements viewed successfully.

Status Success.

Table 7.14: Test Case of Deleting Announcements

Test Case ID TC-14

Tester Anish

Test Type Black Box

Test Case Name Delete Announcements

Description Check whether announcements are made by teacher or not.

Procedure Click on announcements and the course name and click on


delete button beside announcement to delete.
Expected Result Announcements should be deleted successfully.

Actual Result Announcements deleted successfully.

Status Success.

74 | P a g e
Table 7.15: Test Case of Voice Search

Test Case ID TC-15

Tester Anish

Test Type Black Box

Test Case Name Voice Search

Description Check whether voice search works as expected.

Procedure Click on search bar and say something you want to search.

Expected Result Voice Search must return expected result.

Actual Result Voice Search returned expected result.

Status Success.

Table 7.16: Test Case of User Logout

Test Case ID TC-16

Tester Anish

Test Type Black Box

Test Case Name Logout

Description Check whether user is logged out or not.

Procedure Click on logout button.

Expected Result Logout successful.

Actual Result Logout successful.

Status Success.

75 | P a g e
Chapter 08

Interfaces

76 | P a g e
8.1 Introduction

The user interface is a vital facet of any product and is often, as important as the functionality of system.
Graphical User Interfaces uses portraits and visuals as an alternative of just words to exemplify the input
and output of any software package. The program displays firm icons, buttons, dialogue boxes etc. on
the screen and the user controls the program primarily by hovering a pointer on the screen and choosing
assured objects by pressing buttons, etc. The purpose of a Graphical User Interface is to aid the
management of an application by means of graphical features.

Designing an upright user interface is a repetitive process. First, we plan and device a user interface using
apposite techniques. Then we assess the design. The domino effect of the assessment feeds the next
design and implementation steps. It is worthy to note that if we have diverse user communities (or the
same user with different jobs), we may need unalike user interfaces, customizable user interfaces or both.

Figure 8.1: Homepage

Figure 8.2: User Login Page

77 | P a g e
Figure 8.3: User Signup Page

Figure 8.4: Student Signup Page

78 | P a g e
Figure 8.5: Teacher Signup Page

Figure 8.6: Admin Dashboard Page

79 | P a g e
Figure 8.7: Programs Page

Figure 8.8: Department Page

80 | P a g e
Figure 8.9: Students Page

Figure 8.10: Teachers Page

81 | P a g e
Figure 8.11: Uploaded Content List Page

Figure 8.12: Student Dashboard Page

82 | P a g e
Figure 8.13: Student Notification Page

Figure 8.14: Student Message Page

83 | P a g e
Figure 8.15: Student Uploading and Downloading Content Page

Figure 8.16: Student Assignment Submitting Page

84 | P a g e
Figure 8.17: Student Announcement Viewing Page

Figure 8.18: Teacher Dashboard Page

85 | P a g e
Figure 8.19: Teacher Content Uploading and Downloading Page

Figure 8.20: Teacher Uploading and Downloading Page

86 | P a g e
Figure 8.21: Teacher Announcements Creating Page

87 | P a g e

You might also like