Use Cases - bounswe/bounswe2016group12 GitHub Wiki

Use Cases

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.