Skip to content

User Stories

jordan-bohmbach edited this page Jul 23, 2021 · 11 revisions

Users

Sign Up

  • As an unregistered and unauthorized user, I want to be able to sign up for the website via a sign-up form.
    • When I'm on the /signup page:
      • I would like to be able to enter my first name, last name, email, username, and preferred password on a clearly laid out form.
      • I would like the website to log me in upon successful completion of the sign-up form.
        • So that I can seamlessly access the site's functionality
    • When I enter invalid data on the sign-up form:
      • I would like the website to inform me of the validations I failed to pass, and repopulate the form with my valid entries (except my password).
        • So that I can try again without needing to refill forms I entered valid data into.

Log in

  • As a registered and unauthorized user, I want to be able to log in to the website via a log-in form. When I'm on the /login page:
    • I would like to be able to enter my email and password on a clearly laid out form.
    • I would like the website to log me in upon successful completion of the log-in form.
      • So that I can seamlessly access the site's functionality
    • When I enter invalid data on the log-up form:
      • I would like the website to inform me of the validations I failed to pass, and repopulate the form with my valid entries (except my password).
        • So that I can try again without needing to refill forms I entered valid data into.

Demo User

  • As an unregistered and unauthorized user, I would like an easy to find and clear button on both the /signup and /login pages to allow me to visit the site as a guest without signing up or logging in.
    • When I'm on either the /signup or /login pages:
      • 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.

Log Out

  • As a logged in user, I want to log out via an easy to find log out button on the navigation bar. While on any page of the site:
    • I can log out of my account and be redirected to a page displaying recent Questions.
      • So that I can easily log out to keep my information secure.

Questions

Create Question

  • As a logged in user, i would like to be able to post new Questions
    • When i'm on the /questions/new page:
      • I would like to be presented with a "New Questions" form
        • Were i can input the question, clarifying details or select tags* which pertain to the question (add new tags)*

Viewing Questions

  • As a logged in or logged out user, i would like to be able to view a selection of the most popular questions
    • When i'm on the / (home) page
      • I can view the ten questions with the highest votes
        • So that i can click on a the most popular questions and read the answers and comments on that question
    • When i'm on the /questions page
      • I can view the ten most recent questions
        • So that i can click on the most recent questions and read the answers and comments on that question
    • I can search for a question by details or by tag*
      • I can view the ten most popular questions that match that search
        • So that i can click on a question and read the answers and comments on that question
  • As a logged in or logged out user, i would like to be able to view a specific question
    • When i'm on the /question/:id page
      • As a logged in user i would like to be able to post an answer to the question
        • Enter an answer into an answer form on the bottom of the page
      • As a logged in user i would like to be able to upvote/downvote the question, answers, and comments
        • Click on the upvote or downvote buttons that appear next to the questions, answers, and comments
      • As a logged in user i would like to be able to comment on the question
        • Enter a comment in to a comment form below the comment and hit a submit button
      • As a logged in user i would like to be able to comment on an answer to the question
        • Enter a comment in to a comment form below the comment and hit a submit button

Update Question

  • As a logged in user, i would like to be able to update a question that i have asked
    • When i'm on on the /question/:id page
      • I can click on "Edit" to make permanent change to the question that I have posted
        • So that I can fix any errors that I made in the original question.

Delete Question

  • As a logged in user, i would like to be able to delete a question that i have asked
    • Submit a delete request to the /question/:id where the question was asked by the same user that is currently logged in

Answers

Create Answers

  • As a logged in user, i would like to be able to create an answer to a question that has been asked.
    • Submit an answer post to the /question/:id/answers
      • So that other users can see my response to the question

View Answers

  • As a logged in user, i would like to be able to view answers to a question that has been asked.
    • View answer posts to the /question/:id along with upvotes and downvotes and comments
      • So that I can find the top answers to questions

Update Answers

  • As a logged in user, i would like to be able to edit answers that i have submitted to questions
    • Modify answers when i'm on the /question/:id/answers page
      • So that I can update previous answers with new information

Delete Answer

  • As a logged in user, i would like to be able to delete an answer that i have submitted
    • Submit a delete request to the /answer/:id where the answer was asked by the same user that is currently logged in.
      • So that I can get rid of answers which I have submitted that I no longer want posted.

Comments

Create Comments

  • As a logged in user, i would like to be able to create comments that are associated to questions
    • Submit a post request to /questions/:id/comments
      • So that I can comment for clarification or give my opinion on a question
  • As a logged in user, i would like to be able to create comments that are associated to answers
    • Submit a post request to /answers/:id/comments
      • So that I can comment for clarification or give my opinion on an answer

View Comments

  • As a logged in or demo user, i would like to be able to view comments that are associate to questions
    • View all comments that have been posted to /question/:id/comments
      • So that I can see what everybody else is saying about a particular question
  • As a logged in or demo user, i would like to be able to view comments that are associate to answers
    • View all comments that have been posted to /answers/:id/comments
      • So that I can see what everybody else is saying about a particular answer

Update Comments

  • As a logged in user, i would like to be able to update comments that I have made to questions
    • Edit the content of comments that i have made at /questions/:id/comments
      • So that I can revise comments on questions which I feel need to be changed.
  • As a logged in user, i would like to be able to update comments that I have made to answers
    • Edit the content of comments that i have made at /answers/:id/comments
      • So that I can revise comments on answers which I feel need to be changed.

Delete Comments

  • As a logged in user, i would like to be able to delete a questions comment that I have posted
    • Delete a comment that i have made at /questions/:id/comments
      • So that I can remove comments on questions that I feel are no longer applicable
  • As a logged in user, i would like to be able to delete an answers comment that I have posted
    • Delete a comment that i have made at /answers/:id/comments
      • So that I can remove comments on answers that I feel are no longer applicable

Tags

Create Tags

  • As a logged in user, i would like to be able to create tags for categories of questions
    • When i'm on the /tags page
      • I can click "Create" to make a new tag and give it a description
        • So that future questions can be found by my tag.
    • When i'm on the /questions/new page
      • I can create new tags that apply to my question
        • So that anybody can find my question by the tag later

View Tags

  • As a logged in or logged out user, i would like to be able to view all the tags
    • When i'm on the /tags page
      • I can click on a tag and see all the questions that pertain to that tag
        • So that I can find questions on topics that I am interested in

Update Tags

  • As a logged in user, i would like to be able to update tags that I have created
    • When i'm on the /tags/:id page
      • I can click on a tag and edit it's properties
        • So that I can make it more descriptive towards what I had originally intended.

Delete Tags

  • As a logged in user, i would like to be able to delete tags that I have created
    • When i'm on the /tags/:id page
      • I can click on a tag and delete it
        • So that I can remove tags which have not gotten any use, or which I am no longer interested in
  • refers to bonus features
Clone this wiki locally