User Stories - vernfongchao/Catoura GitHub Wiki

Signing up

  • As a non authorized user I should be able to create an account.

    • I want to have my own personalized account and question feed as well as being able to post questions/answers/comments/topics.
  • As a non authorized user who doesn't have an account I should have a link to the sign up form.

    • I want to have easy access to the page that allows me to signup for the website.

      • When signing up I should be prompted to enter a first name, last name, username, email address, password, confirm password and a button to submit and redirect to a home page.
      • If I unsuccessfully try to sign up, the page should refresh with the info I have already input filled in.
    • I want to feel like my account is safe. My account should not be able to be logged into with false information.

Login

  • As an unauthorized user, I want to be able to login to the website to become and authorized user.

    • As a user I want to login so I have my own personalized question feed and ask my own questions.
  • As a user I want to be able to update my information because my interests may change after I create my profile.

    • Once logged in as an authorized user, I should have a link to be able to update my information.

Demo User

  • As an unregistered and unauthorized user, I would like an easy to find and clear button to allow me to visit the site as a guest without signing up or logging in.

    • I can click on a Demo User button to log me in and allow me access as a normal user so that I can test the site's features and functionality without needing to stop and enter credentials.

Questions

Create Questions

  • As an authorized user I should be able to post questions.

    • If I have a question that I can't answer myself or through research. I would like to see if other cats have answers to my questions.
  • As a non-authorized user, if I navigate to the questions page, I should not be able to add a question, answer, or comment. Questions, answers, and comments are authorized user functions so I should sign up or login to be able to post questions, answers, or comments.

Read Questions

  • As an authorized or non-authorized user I should be able to see questions, answers and comments. Even if I'm not logged in, if I see a question that's already been asked I wouldn't need to go and post the same question.

Update Questions

  • As an authorized user I should be able to edit my questions. If there's a mistake or if there's new information I may have about my question I should be able to change it.

Delete Questions

  • As an authorized user I should be able to delete my questions. As a user if I no longer need the answer to a question I should be able to delete it.

Answers

  • Create Answers

    • As a logged-in user, I want to be able to reply to questions other users have posted, add details to my answer if I also have the same question, or support other answers a question might already have.
  • Read Answers

    • As a logged-in user, I want to be able to see a list of my answers so I can navigate to questions that I have replied to.
  • Update Answers

    • As a logged-in user, I want to be able to edit or delete answers I have posted.
  • Delete Answers

    • As a logged-in user, I will be able to delete any answers that I have posted so that I can remove answers to questions that I don't need answered anymore.

Topics

  • Create Topic

    • As a logged in user, I want to be able to view and click on a topic to view questions related to the Topic.
    • As a logged in user, I should be able to add my own topic to a question.
  • Read Topic

    • As a logged in user, I want to be able to view a page that will display a list of topics. I will be able to add a topic to the pre-selected group of topics.
    • A pre-selected group of topics for the logged-in or logged-out user, will be listed on the left.
  • Update Topic

    • As a logged in user, I want to be able to update a topic that I have attached to a question. I will be able to change a topic in case I change my mind about the type of topic I have assigned to a question.
  • Delete Topic

    • As a logged in user, I want to be able to delete a topic that I have attached to a question. I will be able to remove a topic in case I change my mind about the type of topic I have assigned to a question.