Use Cases - bounswe/bounswe2016group12 GitHub Wiki
UC #1: Sign Up
-
Actors: Unregistered users (Guests).
-
Purpose: Creating an account successfully.
-
Preconditions: User shall not have an account before.
-
Steps:
-
Guest will enter the website.
-
Guest will press sign-up button.
-
Guest will fill required fields(account name, e-mail,country etc).
-
Guest will check password and user name format.
-
System will check user name is not registered before.
-
Guest will press create account button.
-
Postconditions:
-
Either password or user name format has incorrect format, account creation cannot be completed until correct format appears.
-
If username exists in the system, creation cannot be completed.
-
After these steps are completed, a verification mail will be sent to user e-mail. After verification, creating the account will be completed.
UC #2: Login
-
Actors: Registered users.
-
Goal: Successfully logging in into user account.
-
Preconditions: User shall have an account.
-
Steps:
-
User will open the website.
-
User will press log-in part.
-
User will type username/e-mail and password.
-
System will check the (e-mail/username - password) tuple.
-
Postconditions:
-
If the tuple matches, then user will be able to get in his/her account.
-
Either password or e-mail/username does not match, the system will notify the user that "Username/password does not match".
UC #3: Forgot Password
-
Actors: Registered users.
-
Purpose: Enabling user to reaccess his/her account.
-
Preconditions: User's username/password combination does not match.
-
Steps:
-
User will click on "Forgot password" tab.
-
User will type the e-mail in the tab.
-
System will send the temporary password and current username to user's e-mail.
-
User will login with it if combination matches.
-
System will check the password format.
-
Postconditions:
-
If user/password combination matches, then user will change his/her own password.
-
Either password or e-mail/username does not match, the system will notify the user that "Username/password does not match".
UC #4: Search
-
Actors: Registered users and guests.
-
Purpose: Searching successfully with tag or keyword.
-
Preconditions: User shall enter the website.
-
Steps:
-
Users will type the keyword or tag in the search tab.
-
System will check for possible duplicates and will give appropriate results to users.
-
Postconditions:
-
Users and guests should see the results related to keywords.
UC #5: Changing Profile
-
Actors: Registered users.
-
Purpose: Successfully changing the information about the profile.
-
Preconditions:
-
User shall register the system.
-
User shall be logged into account.
-
Steps:
-
User will click on the profile tab.
-
In the profile page, user will edit information about himself/herself.
-
User will save them by clicking on save button.
-
Postconditions:
-
System will save the changes.
View Posts
-
Actors: Registered users and guests.
-
Purpose: Viewing comments,tags, videos etc about the post successfully.
-
Preconditions: User shall enter the website.
-
Steps:
-
Users will be able to see all videos, comments, photos etc. about the post.
-
Postcondition: No postcondition.
UC #6: Create Posts
-
Actors: Registered users.
-
Purpose: Creating a post with or without adding videos, photos etc. successfully.
-
Preconditions: User shall log in the account.
-
Steps:
-
User will write comments.
-
Optionally user can add videos, pictures, other comments or tags etc.
-
User will click on create post button.
-
System will check video, picture limits in terms of memory.
-
Postconditions:
-
If optional elements are under bounds, post will be successfully created otherwise the system will notify user that "The memory of video or music is X MB".
UC #7: Edit Posts
-
Actors: Registered users.
-
Purpose: Editing a post successfully.
-
Preconditions:
-
User shall log in the account.
-
Steps:
-
User will click on "Edit" tab for which post will be changed.
-
User will add/remove comments, materials, etc.
-
System will check the limits.
-
Postconditions:
-
It has the same postcondition with Create Post.
UC #8: Edit Comments
-
Actors: Registered users.
-
Purpose: Editing a comment successfully.
-
Preconditions:
-
User shall log in the account.
-
Steps:
-
User will click on "Edit" tab for which comment will be changed.
-
User will add/remove links,sentences, etc. to the comment.
-
System will check the limits.
-
Postconditions:
-
It has the same postcondition with Edit Post.
UC #9: Report Posts
-
Actors: Registered users.
-
Purpose: Reporting posts violating ethical issues, etc.
-
Preconditions:
-
User shall log in the account.
-
Steps:
-
User will see the post.
-
User will click on "Report post" button.
-
User can write a reason as optional.
-
User will click on "Send" button.
-
Postconditions:
-
The system admin will check the request.
-
Admin will remove the post if it has a violation issue.
UC #10: Report Comments
-
Actors: Registered users.
-
Purpose: Reporting comments violating ethical issues, etc.
-
Preconditions:
-
User shall log in the account.
-
Steps:
-
User will see the post.
-
User will click on "Report comment" button.
-
User can write a reason as optional.
-
User will click on "Send" button.
-
Postconditions:
-
The system admin will check the request.
-
Admin will remove the comment if it has a violation issue.
UC #11: Delete posts
-
Actors:Admins of the system.
-
Goals: Deleting post/posts have violation issues.
-
Preconditions:
-
The post must be reported.
-
Admin shall find the post inappropriate.
-
Steps:
-
Admin will click on the post.
-
Admin will check the delete option.
-
Admin will approve that.
-
Postconditions:
-
Admin removed the post and it becomes invisible for users.
UC #12: Delete comments
-
Actors:Admins of the system.
-
Goals: Deleting comment/comments have violation issues.
-
Preconditions:
-
The comment must be reported.
-
Admin shall find the comment inappropriate.
-
Steps:
-
Admin will click on the comment.
-
Admin will check the delete option.
-
Admin will approve that.
-
Postconditions:
-
Admin removed the comment and it becomes invisible for users.
UC #13: Ban user
-
Actors: Admins.
-
Goals: Removing an user violating rules.
-
Preconditions:
-
The user must be reported by another user.
-
Admin shall agree that user has inappropriate issues.
-
Steps:
-
Admin will see the report.
-
Admin will use ban button.
-
Postconditions:
-
The user will be banned and the user will not be visible anymore.
-
His account details put into a blacklist in the system.
UC #14: Up/Down vote for a post/comment
-
Actors: Registered users.
-
Goal: Voting the post/comment successfully.
-
Precondition: User shall be logged in.
-
Steps:
-
User will see the post/comment.
-
User will click on either up or down button for a post/comment.
-
System will save the changes.
-
Postconditions: There is no postcondition.
UC #15: Sorting comments
-
Actors: Registered users.
-
Goal: Sorting comments based on either voting or time based in a post successfully.
-
Precondition: User shall be logged in.
-
Steps:
-
User will be able to see the post.
-
User will click on the sort button.
-
User will choose either time or vote base option.
-
System will implement the sorting algorithm in behind.
-
Postconditions:
-
System will show the new results to the user.
UC #16: Follow User
-
Actors: Registered users.
-
Goal: Following a user successfully.
-
Precondition: User shall be logged in.
-
Steps:
-
User will click on the user's profile page link which will be followed.
-
On the profile page, user will click on the follow button.
-
The system will inform that "Following completed".
-
Postconditions: All things about the user will appear when posted.