Requirements and Elicitation Questions - bounswe/bounswe2024group11 GitHub Wiki
- User: A person who uses the application or website. Can be registered or unregistered.
- Guest user: A user who uses the application or website without logging in to the system.
- Registered user: A user who is registered and uses the application or website as logged in.
- Username: A unique string that identifies the registered user.
- Password: A string that is used by the user to authenticate the system.
- Account: An instance associated with the user when a user registers to the system.
- Post: An instance that has a title, a text, an image (optionally), a publication and an edit date, an author, like counter, a list of people that liked the post. Each post is linked to a specific comics item for semantic searching purposes.
- Author: A registered user and the creator of a post.
- Profile: The page where a registered user's username, biography, profile picture, registration date, following list, and follower list are presented.
- Mute: When a registered user mutes another registered user, he will no longer see posts of the muted user.
- Block: When a registered user blocks another registered user, the blocked user will no longer see posts of the blocker.
- Feed: A list of posts presented to a user.
- Metadata Information: Information about a topic, a character, etc. that is obtained from Wikidata API.
- Semantic Searching: A search key taken from user is used to find items related to comics using wikidata API. They are sorted by their sitelinks. Then the posts that are related to the items are shown in the same sorted order.
- Question: These can be posted on the forum by the registered users and the other registered users can post answers to them.
- Answer: These can be posted to respond the questions by the registered users.
1.1.1 Account Requirements
-
1.1.1.1 Users shall be able to register the system by providing a username, email, their proficiency level in English, and password.
-
1.1.1.2 Registered users shall be able to log in to the system by providing username and password.
-
1.1.1.3 Registered users should be able to reset their passwords.
- 1.1.1.3.1 Registered users should receive email when they reset their passwords.
-
1.1.1.4 Registered users should be able to delete their accounts.
- 1.1.1.4.1 Registered users should receive email when they delete their accounts.
-
1.1.1.5 Registered users shall be able to log out from the system.
-
1.1.1.6 Registered users should have a profile page.
- 1.1.1.6.1 Registered users should be able to edit their profile.
- 1.1.1.6.2 Registered users should be able to change their proficiency level in English in their profile.
1.1.2 Question Requirements
-
1.1.2.1 Create
- 1.1.2.1.1 Registered users shall be able to create questions by providing a title and text.
- 1.1.2.1.2 Users shall be able to see the author of the question.
- 1.1.2.1.3 Registered users shall be able to answer the question.
- 1.1.2.1.4 Registered users shall be able to link their questions utilizing Linked Data.
-
1.1.2.2 Like
- 1.1.2.2.1 Users should be able to see how many people have liked the questions and answers.
- 1.1.2.2.2 Users should be able to see who liked the questions and answers.
- 1.1.2.2.3 Registered users should be able to like a questions and answers.
- 1.1.2.2.4 Registered users should be able to unlike a questions and answers.
-
1.1.2.3 Bookmark
- 1.1.2.3.1 Users should be able to see how many people have bookmarked the questions and answers.
- 1.1.2.3.2 Registered users should be able to bookmark a questions and answers.
- 1.1.2.3.3 Registered users should be able to unbookmark a questions and answers.
-
1.1.2.4 Search
- 1.1.2.4.1 Users shall be able to search previous questions based on words and see related questions as a result by typing words on the search bar.
-
1.1.2.5 Answer
- 1.1.2.1.5 Registered users shall be able to answer the questions by providing a text.
1.1.3 Quiz Requirements
Burada kaldΔ±k * 1.1.3.1 Create * 1.1.3.1.1 Registered users shall be able to create quizzes by providing quiz questions belonging the same type as the quiz. * 1.1.3.1.2 Users shall be able to see the creator of the quiz. * 1.1.3.1.3 Users shall be able to link their posts to a comics item by providing a tag-
1.1.2.2 Like
- 1.1.2.2.1 Users shall be able to see how many people have liked the post.
- 1.1.2.2.2 Users shall be able to see who liked the post.
- 1.1.2.2.3 Registered users shall be able to like a post.
- 1.1.2.2.4 Registered users shall be able to unlike a post.
-
1.1.2.4 Bookmark
- 1.1.2.4.1 Users should be able to see how many people have bookmarked the post.
- 1.1.2.4.2 Registered users shall be able to bookmark a post.
- 1.1.2.4.3 Registered users shall be able to unbookmark a post.
1.2.1 Semantic Search
- 1.2.1.1 The system shall be able to query wikidata API search with specific keywords.
1.2.2 Feed
- 1.2.2.1 The system should provide a feed for users.
- 1.2.2.1.1 The system should show recently published posts to guest users.
- 1.2.2.1.2 The system should show the registered user's followings' recently published posts to the registered user.
1.2.3 Authentication
- 1.2.3.1 The system shall only allow a username and an email address that is not used before upon registration.
- 1.2.3.2 The system shall remove the user's information when a user deletes his account.
- 1.2.3.3 The system shall hash users' authentication information.
2.1.1 Response Time
- 2.1.1.1 The system-user interaction should respond in an acceptable time.
- 2.1.1.2 The system-network interaction should result in an acceptable time.
2.1.2 Resource Utilization
- 2.1.2.1 The system should use CPU in an efficient manner.
- 2.1.2.2 The system should use memory in an efficient manner.
2.2.1 Authentication
- 2.2.1.1 The system should implement password-based authentication.
2.2.2 Authorization
- 2.2.2.1 The system should prevent unauthorized access to accounts.
2.2.3 Secure Communications
- 2.2.3.1 The system should be encrypted and secured by HTTPS protocol.
2.2.4 User Privacy
2.3.1 Browser Compatibility
- 2.3.1.1 The system should support Chrome version 124.0.6356.6 or later.
2.3.2 Mobile Compatibility
- 2.3.2.1 The system should support Android version 14 or later.