You are on page 1of 16

Online Quiz App Website

Software Requirements Specification

15th April 15, 2024

Akshat Singh

Prepared for
Continuous Assessment 3

Spring 2024
Table of Contents
1.Introduction
1.1 Purpose

1.2 Intended Audience and Reading Suggestions

1.4 Project Scope

2. Overall Description
2.1 Product Perspective

2.2 Product Features

2.3 User Classes and Characteristics

2.4 Operating Environment

2.5 Design and Implementation Constraints

2.6 User Documentation

2.7 Assumptions and Dependencies

3. System Features
3.1 Home Page

3.2 Secure Login

3.3 Shopping Cart Functionality

4. External Interface Requirements


4.1 User Interfaces

4.2 Hardware Interfaces

5. Other Nonfunctional Requirements


5.1 Performance Requirements
5.2 Safety Requirements

5.3 Security Requirements

5.4 Software Quality Attributes

1. Introduction
1.1 Purpose
The purpose of developing the Online Quiz Application Website is to provide a
robust platform for users to engage in interactive quizzes on various topics. By
offering an intuitive and accessible interface, the website aims to cater to
individuals seeking to test their knowledge, educators looking to create custom
quizzes for their students, and organizations interested in conducting assessments or
training programs.
Through this platform, users will have the opportunity to enhance their learning
experience, assess their understanding of different subjects, and track their progress
over time. Additionally, administrators will have the tools necessary to efficiently
manage quizzes, monitor user engagement, and contribute to the continuous
improvement of the platform.
Overall, the Online Quiz Application Website strives to facilitate a dynamic and
engaging learning environment, fostering curiosity, knowledge acquisition, and
skill development among its users.

1.2 Document Conventions


In the documentation of the software project. This could include notation styles,
formatting guidelines, definitions of technical terms, or references to industry
standards. The purpose is to ensure consistency and understanding across all
stakeholders and team members involved in the project.

1.3 Intended Audience and Reading Suggestions


The intended audience for the Online Quiz Application Website project includes
developers, project managers, quality assurance/testers, and stakeholders such as
clients, sponsors, and end-users. Developers will refer to this document to
understand the functional and non-functional requirements, system architecture, and
design constraints. Project managers will utilize it for gaining insight into project
scope, timelines, resource requirements, and deliverables. Quality assurance/testers
will use it as a reference for developing test cases, verifying system functionality,
and ensuring adherence to specified requirements and quality standards.
Stakeholders will review it to understand the features, capabilities, and user
experience provided by the Online Quiz Application Website. To effectively grasp
the content, stakeholders are recommended to start with the "Introduction" section
to understand project objectives, followed by a thorough review of the "System
Features" to comprehend the core functionality. They should pay particular attention
to the "External Interface Requirements" to understand the system's interactions and
to the "Non-functional Requirements" for performance, security, and reliability
considerations. Familiarizing themselves with the document conventions outlined in
the "Document Conventions" section will help stakeholders navigate the document
effectively and extract the necessary information for their respective roles and
responsibilities.

1.4 Project Scope


The project scope for the Online Quiz Application Website encompasses the
development of a comprehensive platform that facilitates interactive quizzes on
various topics. It includes features such as user registration and authentication, quiz
creation and management, quiz-taking, scoring, result display, and an admin panel
for quiz management. The website will function as a standalone system accessible
through web browsers, interacting with users through an intuitive user interface.
Users will have the ability to register for accounts, log in securely, browse available
quizzes, select and take quizzes, and view their scores and results upon completion.
Administrators will have access to a dashboard for managing quizzes, including the
creation, editing, and deletion of quizzes and questions. The scope also involves
ensuring compatibility with modern web browsers and adherence to best practices
for web development and security. Additionally, considerations will be made for
scalability, responsiveness, and usability to accommodate potential future
enhancements and a growing user base. The project scope does not include
integration with external systems or extensive customization beyond the specified
features and functionality outlined in this document.

2. Overall Description
2.1 Product Perspective
The Online Quiz Application Website functions as a standalone system, accessible
through web browsers. It interacts with users to provide a platform for interactive
quizzes. While operating independently, it communicates with a backend database
to store user data, quizzes, and results. Users can register, log in securely, browse
quizzes, take quizzes, and view results. Admins have tools for quiz creation,
management, and analytics through a dedicated dashboard. Overall, it offers a
seamless experience for users and admins, prioritizing user-friendliness and
compatibility across devices.

2.2 Product Features

1. User Registration and Authentication: Secure account creation and login.

2. Quiz Creation and Management: Admins create, edit, and schedule quizzes.

3. Quiz Taking: Users browse, take quizzes, and view results.

4. Scoring and Result Display: Real-time scoring and immediate result feedback.
5. User Progress Tracking: Users monitor quiz history and performance.

6. Admin Dashboard: Comprehensive tools for quiz management and analytics.

7. Customization Options: Admins customize quiz settings and branding.

8. User Engagement Features: Social sharing and leaderboards.

9. Accessibility and Responsiveness: Compliance and responsiveness across


devices.

2.3 User Classes and Characteristics


1. Admins:

-Characteristics: Administrators responsible for managing quizzes and platform


settings.

-Responsibilities: Create and edit quizzes, manage user accounts, access analytics
and reporting.

-Permissions: Full access to all administrative features and functionalities.

-Actions: Create quizzes, edit quiz details, manage questions, view analytics.

2. Users:

-Characteristics: Individuals or learners who access the platform to take quizzes.

-Responsibilities: Participate in quizzes, track personal progress and performance.


-Permissions: Limited to quiz-taking functionalities and personal profile
management.

-Actions: Browse available quizzes, take quizzes, view results, track progress.

2.4 Operating Environment


• The Online Quiz Application Website operates on modern web browsers and
is compatible with various devices, including desktops, laptops, tablets, and
smartphones. It requires an active internet connection for access. The
backend infrastructure ensures scalability, reliability, and security.
Development utilizes HTML, CSS, JavaScript for the frontend, and
frameworks like Django or Flask for the backend. The website is compatible
with major operating systems such as Windows, macOS, and Linux
distributions, ensuring accessibility across different environments.

2.5 Design and Implementation Constraint

 Responsive Design: The website must be designed to be responsive, ensuring


compatibility across various devices and screen sizes.
 Security Measures: Implementation must adhere to best practices for security,
including data encryption, secure authentication mechanisms, and protection
against common web vulnerabilities.
 Scalability: The system architecture should be designed to accommodate
potential growth in user base and quiz content without sacrificing
performance.
 Browser Compatibility: The website must function consistently across
modern web browsers such as Google Chrome, Mozilla Firefox, Safari, and
Microsoft Edge.
 Backend Framework Compatibility: Development must utilize backend
frameworks like Django or Flask, with consideration for compatibility and
integration with other technologies.
 Compliance Requirements: The implementation must comply with relevant
regulations and standards, such as data protection laws (e.g., GDPR) and
accessibility guidelines (e.g., WCAG).
 Development Tools and Resources: Availability and familiarity with
development tools and resources, ensuring efficient development, testing, and
maintenance processes.
 Third-Party Integrations: Integration with external services or APIs must be
carefully implemented to ensure functionality and data security.

2.6 User Documentation


 User documentation for the Online Quiz Application Website includes a user
manual, FAQ section, video tutorials, troubleshooting guide, contact
information, feedback mechanism, and accessibility information.

2.7 Assumptions and Dependencies


• Dependence on third-party web hosting services.
• Assumption that users have basic internet access and computing devices.

3. System Features
Certainly! Here are the system features in detail:

1. User Registration and Authentication:


- Description: Users can register for accounts by providing necessary information
and securely authenticate their identities to access the platform.
- Functionality:
- Registration form with fields for username, email, password, etc.
- Verification mechanism (e.g., email verification) to validate user accounts.
- Secure login process with password hashing and encryption.

2. Quiz Creation and Management:


- Description: Administrators can create, edit, and manage quizzes, including
adding questions, setting quiz parameters, and scheduling quizzes for release.
- Functionality:
- Intuitive interface for quiz creation, with options to add various question types
(e.g., multiple-choice, true/false, open-ended).
- Ability to set quiz titles, descriptions, time limits, and scoring criteria.
- Tools for organizing quizzes into categories or topics for easy navigation.

3. Quiz Taking:
- Description: Users can browse available quizzes, select quizzes to take, and
engage in quiz-taking activities with interactive question formats.
- Functionality:
- Browse feature to discover quizzes by category, topic, or popularity.
- User-friendly interface for taking quizzes, presenting questions one at a time
with navigation controls.
- Support for various question types, including multiple-choice, true/false, and
open-ended questions.

4. Scoring and Result Display:


- Description: The system calculates quiz scores based on user responses and
displays detailed results upon completion, including correct/incorrect answers
and overall performance feedback.
- Functionality:
- Real-time scoring mechanism to calculate scores as users progress through
quizzes.
- Immediate display of results with a breakdown of correct/incorrect answers and
total score.
- Option for users to review quiz questions and answers after completion.

5. User Progress Tracking:


- Description: Users can track their quiz history, view past performance metrics,
and monitor progress over time to gauge learning outcomes.
- Functionality:
- Personalized dashboard or profile section displaying user-specific quiz history
and performance metrics.
- Graphical representation of progress, showing trends and improvements over
time.
- Ability to filter and sort quiz history based on completion status, score, or date.

6. Admin Dashboard:
- Description: Administrators have access to a centralized dashboard for managing
quizzes, monitoring user activity, and analyzing performance metrics.
- Functionality:
- Overview of all quizzes, including status (active, inactive), number of
participants, and average scores.
- Tools for editing existing quizzes, adding new quizzes, and deleting outdated
quizzes.
- Analytics section with detailed insights into user engagement, quiz popularity,
and performance trends.

7. Customization Options:
- Description: Administrators can customize quiz settings and branding elements
to align with organizational preferences and objectives.
- Functionality:
- Configuration options for quiz parameters such as time limits, passing scores,
and question randomization.
- Branding customization, including logo placement, color schemes, and custom
headers/footer for quizzes.
- Ability to create custom themes or templates for consistent branding across
quizzes.

8. User Engagement Features:


- Description: The platform includes features to enhance user interaction,
encourage participation, and foster a sense of community.
- Functionality:
- Social sharing buttons to allow users to share quiz results on social media
platforms.
- Leaderboards showcasing top performers or high scorers to motivate
competition and engagement.
- Interactive elements such as badges, rewards, or achievements to incentivize
quiz completion and participation.

9. Accessibility and Responsiveness:


- Description: The system is designed to be accessible to users with disabilities
and responsive across various devices and screen sizes for optimal user
experience.
- Functionality:
- Compliance with accessibility standards such as WCAG (Web Content
Accessibility Guidelines) for users with disabilities.
- Responsive design principles implemented to ensure consistent functionality
and layout across desktop, tablet, and mobile devices.
- Testing across multiple browsers and devices to verify compatibility and
responsiveness.

4. External Interface Requirements


4.1 User Interfaces

- Description: Intuitive and user-friendly interfaces for administrators and


users.
- Requirements:
- Clear navigation for easy access to features.
- Consistent layout and design for a cohesive experience.
- Responsive design for compatibility across devices.
4.2 Hardware Interfaces
The system requires compatibility with standard hardware configurations and
input devices such as keyboards, mice, and touchscreens to facilitate user
interactions. It should seamlessly integrate with these hardware components to
ensure smooth navigation and interaction for users accessing the Online Quiz
Application Website.

5. Other Nonfunctional Requirements

5.1 Performance Requirements


 Responsiveness: The system should respond to user interactions within 1
second to provide a seamless user experience.
 Scalability: The system should handle concurrent user requests efficiently,
scaling up to accommodate increased traffic during peak usage periods
without significant degradation in performance.
 Load Time: Web pages should load within 3 seconds to minimize user wait
times and ensure optimal usability.
 Database Query Speed: Database queries should execute within 200
milliseconds to retrieve quiz data and user information promptly.
 Peak Load Handling: The system should be capable of handling a peak load
of 1000 concurrent users without experiencing system crashes or slowdowns.
 Resource Utilization: The system should optimize resource utilization,
aiming for CPU and memory usage below 70% during normal operation to
ensure system stability and performance efficiency.

5.2 Safety Requirements


 Data Security: Ensure all user data, including personal information and quiz
results, is encrypted and securely stored to prevent unauthorized access or
data breaches.
 User Authentication: Implement robust authentication mechanisms, such as
multi-factor authentication, to verify user identities and prevent unauthorized
access to accounts.
 Protection Against Malicious Activities: Implement measures, such as
CAPTCHA verification and rate limiting, to mitigate the risk of automated
attacks, such as brute-force login attempts or spam submissions.
 Data Integrity: Implement measures to ensure the integrity of quiz data, such
as checksum validation and data validation checks, to prevent data
corruption or tampering.
 Error Handling: Implement comprehensive error handling mechanisms to
gracefully handle unexpected errors and exceptions, minimizing the risk of
system crashes or data loss.
 Backup and Recovery: Regularly backup user data and system
configurations to facilitate quick recovery in the event of data loss or system
failures.
 Compliance with Privacy Regulations: Ensure compliance with relevant
privacy regulations, such as GDPR, by obtaining user consent for data
collection and processing and providing transparency about data usage
practices.

5.3 Software Quality Attributes


 Reliability: Ensure the system operates consistently and accurately under
varying conditions, minimizing the occurrence of errors or failures.
 Performance: Optimize system responsiveness and efficiency to deliver
timely responses and handle user interactions effectively, even under high
loads.
 Security: Implement robust security measures to protect user data and
prevent unauthorized access, ensuring confidentiality, integrity, and
availability.
 Usability: Design intuitive and user-friendly interfaces to facilitate easy
navigation and interaction, enhancing user satisfaction and productivity.
 Scalability: Design the system to accommodate growth in user base and data
volume, ensuring it can handle increased demand without significant
performance degradation.
 Maintainability: Structure the system codebase and architecture to be
modular, well-documented, and easy to maintain and update, facilitating
future enhancements and bug fixes.
 Portability: Ensure the system can be deployed and run across different
environments and platforms, allowing users to access it from various devices
and operating systems.
 Compatibility: Ensure compatibility with different web browsers and devices
to provide a consistent user experience across various configurations.

10. Future Enhancements:


• Social Integration: Allow users to share quiz results on social media.
• Advanced Analytics: Provide deeper insights for administrators.
• Gamification Elements: Add badges, rewards, and leaderboards.
• Adaptive Learning: Personalize quiz content based on user preferences.
• Mobile Application: Develop a dedicated mobile app for native access.
• Collaborative Quizzing: Enable users to create and take quizzes together.
• LMS Integration: Integrate with learning management systems.
• AI-powered Recommendations: Offer personalized quiz recommendations.
• Accessibility Enhancements: Improve features for users with disabilities.
• Multimedia Support: Include videos, images, and audio in quizzes.

ANALYSIS MODELS
1.1 LEVEL – ZERO DFD
1.2 LEVEL – ONE DFD
CONCLUSION

In conclusion, the Online Quiz Application Website offers a


comprehensive platform for users to engage in interactive quizzes on
various subjects. Through detailed system features, robust security
measures, and user-friendly interfaces, the system aims to provide an
enriching and seamless experience for both administrators and users.
With a focus on performance, scalability, and future enhancements, the
system is poised to adapt to evolving user needs and technological
advancements. As depicted in the Level 0 Data Flow Diagram, the system
efficiently manages user interactions, quiz data, and administrative tasks,
facilitating smooth operation and effective knowledge sharing. Overall,
the Online Quiz Application Website is positioned to foster learning,
engagement, and collaboration among users while upholding standards of
quality, reliability, and accessibility.

You might also like