You are on page 1of 3

System Non-Functionality Requirements

Performance: The Tutoring system will be able to handle many users accessing the
system simultaneously without experiencing significant performance breaking down,
for instance 50 Students taking quiz at the same time. As a developer I will ensure
that the system is optimized to provide fast, reliable, and consistent performance,
even under high load conditions. Online tutoring system will need to deliver high-
quality services to its users. This will ensure that the system is designed and
optimized to provide a smooth and enjoyable user experience, leading to improved
user satisfaction and engagement.
Security: The system will be secure, with appropriate measures in place to protect
user data and prevent unauthorized access.
 Authentication: The system will provide a secure login mechanism to ensure
that only authorized users have access to the system. This may involve the
use of strong passwords. Students, Lectures, and administrators will use
strong passwords, e.g. alphanumerical passwords.
 Authorization: The system will restrict access to sensitive information or
features based on the user's role and permissions, for instance Lectures will
not be authorized to alter student’s profile.
 Data privacy: The system should protect the privacy of user data, including
personal information. Application security policies (POPIA act)

Considering these aspects of security, an online tutoring system can ensure the
protection of user data and the privacy of users, thereby building trust and
confidence in the system.
Availability: The system will be available 24/7, with minimal downtime for
maintenance or upgrades. Additionally, availability describes how many hours, days,
or weeks a year the program will be accessible to its end users and how quickly it
can recover from errors. This requirement applies to all the software and hardware
since the architecture defines them. System runtime is measured by hardware
availability, recoverability, and reliability criteria.
With availability, an online tutoring system can ensure that students and tutors have
uninterrupted access to the system, leading to a better overall user experience and
greater user satisfaction.
Scalability: The system will be scalable, allowing for easy addition of new features .
The system's database will be designed to handle increasing amounts of data
without impacting system performance.
Portability: The system should be compatible with different devices, and operating
systems. This ensures that students and tutors can access the system from any
device or platform of their choice.
Reliability: There should be little chance of the system crashing or behaving in an
unexpected way. Online Tutoring System will be stable and dependable. This means
that the system will be built with reliable fault tolerance, resilience, and error handling
features. an online tutoring system can ensure that students and tutors can rely on
the system to provide accurate, timely, and uninterrupted access to tutoring
resources, leading to better academic outcomes and a more positive user
experience.
Usability: The system will be easy to use, with a user-friendly interface that is
accessible to users with different levels of technical expertise. The system will have
a clear and navigation structure that allows users to easily find the information or
features they need. This will involve the use of menus, tabs, and etc.
Through user interface design: The tutoring system will have a user-friendly interface
design that is easy to understand and use. This will involve the use of clear and
concise language, icons, and other visuals.
Through Responsive: The tutoring system will respond quickly to user actions, such
as clicks or taps, to provide a smooth and perfect user experience.
With regards to Consistency: The Tutoring system should have a consistent user
interface design and behaviour across all its components and pages, to reduce
confusion and make it easier for users to learn and use the system.
Maintainability: The Tutoring system will be easy to maintain and update, with clear
documentation and modular code.
Through cost-effective: A maintainable system is more cost-effective over its lifetime,
as it is easier and cheaper to maintain, fix, and modify. This means that the Online
tutoring system can be adapted to changing user needs and requirements, without
suffering of significant costs.
Time-saving: A maintainable system is easier and faster to modify, which means that
new features or changes can be implemented quickly and efficiently. This can help to
improve the system's functionality and effectiveness, without taking up too much time
or resources.
Functional Requirements (Tutoring System features)
 User registration: The system will allow users to create an account and
provide personal information such as name, email, and password.
 User login: The system will allow users to log in using their registered email
and password.
 User Profile Management: The system should allow users to view and edit
their profiles, including personal information such as name, email, and contact
information.
 Lesson Planning: The system will provide lesson planning and scheduling
capabilities to help students and teachers track progress and plan the learning
journey.

 Course/school selection: The tutoring system will allow tutors to create


courses, specify course content, and provide resources such as reading
materials, exercises, and quizzes.
 Course progress tracking: The system will track students' progress in courses,
including completed activities, quiz scores, and overall course completion.
 Communication: The system will provide a means for tutors and students to
communicate with each other, through a messaging system.
 Announcement: The System will allow Lectures to make announcement and
write suggestions as well as providing class lists
 Feedback and rating: The system will allow students to provide feedback and
ratings for tutors and courses.
 Personalization: The system will provide personalized learning experiences
for students based on their learning style, interests, and performance.
 Progress reports: The system will provide progress reports for both tutors and
students, showing course completion rates, quiz scores, and etc.
 Content management: The system should provide tools for tutors to manage
course content, including adding, editing, and deleting course materials.
 Certification: The system will offer certification for completing quiz. This can
be in the form of a digital badge, a certificate, or a diploma.

You might also like