SRS OnlineNotesSharing
SRS OnlineNotesSharing
Introduction
1.1 Purpose
The purpose of this SRS document is to provide a detailed
description of the "Online Notes Sharing." The purpose of the
project is to create a platform where students and Teachers can
easily upload, share, and access educational notes, fostering
collaboration, accessibility, and efficiency in learning.
System Modules:
The system includes the following core modules, each tailored to
specific user roles:
1. User Registration and Authentication:
2. Student Module:
4. Admin Module:
1.5 References
Python Django Documentation (https://docs.djangoproject.com/)
SQLite Documentation (https://www.sqlite.org/docs.html)
2. Overall Description
2.1 Product Perspective
2.2 Product Functions
The "Online Notes Sharing" system offers several core functionalities to
facilitate note-sharing, user management, and content moderation. Below
is a detailed description of the main functions, organized according to
user roles: Student, Teacher, and Admin.
1. User Registration and Authentication
Description: The system provides a secure registration and login
mechanism for users. Users can sign up as students, Teachers, or
administrators.
Features:
2. Student Module
Description: The student module allows registered students to
upload, download, and manage their notes. It also provides a
dashboard to organize and track study materials.
o Features:
o Upload Notes: Students can upload their notes and study materials for
sharing.
o Download Notes: Students can browse and download notes shared by
other users.
o Organize Notes: Allows students to categorize and tag their notes for
easier access and sharing.
o View Note History: Students can view the history of notes they've
uploaded or downloaded.
3. Teacher Module
Description: The Teacher module enables Teachers to upload,
moderate, and manage notes shared by students. Teachers can also
interact with students and ensure quality content.
Features:
4. Admin Module
Description: The admin module provides administrative
functionalities to manage users, monitor activities, and oversee the
proper functioning of the platform.
Features:
o User Management: Admins can view, add, update, and delete student
and Teacher accounts.
o Note Moderation: Admins can review and approve or reject notes
uploaded by students.
o Platform Management: Admins can manage system settings, ensure
data security, and handle platform maintenance tasks.
o System Metrics: Provides a dashboard to track key metrics such as
the number of students, Teachers, uploaded notes, and downloads.
o Reporting and Analytics: Admins can generate reports on note-
sharing activity, user engagement, and system performance.
Student
o Description: Individuals who use the platform to upload and download
notes, study materials, and participate in discussions. They can interact
with notes shared by other users and contribute their own.
o Characteristics:
- Primarily access the platform to share and acquire notes.
- Can organize and manage their personal study materials.
- Interact with other students and educators to enhance the learning
experience.
Educator
o Description: Teachers or professors who upload course related notes and
resources for students. They also moderate content to ensure quality and
relevance.
o Characteristics:
- Upload lecture notes, tutorials, and other resources for students.
- Provide feedback on student uploaded notes.
- Interact with students to support their learning needs.
- Can moderate and approve/reject student contributed content.
Admin
o Description: Platform administrators who manage user accounts, oversee
the moderation of content, and ensure that the system operates smoothly.
o Characteristics:
- Responsible for managing student and educator accounts.
- Oversee the content uploaded by users (approve or reject notes).
- Ensure smooth platform operation and handle any system related issues.
- Generate reports and track platform statistics.
Developer
o Description: Programmers and technical personnel involved in the
development, maintenance, and enhancement of the Online Notes Sharing
system.
o Characteristics:
- Work on system development, debugging, and feature enhancements.
- Ensure the platform runs efficiently and scales as necessary.
- Maintain and update the codebase to meet evolving user needs.
Project Manager
o Description: Individuals responsible for overseeing the progress of the
“Online Notes Sharing” project, ensuring it meets deadlines and
objectives.
o Characteristics:
- Supervise project timelines and deliverables.
- Coordinate between developers, administrators, and users.
- Ensure that the project stays aligned with goals and stakeholders'
expectations.
Tester
o Description: Quality assurance professionals who verify the functionality
of the system, identify bugs, and ensure that the platform meets its
specifications and performance requirements.
o Characteristics:
- Conduct tests to ensure the system is free of bugs and meets user
requirements.
- Test all platform functionalities from a user perspective.
- Provide feedback to developers on potential improvements or issues.
2.4 Operating Environment
Server Side
Component Details
Operating System Windows
Programming Language Python
Framework Django
Database SQLite
Web Server Apache
Configuration Requires installation of Python,
Django, SQLite, and a web server
(Apache or Nginx), along with
necessary libraries and dependencies
Client Side
Component Details
Supported Browsers Google Chrome, Mozilla Firefox
Supported OS Windows
Browser Requirements Utilizes web technologies like HTML,
CSS, JavaScript, and Bootstrap to
ensure compatibility and
responsiveness across modern web
browsers
2.5 Design and Implementation Constraints
HOME PAGE
2.6 User Documentation
After developing system user documentation will be prepared and help
document will be provided
User Guide: Includes details on how donors, volunteers, and
admins can use the system.
Admin Manual: Covers system administration tasks, including
user management.
About Page
Contact Us Page
USER SIGNUP PAGE
USER LOGIN PAGE
ADMIN LOGIN:
ADMIN HOME:
USER HOME
3.2 Hardware Interfaces
Server Hardware: Standard web server configuration (Intel Core
i5 or higher, 8GB RAM).
Client Hardware: General requirements for a modern PC.
Student Module:
o Manage Account:
- Update personal information and view account details.
o Upload Notes:
- Submit and upload notes for specific courses or subjects in formats
like PDF, Word, or PPT.
o Download Notes:
- Access and download shared notes for their enrolled courses or
subjects.
o Search Notes:
- Search for specific topics or subjects to find relevant shared materials.
o Track Contribution:
- View details of their uploaded and downloaded notes history.
Teacher Module:
o Manage Account:
o Track Contributions:
Admin Module:
o Manage Accounts:
o Notes Management:
- Secure user registration and login functionality using passwords for all
user roles.
o Maintainability
- The application will be designed to allow easy adoption of changes,
including adding new features, updating existing functionalities, or fixing
bugs.
o Portability
- The application will be easily portable across different operating systems
(Windows, macOS, and Linux) as it is developed using platform-
independent technologies like Python and web frameworks such as
Django or Flask.