Semister Project
Semister Project
DATE
MEKELE, ETHIOPIA
Page | 1
Project ID: _______________ Date: ________________
Information of Students:
Page | 2
Acknowledgment
First and foremost, we would like to express our heartfelt gratitude to Almighty
God for granting us the ability and strength to undertake this project and for
ensuring its successful and problem-free completion.
We would also like to extend our profound appreciation to our advisor, Mr.
Tlahun, for his timely advice, encouragement, and continuous support throughout
every phase of this project.
Lastly, we express our sincere gratitude to our parents for their unwavering support
in all our educational endeavors. Their encouragement, financial assistance, and
insightful guidance have been instrumental in our project's success.
Page | 3
Abstract
The e-learning system developed for Mekelle University is a web-based platform designed to
enhance the digital learning experience for both students and teachers. The primary objective of
this platform is to provide a secure, user-friendly interface where instructors can efficiently
upload course materials, and students can access these resources after signing in. This system
replaces traditional manual processes, providing a more streamlined and accessible way for
students to engage with their coursework.
To ensure security, the system employs a verification process: students must first sign in, after
which they receive a unique verification code through their registered Gmail accounts. Upon
entering this code, they are granted access to the platform, where they can view and interact with
available courses. This two-step authentication mechanism guarantees the protection of student
data and prevents unauthorized access.
The platform includes several user-friendly features, such as a clear course management
interface for teachers and easy navigation for students. It allows teachers to upload materials and
manage their courses, while students can view course content in a secure environment.
One of the key features of the system is the ability to issue certificates upon course completion.
Once a student successfully finishes a course and meets the necessary requirements, the system
automatically generates a certificate, which is accessible through their account. This certificate is
verified by the university and can be used to showcase academic achievements.
By leveraging these features, the e-learning system aims to modernize and improve the
traditional learning process at Mekelle University, making it more efficient, secure, and
accessible for all users. This system empowers the university to provide an exceptional
educational experience while ensuring data integrity, user satisfaction, and recognition of student
achievements through certification.
Page | 4
CHAPTER - ONE
1. Introduction
E-learning is the process of delivering educational content and resources through digital
platforms, utilizing technologies such as the internet, web applications, and email. In recent
years, e-learning has rapidly evolved, becoming an essential tool for educational institutions
worldwide. As universities strive to remain competitive and provide students with flexible
learning opportunities, implementing e-learning systems has become increasingly critical.
There are numerous reasons why e-learning is transforming the academic landscape. Educational
institutions have realized that e-learning reduces the barriers associated with traditional, in-
person education, such as geographic limitations and rigid schedules. It enables educators to
upload and manage course materials efficiently, while students can access these resources from
any location at any time, through a secure, easy-to-use platform. Furthermore, the cost of
maintaining an e-learning system is relatively low compared to traditional classroom setups, as it
eliminates the need for physical infrastructure and significantly reduces administrative overhead.
E-learning systems offer considerable benefits for students as well. They provide the flexibility
to study at their own pace, access courses remotely, and review course materials as often as
needed. This system eliminates the need for students to be physically present on campus, thus
reducing travel time and expenses. Additionally, e-learning platforms can accommodate large
numbers of students simultaneously, making it easier for universities to serve their growing
student populations.
In response to these needs, Mekelle University has developed a secure e-learning platform that
allows teachers to upload course materials and students to access them after signing in. To ensure
data security and prevent unauthorized access, the system includes a verification step where
students receive a unique code via Gmail before logging in. This two-step authentication process
safeguards student data and enhances overall security.
Moreover, one of the key features of the e-learning system is the ability to issue certificates upon
course completion. Once a student successfully finishes a course and meets the necessary
requirements, the system automatically generates a certificate, which can be accessed through
their account. This certificate is verified by the university and serves as a formal
acknowledgment of academic achievement.
Overall, this platform modernizes the learning process, providing students and faculty with an
efficient, secure, and accessible solution for course management and academic engagement. By
leveraging these features, Mekelle University aims to enhance the educational experience,
ensuring that students receive the recognition they deserve while facilitating a more flexible and
innovative learning environment.
Page | 5
1.1 Background
The establishment of the e-learning system at Mekelle University began in 2024. The platform is
designed to provide a comprehensive online learning experience for students and teachers within
the university. The system offers various services, including course material uploads, secure
access for students, and the ability to issue certificates upon course completion.
Currently, the university employs a team of developers and educators responsible for managing
and maintaining the platform. These individuals are tasked with ensuring the smooth operation of
the system, assisting instructors in uploading course content, and providing technical support to
students. The existing process for course management is traditional and manual, relying on in-
person interactions and physical materials.
In this traditional setup, instructors deliver lectures and distribute printed materials during class
sessions, while students are required to be physically present on campus for learning. Students
typically request information about courses from their instructors or peers and must navigate
rigid schedules that limit their flexibility.
The e-learning system aims to transform this conventional approach by allowing instructors to
upload and manage course materials digitally, enabling students to access these resources
anytime and from any location. The current system incorporates a verification process where
students receive a unique code via Gmail to ensure secure access. Once they log in, they can
view course content, participate in discussions, and review materials as needed.
Additionally, upon successfully completing a course, students can obtain a certificate that
verifies their academic achievement. The administration envisions this e-learning platform as a
foundational step toward creating a more modern, accessible, and efficient educational
environment for all users at Mekelle University.
Additionally, there is a lack of security in the existing system, as course materials are not
adequately protected, and student data is vulnerable to unauthorized access. The manual nature
of the system also makes it difficult to monitor course completion and issue certifications, often
resulting in delayed recognition of student achievements.
Another major problem is the absence of a centralized platform where both students and teachers
can interact efficiently. Teachers spend excessive time distributing course materials, while
students struggle to access them, especially those who cannot physically attend classes. This has
created barriers in ensuring that all students have equal access to educational resources.
Page | 6
The e-learning system was developed to address these issues. By providing a secure, web-based
platform, it aims to replace the manual processes with a more streamlined and accessible system.
The two-step authentication process, using Gmail verification, ensures data security and prevents
unauthorized access, while the automated course management and certification features reduce
administrative workload and ensure timely recognition of student accomplishments.
In view of these problems, the e-learning system will modernize the educational experience at
Mekelle University, enhancing efficiency, security, and accessibility for both students and
faculty.
The e-learning system will operate on any platform that supports modern web browsers, as it
uses React for the frontend and Node.js for the backend. These technologies are platform-
independent and can be hosted on various operating systems, including Windows, Linux, and
macOS. Therefore, the system is expected to be operationally feasible across a wide range of
devices and environments, ensuring accessibility for all users.
Page | 7
technologies and their ability to implement the required functionalities, the project is expected to
be technically feasible.
1. User-Friendly Interface: The system will provide an intuitive interface that allows
students and teachers to easily navigate, access course materials, view details, and
interact with content.
2. Course Management: Instructors will have the ability to manage course listings,
including adding, editing, categorizing, and updating course information such as
descriptions, resources, and requirements.
3. Student Enrollment and Access: Facilitating a streamlined enrollment process for
students, allowing them to easily sign up for courses and access materials after
verification.
4. Progress Tracking and Management: Enabling students to track their progress, view
completion status, and manage their course activities effectively.
5. User Accounts and Profiles: Allowing students and teachers to create and manage
accounts, update personal information, and view course history.
6. Certification Generation: Automatically issuing certificates upon successful course
completion, providing recognition for academic achievements.
7. Security and Data Protection: Implementing robust security measures to protect user
data, including a two-step verification process for student access and secure handling of
personal information.
Page | 8
8. Integration and Scalability: Ensuring the system can integrate with existing university
databases and services, while being scalable to accommodate an increasing number of
users and courses.
9. Analytics and Reporting: Generating reports on student engagement, course completion
rates, and other metrics to assist faculty in making informed decisions regarding course
offerings and improvements.
This scope aims to modernize the learning experience at Mekelle University, making it more
efficient, secure, and accessible for all users.
1.6 Beneficiaries
Students: The e-learning system provides students with convenient access to course
materials anytime and anywhere, enhancing their learning experience and allowing them
to study at their own pace.
Instructors: Teachers benefit from streamlined course management, enabling them to
easily upload materials, track student progress, and interact with students, thus improving
their teaching effectiveness and efficiency.
University Administration: The administration gains valuable insights into student
engagement and course performance through analytics, which can inform decision-
making and improve educational offerings.
Developers: The development team benefits from the project by gaining practical
experience in designing and implementing a web-based learning platform, deepening
their technical skills and knowledge.
Educational Stakeholders: Other stakeholders, including parents and educational bodies,
will have access to transparent and reliable educational data, promoting accountability
and trust in the institution’s academic processes.
This system aims to enhance the educational experience for all beneficiaries while ensuring
effective management and delivery of courses at Mekelle University.
Page | 9
Chapter two
2.1 Description of existing system
The current learning process in many educational institutes, including Mekelle University, relies
heavily on traditional, manual methods for course management and student engagement. This
manual system involves various tasks that are both time-consuming and inefficient.
Students typically register for courses by filling out physical forms, which are then manually
processed by the administration. Once the registration is complete, students are provided with
physical copies of course materials or are directed to attend in-person classes where they
receive the necessary learning resources. This process often leads to delays and requires
students to spend time queuing up for registration or waiting for their materials.
Course materials, such as lecture notes, readings, and assignments, are usually distributed to
students in printed format or through classroom handouts. Teachers must manage these
materials manually, keeping track of which students have received them and ensuring they are
updated as needed. Interaction between students and teachers is typically limited to in-person
sessions, which restricts the flexibility of both students and educators.
In the traditional system, assessments such as quizzes, exams, and assignments are also
conducted manually. Students submit their work on paper, and instructors are responsible for
marking each submission by hand. This manual marking process is labor-intensive, requiring
significant time and effort to review each student's work individually. Once marked, the results
are often recorded manually in physical record books or master grade sheets. This manual
handling of data not only increases the workload for teachers but also introduces a higher risk
of errors in grading and record-keeping.
In the existing manual system, when students complete a course, certificates are issued after a
series of administrative processes. These certificates are usually printed and signed physically,
which can take time and delay the recognition of students’ achievements.
Page | 10
Inefficient certification: Issuing certificates is slow and often delayed by manual
administrative processes.
Overall, the current learning system relies on manual, paper-based methods that are inefficient,
time-consuming, and prone to errors. These limitations hinder the overall learning experience,
making it difficult to keep up with the demands of modern education and student needs.
In the current e-learning system, some teachers use Telegram to send PDFs or other documents
directly to students. This method adds further complexity, as it bypasses the centralized e-
learning platform and results in resources being scattered across different platforms. This
inconsistency makes it difficult for students to keep track of all the materials, and it prevents
the creation of a unified course management system where all resources are easily accessible.
Mekelle University’s e-Student system allows students to register online for their semester,
view their grades, and manage some administrative tasks. However, while students can start
the semester registration process online, they are still required to visit the university in person
to confirm their registration at the registration office. This hybrid approach creates
inefficiencies, as it forces students to physically come to campus even though they have already
completed part of the process online.
Additionally, students must visit the university if they want to review their exam papers, for
example, if they believe there has been an error in grading or if they need to request
corrections. This limitation of the e-Student system adds an extra layer of complexity, especially
for students who live far away or face other logistical challenges. Moreover, the system is
known to experience frequent connectivity issues, which can make it unreliable, causing delays
during critical times like semester registration or grade releases. These challenges highlight the
need for system improvements to make it more efficient and accessible for all students.
1. Limited Flexibility: Traditional learning often follows a strict schedule, which can be
challenging for students with other commitments, such as work or family responsibilities.
2. Passive Learning: The traditional lecture-based approach can lead to passive learning, where
students may not engage actively with the material, resulting in lower retention of information.
3. One-Size-Fits-All: In a classroom setting, teachers often need to cater to the average student,
which may not address the individual learning needs of all students, leaving some behind.
Page | 11
5. Resource Constraints: Traditional classrooms may lack modern resources or technologies
that enhance learning, such as interactive tools, multimedia content, or access to online
databases.
6. High Costs: Attending traditional educational institutions can be expensive due to tuition
fees, transportation, and materials, making it less accessible for some students.
7. Teacher Dependence: The effectiveness of traditional learning often heavily depends on the
quality and teaching style of the instructor, which can vary widely.
8. Limited Collaboration: In some traditional settings, students may not have many
opportunities to collaborate or work in groups, limiting peer learning experiences.
9. Assessment Pressure: Traditional learning often emphasizes standardized testing, which can
create stress and may not accurately reflect a student's understanding or abilities.
10. Distractions and Classroom Management: Classrooms can be noisy and distracting
environments, making it difficult for some students to concentrate and learn effectively.
These disadvantages highlight some of the limitations of traditional learning compared to more
modern or flexible educational approaches, such as online or blended learning.
Such a system fosters flexibility and supports self-paced learning. For example, students can
review materials multiple times to better understand difficult topics or catch up on content they
missed in class. Teachers can also upload recorded lectures, making it easier for students to
study at their own convenience.
Page | 12
By implementing e-learning, universities can create a more efficient and modern learning
experience that supports both students and faculty, making education more accessible and
effective.
Undergraduate and Graduate Students: The primary users of the e-learning platform are the
students enrolled in various undergraduate and graduate programs. They utilize the system to
access course materials, facilitating a more interactive and engaging learning experience.
Instructors and Faculty Members: Faculty members use the e-learning system to upload course
content, manage their classes, and assess student performance. The platform allows for
streamlined communication between instructors and students, enabling timely feedback and
support.
Administrative Staff: The administrative staff at Mekelle University plays a crucial role in
maintaining the e-learning system, ensuring that it operates smoothly and effectively meets the
needs of both students and faculty. They manage user access, oversee the integration of new
features, and provide technical support as needed.
University Management: The administration of Mekelle University uses the e-learning platform
to monitor academic progress, analyze student performance data, and implement institutional
policies. This oversight helps improve the overall quality of education offered at the university.
By focusing on these key user groups, the e-learning system at Mekelle University aims to
create a more efficient and effective educational environment, ultimately enhancing the
learning outcomes for all students.
Page | 13
Technical Anxiety: Some students may experience apprehension or fear of using digital
platforms, hindering their ability to participate in e-learning effectively.
Content Variety Limitations: Many e-learning platforms primarily offer limited types of
content, such as video lectures or multiple-choice quizzes, restricting the diversity of
learning methods available to students.
Lack of Customization: Existing e-learning systems may not provide sufficient flexibility
or customization options for students, leading to a one-size-fits-all approach that
doesn’t cater to individual learning needs.
By identifying and addressing these drawbacks, Mekelle University can enhance its e-learning
platform, ensuring a more effective and supportive learning environment for all students.
Page | 14
inconsistent file transfers. This can cause delays, especially when teachers are unavailable or
when students are off - campus, which may affect their ability to study in a timely manner.
➢ Online Registration for Courses: Although Mekelle University allows students to register
online for the semester, the process is incomplete without in-person verification at the
registration office. This creates unnecessary administrative bottlenecks, as students must travel
to campus and wait in line to confirm their registration. This is especially problematic for
students who live far from the university or those who face scheduling conflicts, leading to
potential delays in finalizing their semester registration.
➢ Easy Access to Exam Results: Students currently access their exam results through the e-
student portal. However, to review their actual exam papers or request corrections, they are
required to physically visit the university. This adds an extra layer of difficulty, as students must
find time to travel to campus, sometimes facing long wait times to meet with faculty or
administration. This process also complicates any attempts to resolve disputes over grades or to
correct mistakes in the marking process.
Page | 15
➢ Overcoming Connectivity Issues: Mekelle University frequently faces connectivity problems
that interfere with the smooth functioning of online activities. These connectivity issues affect
the ability of students and teachers to communicate, share materials, and access important
information. As a result, delays in receiving or sharing resources are common, and students
may miss out on important updates due to unreliable internet access. This is a significant
challenge, especially when students or teachers are off-campus and unable to connect reliably.
CHAPTER THREE
Methodology
Page | 16
The e-learning process involves several key steps that enhance the educational experience for
students. It begins with instructors creating and uploading course materials, including lectures
and multimedia resources, to an online platform. Students then register on this platform,
gaining access to the content, which they engage with through various activities such as reading
and watching videos. Communication is facilitated through the platform, allowing instructors to
provide feedback and support. Student performance is assessed with immediate feedback
helping learners identify areas for improvement. Finally, the e-learning system undergoes
continuous evaluation to enhance course content and the overall learning experience based on
feedback from both students and instructors.
3.1 OVERVIEW
The E-Learning System is a comprehensive web application designed to enhance the
educational experience and streamline learning processes in institutions. Key features include:
1. Availability: The system must be operational and ready to perform required functions at all
times, ensuring students can access it whenever needed.
2. Accessibility: The platform should allow multiple students to access it simultaneously without
downtime, enabling usage at their convenience.
3. Usability: The interface must be intuitive and user-friendly, allowing students to navigate and
utilize the system easily.
Page | 17
4. Performance: The system should deliver fast performance, ensuring quick data retrieval and
response times, ideally within a second.
5. Reliability: The platform must be dependable, capable of being used consistently without
failure at any time.
6. Extensibility: The system should accommodate a wide range of students across various
geographical locations, both within Ethiopia and beyond.
8. Operational: The platform must function on various operating systems and automatically
back up data at the end of each day.
9. Security: Access should be restricted to registered users with valid credentials, preventing
unauthorized access and allowing only admin users to perform data analysis.
10. Backup: The system should have the capability to restore lost information from backups
within one hour in case of failures.
11. Interoperability: The platform must be able to integrate with other key technologies when
necessary.
12. Capacity: The system should support multiple users concurrently without downtime,
ensuring a smooth experience for all students.
Page | 18
The final application will be used in e-learning and provide resources to students which will also
be accessed by the instructor and administrator. The system should fulfill the following
requirements:
Administrator
Registration.
Login into the system.
learning materials, including video and reading resources for enrolled courses.
Altering and modifying password.
Resetting of forgotten password.
Instructor
Analysis
Page | 19
3.3.3 Use Case Description
3.3.3.1 Registration Use Case Description
Page | 20
1: Use Case Name: Registration ID: 1 Importance level: High
2: Primary Actor: User (Student/Instructor) Use Case type: Detail,
Essential
2.1 Visual
Page | 21
1: Use Case Name: Learn ID: 2 Importance level: High
2: Primary Actor: Student Use Case type: Detail,
Essential
2.1 Visual
Student learns
Page | 22
2.1 Visual
The instructor log into the system using its valid User Email and Password
The system responds by verifying the Instructor User Email and Password
The instructor page panel will now be displaying once the instructor details has been verified by
the system.
The instructor will now click on add course button.
The system will then display courses information page.
The instructor will now enter the necessary information as well as fills up the courses information
form and then click submit button.
The system will then verify the courses and save the courses to the database.
The system will now display “courses has been added successfully.”
8: Exceptional Flows: E1 Must enter courses
9: Alternate Flow: N/A
10: Constraints: Must be Instructor of mekelle university.
Page | 23
Detail, Essential
2.1 Visual
The admin log into the system using its valid User Email and Password
The system responds by verifying the Admin User Email and Password
The admin page panel will now be displaying once the admin details have been verified by the
system.
The admin will then click on manage user button.
The system will then display the manage user page.
The administrator will then click on either edit user button, or delete user, or add new user
button.
The system will then display the particular page that the admin clicks on of the functions.
The admin will then perform all the necessary process like add or edit user that he wants, and
click the next button to finish.
The system will then verify and save the new entries that been made by the admin
Thereafter, the system will now display new changes edited, added or deleted successfully
8: Exceptional Flows: E1 must have key in a wrong admin User Email and Password
9: Alternate Flow: A1: Cancel
10: Constraints: Must be an administrator
Page | 24
1: Use Case Name: Login ID: 6 Importance level: High
2: Primary Actor: User (Admin, Student and Instructor) Use Case type: Detail,
Essential
2.1 Visual
2.1 Visual
Page | 25
Instructor Manage courses.
The instructor log into the system using its valid Email and Password
The system responds by verifying the Instructor Email and Password
The instructor page panel will now be displaying once the instructor detail has been verified by the
system.
The instructor will then click on manage courses button.
The system will then display the manage courses page.
The instructor will then click on either set/delete/update/view courses button.
The system will then display the particular page that the instructor clicks on
The instructor will then perform all the necessary process that he wants, and click the next button
to finish.
The system will then verify and save the new entries that been made by the Instructor Thereafter,
the system will now display changes made successfully
8: Exceptional Flows: E1 must have key in a wrong Instructor Email and Password
9: Alternate Flow: A1: Cancel
10: Constraints: Must be an instructor
Page | 26
2.1 Visual
The admin log into the system using its valid Email and Password
The system responds by verifying the Admin Email and Password
The admin page panel will now be displaying once the admin details have been verified by the
system.
The admin will then click on manage and verify courses button.
The system will then display the manage module page
The administrator will then click on either add, delete or edit button
The system will then display the particular page that the admin clicks on
The admin will then perform all the necessary process like add, delete or edit module, and then
click the next button to finish.
The system will then verify and then save or delete the new entries that been made by the
admin
Thereafter, the system will now display changes made successfully
8: Exceptional Flows: E1 must have key in a wrong admin Email and Password
9: Alternate Flow: A1: Cancel
10: Constraints: Must be an administrator
Page | 27
1: Use Case Name: Logout ID: 10 Importance level: High
2: Primary Actor: User (Admin, Student and Instructor) Use Case type: Detail,
Essential
2.1 Visual
Page | 28
3.5 Sequence Diagram
Page | 29
Home page
Page | 30
Page | 31
3.Manage User Sequence Diagram
Page | 32
4.Add Module Sequence Diagram
Page | 33
5.Logout Sequence Diagram
Page | 34
3.6 Activity Diagram
1.Register activity diagram
Page | 35
2. Manage module activity diagram
Page | 36
CHAPTER FOUR
SYSTEM DESIGN
4.1 Introduction
This project is structured to address institutional challenges by reducing the workload of the
current system and easing employee tasks, resulting in a more efficient, reliable, and time-
saving solution. This chapter focuses on transforming the analysis model into a comprehensive
design model, incorporating non-functional requirements and constraints previously identified
in the problem statement and requirements analysis.
This chapter details the core design elements of the system, including design goals, subsystem
decomposition, hardware and software integration, and data management. It provides a
complete architectural overview, capturing and presenting key architectural decisions made to
achieve the project’s objectives. Here, we outline the system design concepts specific to our
platform, explaining how solutions derived in the analysis phase are translated into detailed
logical and physical specifications.
- Show how components interact, illustrating how various system elements collaborate to
deliver a smooth and cohesive user experience.
An effective design will enhance the system’s maintainability, reliability, and usability,
ultimately supporting a high-quality e-learning experience for users.
The goal of the e-learning system is to meet both the functional and non-functional requirements
outlined in the requirements specification document. To achieve this, we categorize the design
Page | 37
goals into several key areas: Performance Criteria, Dependability Criteria, Cost Criteria,
Maintenance Criteria, and End User Criteria.
Performance: The system should deliver fast response times with high throughput,
ensuring efficient processing of user registrations, seamless uploads of course materials,
and prompt generation of reports without noticeable delays.
Dependability: The e-learning platform must be highly dependable, robust, and fault-
tolerant. It should handle invalid user inputs gracefully and maintain reliability and
availability. Access to sensitive student and instructor data must be restricted to
authorized users only, preventing unauthorized access or modifications.
Cost: Development, deployment, administration, and maintenance of the system should
be achieved with minimal cost, ensuring that budgetary constraints do not compromise
the quality of the e-learning experience.
Maintenance: The system must be easily extensible, allowing for modifications to
course content, the addition of new functionalities, and portability across different
platforms. The underlying code should be clear, well-documented, and easily mapped to
specific requirements for future enhancements.
End User Criteria: The platform should feature a simple and intuitive graphical user
interface, incorporating user-friendly forms and buttons with descriptive labels. It should
provide reliable responses to user requests, ensuring that interactions remain efficient and
informative throughout their session.
Usability: Usability is crucial; the system should enable specified users to achieve their
learning objectives effectively, efficiently, and satisfactorily within their context of use.
The design should prioritize ease of learning and usage for students and instructors alike.
Reliability: The e-learning system must be reliable to foster users' confidence in its
functionalities and performance.
Security: The system should incorporate robust security measures to ensure that
unauthorized users cannot access or modify sensitive educational data.
Modifiability: The platform should be designed for modifiability, allowing for future
enhancements and updates without requiring significant restructuring.
Page | 38
4.2.1 System process
Creation and Upload of Course Content - The e-learning platform allows instructors to
upload and organize course materials efficiently. Teachers can easily upload various types of
content, such as lecture notes, presentations, videos, and other essential course resources,
which students can access upon logging into the system.
Managing Student Access- The platform supports secure access for a large number of
students at once. Using the “student management” feature, instructors can categorize students
into relevant groups and assign specific course materials to each group. This helps ensure that
students are provided with the appropriate materials for their courses, allowing a more
organized and personalized learning experience.
This process provides an effective, streamlined way for instructors to upload course content
and manage student access, while also recognizing student accomplishments through
certification, creating an efficient learning experience on the e-learning platform.
Subsystem of Student
1) Course Access Module: This module enables students to access all uploaded course
materials, including lecture notes, videos, and other digital resources. Once logged in and after
selecting a course, students can view and navigate through all relevant content seamlessly.
Page | 39
2) Certification Module: Upon successfully completing a course, this module verifies that
the student has met all requirements and automatically generates a university-certified
certificate. This certificate can be accessed through the student's profile as a formal record of
their accomplishment.
4) Course Feedback Module: After course completion, students can provide feedback
regarding the content and structure. This feedback assists instructors and administrators in
making improvements, enhancing the overall learning experience.
Subsystem of Instructor
1) Course Upload Module: This module enables instructors to upload course materials
directly to the platform, including lecture notes, videos, and other digital resources. Students
can easily access these materials for each course, making learning more flexible and accessible.
2) Content Management Module: Instructors can manage all course content, with
options to edit, update, or remove materials as needed. This flexibility allows them to keep
resources current and adjust content to match the course curriculum.
3) Certification Issuance Module: After students complete a course, instructors can verify
and approve certifications. This feature ensures that only students who meet the course
requirements receive formal recognition of their accomplishments.
4) Feedback Review Module: Instructors have access to a module that compiles feedback
from students upon course completion. This feedback helps instructors understand students’
experiences and make improvements in course content or delivery as needed.
Page | 40
Subsystem of Administrator
1 User Management Module: This module is crucial for managing the various users of the e-
learning system, including students and instructors. Administrators have the authority to create
user accounts, modify user details, and manage access permissions to ensure a secure and
efficient learning environment.
2 Content Approval Module: Administrators can review and approve course materials
submitted by instructors before they are published on the platform. This module ensures that all
content meets the quality and educational standards set by the institution.
Java script
Data base
Page | 41
4.2.4 Persistent data management
The system will utilize the MongoDB database for data storage, enabling seamless integration
and access throughout the platform. This database will store user information, including ID
number, name, email address, and other relevant details, organized into distinct collections.
Each user is permitted only one account, ensuring the uniqueness of user identities within the
system.
Page | 42
CHAPTER FIVE
Implementation
5.1 Overview
This chapter outlines the implementation of the e-learning platform, which builds on the prior
analysis and design phases. Using React and JavaScript for the front end, Express.js for server-
side functionality, and MongoDB as the database, the system transforms the design into an
interactive, scalable application. These technologies were chosen for their performance and
compatibility, ensuring a seamless, user-friendly experience for both instructors and students.
Maintainability: The code is designed for adaptability, making it easy to locate specific
components or troubleshoot issues. Clear documentation and readability allow team
members to understand, explain, and modify code efficiently with minimal risk of
impacting other features.
Internet and Web Technology: Essential for intercommunication, the internet serves as
a vast global network using TCP/IP protocols to enable data exchange and access to
online resources.
MongoDB: A NoSQL database used for efficient data management and storage within
the application.
Page | 43
Express.js: The backend framework facilitating server-side functionality and API
interactions.
Visual Studio Code: A robust text editor for writing and managing code across all
components of the project.
React: The primary framework for designing and implementing a responsive, interactive
user interface.
Node.js Modules: Provides additional backend functionality and streamlines integration
with Express for server-side development.
5.4 Prototype
After completing the design phase, the gathered information is promptly integrated into a
prototype. This process may involve creating or modifying system components, adding new
code, and adjusting existing code to align with the requirements of the proposed system.
At this stage, testing methods, including black-box and white-box testing, are employed to
verify that each function aligns with user requirements. Upon completion, the entire system
undergoes a comprehensive review to identify any potential areas for improvement, ensuring
the system is robust, functional, and user-ready.
Database Implementation
For the proposed e-learning system, a database is created to store essential information
securely. Development begins with a MongoDB database, where queries are designed to
facilitate efficient data storage, retrieval, and interaction with the system interface. This setup
ensures that user data, course content, and access information are well-organized, allowing for
a seamless experience for both students and instructors on the platform.
Page | 44
CHAPTER SIX
SYSTEM TESTING
6.1 Objective
The primary goal of testing the e-learning system is to assess the efficiency and effectiveness of
its functionalities. The following objectives will guide the testing process:
Identify Existing Information: Gather and analyze all relevant project information.
Determine the Testing Approach: Establish the methodologies to be followed during
testing.
Specify Features for Testing: Identify the specific features of the system that require
evaluation.
Outline Test Requirements: Create a list of recommended requirements necessary for
testing.
Describe Testing Strategies: Recommend and detail the strategies to be utilized during
the testing process.
Identify Required Resources: Determine the resources needed and provide an estimate
of the efforts required for testing.
Schedule Testing Activities: Develop a timeline for all intended testing activities.
Assess Risks: Identify potential risks associated with the chosen testing strategy.
Deliverables from Testing Activities: List the expected deliverable elements resulting
from the testing activities.
6.2 Scope
General Scope: The testing scope encompasses evaluating the system's design,
behavior, and adherence to the established business rules.
Tactics: We will employ a combination of black box and white box testing methods to
thoroughly assess the system's design and its functional behaviors.
Page | 45
can register by himself with approval of the
admin.
Edit Profile 1 Change any information of profile of students,
instructors and admin.
Technological Feature
Quality Features
Page | 46
Proper information update 1 Proper information update
procedure should work properly
otherwise updated information
will not work for the system.
Table:Feature to be tested
1. A scenario will be considered a pass if the expected results occur as specified; if not, it
will be deemed a fail.
2. If a feature is tested 10 times and fails even once, it will be classified as a fail case.
3. Any instance of the system crashing will be classified as a fail case.
4. If, after submitting a query in the e-learning system, the expected page does not load,
this will also be categorized as a fail case.
6.5 Approach
The following outlines the overall process for testing the e-learning system:
Page | 47
Test Data Review: Examine the test data and cases to ensure that each unit has been
thoroughly verified and that the data and cases are sufficient for validating the unit’s
functionality.
Expected Results: Clearly define the expected outcomes for each test.
Documentation: Record the configuration of test cases, the test data used, and the
expected results for future reference.
Execution of Tests: Conduct the identified tests.
Post-Test Documentation: Document the test data, test cases, and configurations
employed during the testing process. This information will be included in the
Unit/System Test Report (STR).
Unit Testing Success: Successful completion of unit testing is mandatory before the unit
can proceed to component integration or system testing.
Failure Reporting: If a test is unsuccessful, a Bug Report Form must be generated. This
document will detail the test case, the encountered issue, potential causes, and the
sequence of events that led to the problem. It will serve as a foundation for subsequent
technical analysis.
Submission of Reports: All test documents and reports must be submitted. Any
specifications that require review, revision, or updates should be addressed promptly.
1. Verify that the administrator can review and approve course materials before they are
published on the platform.
2. Verify that the administrator can create, delete, and update courses based on the submitted
materials.
3. Verify that the administrator can access a list of all courses, including their current status
(pending approval, active, or inactive).
4. Verify that the administrator receives notifications when new courses are submitted for
review.
Instructor Functionality
1. Verify that instructors can create and submit courses for administrator review, including
uploading course materials such as videos and PDFs.
2. Verify that instructors can view the status of their submitted courses (approved, pending, or
rejected) along with feedback from the administrator.
3. Verify that instructors can update course materials based on administrator feedback and
resubmit for approval.
Student Functionality
Page | 48
1. Verify that students can browse and enroll in approved courses that have been reviewed and
published by the administrator.
2. Verify that students can access course materials once enrolled, ensuring that all resources
are readily available.
3. Verify that students can track their progress within each course, including the ability to mark
materials as completed.
1. Verify that the user interface is user-friendly and intuitive for all user roles (admin, instructor,
and student).
2. Verify that the e-learning platform is responsive and accessible on various devices, including
desktops, tablets, and smartphones.
3. Verify that users can access help resources, including FAQs and technical support contact
information.
4. Verify that the platform enables users to submit feedback about courses and system features
for continuous improvement.
The probability that the negative event will occur. The potential loss or impact associated with
the event. We identify following risk issues associated with the test approaches of e-learning
System.
Lack of User Involvement: Users play one of the most critical roles in testing. They
make sure the software works from their perspective. It will be really hard to involve the
users in the testing process.
Page | 49
Not Enough Schedule or Budget for Testing: As this project is being developed as a project,
there is not provided enough time to conduct the test processes. It will be a challenge to prioritize
the plan to test the right things in the given time.
Rapid Change: There are continuously coming some changes in requirements of the system
which may affect in testing process.
The testing will be done manually until the site is sufficiently stable to begin developing
automatic tests. The testing will cover the requirements for all of the different roles participating
in the site: students, teachers, and administrators.
The following outlines the types of testing that will be done for unit, integration, and system
testing. While it includes what will be tested, the specific use cases that determine how the
testing is done will be detailed in the Test Design Document.
Page | 50