-
Notifications
You must be signed in to change notification settings - Fork 1
Requirements ‐ 451
Yağız Güldal edited this page Dec 7, 2024
·
9 revisions
- User: A person interacting with the platform, including both guests who view content and registered users with accounts.
- Guest: A user who can only view content in read-only mode without creating an account or interacting with features like quizzes or forums.
- Registered User: A person who creates an account, whether or not they actively interact with quizzes, forums, or other features of the platform.
- Admin: A super registered user with special permissions to manage and oversee forums, quizzes, and users when needed. They have more control than regular users.
- Username: Publicly visible name; used in forums, comments, etc.
- Login: Users can access the application or website by entering their email address and password.
- Authentication: The steps of establishing identity and verifying permission to access the platform.
- User Level: A classification that indicates a user's proficiency level in a language, helping to tailor learning experiences to their skills (e.g., beginner, intermediate, advanced).
- Profile Page: A page that displays a user's quizzes, forum interactions, and personal stats.
- Quiz: A tool for learning a language that can be provided by the app or created by users using provided quiz creation tools. It has one or more questions on a topic.
- Question: A prompt in a quiz that asks for an answer. It can be a multiple-choice question or require a written response which helps users test their knowledge in language learning.
- Forum: A platform where users can share posts and comment on others about language learning.
- Forum Post: An entity in the forum where users can ask questions or share information about language learning.
- Comment: A response that can be an answer to a question, a question itself, or feedback on the information shared, but must relate to the topic of the post.
- Misinformation Tag: A label that can be added to incorrect quizzes, misleading questions, or forum posts and comments that contain false information.
- Hateful Speech Tag: A tag that can be added to forum posts which contains hate speech, slang, racist discourses etc.
- Forum Tag: A label used to categorize forum posts. (e.g., #question, #information, #meme).
- Quiz Tag: A label used to categorize quizzes, helping users identify the topic or type of quiz (e.g., #grammar, #vocabulary, #culture).
- Quiz Difficulty Tag: A label used to indicate the level of challenge of a quiz, helping users choose quizzes that match their skill level (e.g., @A2, @B1, @C1).
1.1.1 Guest Requirements
- 1.1.1.1 Guests shall be able to sign up.
- 1.1.1.2 Guests may need to verify their email when they sign up.
- 1.1.1.3 Guest may be able to reset their passwords through the 'Forget Password' functionality.
- 1.1.1.4 Guest shall be able to log in.
1.1.2 Logged-in User Requirements
- 1.1.2.1 Logged-in Users shall be able to log out.
- 1.1.2.2 Logged-in Users shall be able to view their profile.
- 1.1.2.3 Logged-in Users shall be able to change their password.
- 1.1.2.4 Logged-in Users shall be able to view their bookmarked forum posts/comments while viewing their profile.
- 1.1.2.5 Logged-in Users shall be able to view their bookmarked quizzes while viewing their profile.
- 1.1.2.6 Logged-in Users shall be able to view their own forum posts/comments while viewing their profile.
- 1.1.2.7 Logged-in Users shall be able to change their profile picture while viewing their profile.
- 1.1.2.8 Logged-in Users shall be able to view their own created quizzes while viewing their profile.
- 1.1.2.9 Logged-in Users shall be able to view their own solved quizzes & results while viewing their profile.
- 1.1.2.10 Logged-in Users shall be able to view their followers while viewing their profile.
- 1.1.2.11 Logged-in Users shall be able to view the people following them while viewing their profile.
- 1.1.2.12 Logged-in Users shall be able to search for other users using their usernames.
- 1.1.2.13 Logged-in Users shall be able to go to the quiz page when viewing a quiz in someone's profile.
- 1.1.2.14 Logged-in Users shall be able to go to the forum post when viewing a post in someone's profile.
- 1.1.2.15 Logged-in Users shall be able to follow other users.
- 1.1.2.16 Logged-in Users shall be able to unfollow other users.
- 1.1.2.17 Logged-in Users shall be able to view the created, solved quizzes and the forum posts/comments of another user when viewing their profile.
- 1.1.2.18 Logged-in Users shall be able to view the following/followers of another user from their profile.
1.1.3 Admin Requirements
- 1.1.3.1 Admins shall be able to do everything that a user can.
- 1.1.3.2 Admins shall be able to ban users.
1.2.1 Guest Requirements
- 1.2.1.1 Guests shall be able to view the quiz feed.
- 1.2.1.2 Guests shall be able to see quiz statistics and details.
- 1.2.1.3 Guests shall be able to use the search functionality to find quizzes.
1.2.2 Logged-in User Requirements
- 1.2.2.1 Logged-in Users shall be able to do everything that guests can.
- 1.2.2.2 Logged-in Users shall be able to create a quiz.
- 1.2.2.3 Logged-in Users shall be able to add questions to a quiz with the help of Lexvo while creating a quiz.
- 1.2.2.4 Logged-in Users shall be able to add tags to a quiz (including difficulty tags) while creating a quiz.
- 1.2.2.5 Logged-in Users shall be able to take a quiz.
- 1.2.2.6 Logged-in Users shall be able to cancel a quiz while taking it.
1.2.3 Admin Requirements
- 1.2.3.1 Admins shall be able to do everything that a logged-in user can.
- 1.2.3.2 Admins shall be able to delete any quiz.
- 1.2.3.3 Admins shall be able to change the tags of any quiz.
1.3.1 Guest Requirements
- 1.3.1.1 Guests shall be able to view the forum feed.
- 1.3.1.2 Guests shall be able to view the comments under a forum post.
- 1.3.1.3 Guests shall be able to search use the search functionality to find forum posts.
1.3.2 Logged-in User Requirements
- 1.3.2.1 Logged-in users shall be able to do everything that a guest can.
- 1.3.2.2 Logged-in users shall have their feeds customized.
- 1.3.2.3 Logged-in users shall be able to create new posts in the forum.
- 1.3.2.4 Logged-in users shall be able to add tags to the post while creating new posts in the forum.
- 1.3.2.5 Logged-in users shall be able to create new comments under posts.
- 1.3.2.6 Logged-in users shall be able to bookmark posts and comments in the forum.
- 1.3.2.7 Logged-in users shall be able to delete their own comments.
- 1.3.2.8 Logged-in users shall be able to like/unlike posts and comments.
1.3.3 Admin Requirements
- 1.3.3.1 Admins shall be able to do everything that a logged-in user can.
- 1.3.3.2 Admins shall be able to delete any post.
- 1.3.3.3 Admins shall be able to delete any comment.
- 1.3.3.4 Admins shall be able to adjust the tags of a post.
2.1 Availability and Reliability Requirements
- 2.1.1 The project should be available in English and Turkish (to cater to beginner level learners as well).
- 2.1.2 Should set up backups to protect against data loss and quickly fix any problems if data gets corrupted or lost.
- 2.1.3 The platform must be capable of accommodating a minimum of 100 simultaneous user actions.
2.2 Performance
- 2.2.1 The system shall respond to requests within 3 seconds.
- 2.2.2 The system should be capable of handling up to 100 requests per second
- 2.2.3 The platform must maintain a minimum up-time of 99%.
2.3 Security
- 2.3.1 Passwords maintained in the system's database will be secured through encryption
- 2.3.2 Private personal information of users (their email(s) and password) shall be concealed from other members
- 2.3.3 The system should allow only strong passwords for user accounts, combining letters, numbers, and symbols
2.4 Compatibility
- 2.4.1 Compatibility with popular web browsers like Google Chrome, Safari is ensured for the project.
- 2.4.2 The users shall be able to enter the system from a smartphone or tablet.
- 2.4.3 It should be compatible with different popular Operating Systems.
🏠 Home
- Oktay Özel
- Aras Taşçı
- Yunus Emre Özdemir
- Kaan Yolcu
- Elif Nur Deniz
Eymen Çeliktürk- Anıl Köse
Battal Hazar- Halil Özkan
Ebru Özçakı- Ali Tarık Şahin
- Ahmet Oğuz Engin
- Yağız Güldal
- Lab Report 1
- Lab Report 2
- Lab Report 3
- Lab Report 4
- Lab Report 5
- Lab Report 6
- Lab 7 PR
- Lab 8 PR
- Lab Report 9
- Lab Meeting 1
- Weekly Meeting 1
- Lab Meeting 2
- Weekly Meeting 2
- Frontend Meeting 1
- Lab Meeting 3
- Weekly Meeting 3
- Lab Meeting 4
- Frontend Meeting 2
- Weekly Meeting 4
- Weekly Meeting 5
- Frontend Meeting 3
- Lab Meeting 5
- Weekly Meeting 6
- Weekly Meeting 7
- Lab Meeting 6
- Weekly Meeting 8
- Lab Meeting 7
- Lab Meeting 8
- Weekly Meeting 9
- Requirements
- Elicitation Questions
- Project Plan
- Use Case Diagram
- Sequence Diagrams
- Class Diagrams
- Front-End Mockups
- Mobile Mockups
- User Scenario 1
- User Scenario 2
- User Scenario 3
- User Scenario 4
- User Scenario 5
- RAM
- Tags Documentation
- Domain Specific Improvement Ideas
- Lab-6 User Stories
- Customer Milestone 2 Plan
- Software Quality Plan
- Implemented Requirements For Milestone 2
- Customer Milestone 3 Plan
📅 Meetings
- Meeting 1
- Meeting 2
- Meeting 3
- Meeting 4
- Meeting 5
- Meeting 6
- Meeting 7
- Meeting 8
- Meeting 9
- Meeting 10 - Class Diagrams
- Meeting - Frontend 1
- Meeting - Backend 1
- Meeting 11
- Meeting - Backend 2 Wikidata
- Meeting - Frontend 2
- Meeting - Deployment
- Meeting - Frontend 3
- Meeting 12
- Meeting - Backend 3
- Meeting - Backend 4
- Meeting - Frontend 4
- Meeting 13
- Meeting 14
- Meeting 15
- Meeting 16
💻 Project
- Class Diagrams
- Sequence Diagrams
- Use Case Diagrams
- Requirements
- Elicitation Questions
- Project Plan
- Work Done By Each Member
- Milestone Report 1
- Scenarios-Mockups
- Responsibility Assignment Matrix
- Responsibility Assignment Matrix Old Version
- Related Software Analysis
- Workdone Each Member Milestone 2
- Milestone 2 Report
- Work Done By Each Member Milestone 3
- RAM 3
- Milestone Report 3