Lab 8 ‐ PR - bounswe/bounswe2024group8 GitHub Wiki

Checklist

Primary Features

  • PF1 - Semantic Search:

We have implemented semantic search feature using Wikidata to enhance browsing results. When a keyword is searched, corresponding child instance is found in Wikidata and other sibling instances from the parent classes are fetched. Then, they are also being searched in the database

  • PF2 - Achievements:

Achievements are the main method that is utilized for distinguishing users based on their activity on our app. Users can be awarded in response to several actions, such as receiving likes, liking other posts, commenting, bookmarking etc.

  • PF3 - User Management:

We have implemented various user management features to offer a more personalized experience. Users can follow/unfollow other users and categories to create a feed page tailored to their specific interests. Furthermore, they can also upload a custom profile picture to have a more customized, distinguishable account.

  • PF4 - Tournaments:

Tournaments are one of the core features that allow users to interact with others in a competitive manner. Every week, fully automated tournaments begin under every category and users can join those via creating their unique designs. Then, they get a ranking according to the received interaction with their posts.

Acceptance Criteria & Examples

PF1:

  • Users shall be able to retrieve search post results that contain the searched keyword in their title, tags.
  • Users shall be able to retrieve other search post results that contain keywords, which can be fetched using the Wikidata subclass property.

As an example, when "couch" is searched, related seating items should also be returned, such as bench, sofa and chair.

PF2:

  • Users shall be able to earn achievements and view them on their profile when required activity is done.

As an example, users should earn "Commenter" achievement and corresponding experience points when they comment on a post.

PF3:

  • Users shall be able to update their profile picture
  • Users shall be able to follow/unfollow other users
  • Users shall be able to follow/unfollow categories

As an example, when users upload ".jpeg" format images to set as their profile picture, it can be viewed by other users in their profile. Furthermore, when a user or a category is followed, its content can be viewed in the feed.

PF4:

  • Users shall be able to join tournaments under categories with their own posts.
  • Users shall be ranked based on the interaction they received with the entered post.
  • Users shall be awarded with the prize when they finish weekly tournaments in top 3.

As an example, when a user joins the tournament and receives the highest interaction, he/she should earn 30 experience points.

Domain-Specific Features

Acceptance Criteria & Examples

API and Documentation

Acceptance Criteria & Examples

AD1:

  • Should be available in live environment.
  • Should be compatible with Multimedia required endpoints.
  • Should be configured to easily authorize.

AD2:

  • Primary endpoints should include a description in swagger page.
  • Primary endpoints should show correct possible http response statuses with example bodies.

AD3:

  • Should return users with username similar to given query string.
  • Should match with case insensitive approach.

Standards

Acceptance Criteria & Examples

Testing Strategies

Acceptance Criteria & Examples