User Stories - IntroSE03/IntroSE_03 GitHub Wiki

Customer User Stories

Login / Create an account

User Story: As a customer, I want to login to my account.

Acceptance Criteria:

Scenario 1:

  • Given the customer has accessed the login page and has an account
  • When the customer enters their correct username and password
  • Then the website should redirect the customer to their account page with features to the site.

Scenario 2:

  • Given the customer has accessed the login page and does not have an account
  • When the customer clicks the link to create an account
  • Then the website will redirect the customer to a registration page
  • Then the customer can fill out their account information
  • Then an account would me created for customer to login

Task breakdown:

  • Design user interface
  • Program functionality for customer accounts

Acceptance Test
Scenario 1:

  1. Access Shop page through link
  2. Click Login
  3. Input Username
  4. Input Password
  5. Click Submit Button
  6. Logged in Shop Page Shown
    Scenario 2:
  7. Access Shop page through link
  8. Click Signup
  9. Input Information
  10. Click Submit
  11. Log in (once verified by Admin)
  12. Logged in Shop Page Shown

Test complete

Browse

User Story: As a customer, I want to browse available products.

Acceptance Criteria:

Scenario:

  • Given the customer has accessed the website
  • When the customer has accessed the shop page
  • Then the page will display the products

Task breakdown:

  • Design user interface
  • Generate products to view
  • Program functionality to view products

Acceptance Test

  1. Log in (as in previous US)
  2. Shop page appears
  3. Products appear and are interactible
    Test complete

Search

User Story: As a customer, I want to search for a specific type of product for sale.

Acceptance Criteria:

Scenario:

  • Given the customer has accessed the shop page
  • When the customer enters information into the search field
  • Then the page will display the product information for the products related to the entered information

Task breakdown:

  • Design user interface
  • Generate products to view
  • Program functionality to search products

Acceptance Test

  1. Login (as in previous US)
  2. Click the entry field in the search bar
  3. Enter a product name
  4. Click the Search button
  5. Relevant Products (and only relevant products) appear
    Test complete

Add an item to cart

User Story: As a customer, I want to add products to my cart.

Acceptance Criteria:

Scenario:

  • Given the customer has logged in and accessed the shop page
  • And has selected a product and redirected to a product information page
  • When the customer clicks the button that reads “Add to Cart”
  • Then the website should add the product information to the cart page that is associated with the customer’s account

Task breakdown:

  • Design user interface
  • Program functionality of customer cart

Acceptance Test

  1. Login (as in previous US)
  2. Click Add to Cart Button on a Product
  3. Click on "Cart" button in the top bar of the page
  4. Item appears in Cart page
    Test complete

Edit account

User Story: As a customer, I want to be able to be able to navigate to a settings page so that I can manage/change my account information.

Acceptance Criteria:

Scenario 1:

  • Given the customer has an account
  • And the customer is logged in
  • When the customer clicks the settings link
  • Then the website will redirect the customer to their account settings

Scenario 2:

  • Given the customer is logged in to their account
  • And the customer is on the settings page
  • When the customer clicks edit and enters new information and clicks save
  • Then a display message will read “all changes have been saved.”

Task breakdown:

  • Design user interface
  • Program functionality for customer accounts

Acceptance Test

  1. Login (as with previous US)
  2. Click on "Settings" button in the top corner of the page
  3. Settings page appears
  4. Click Edit button
  5. Enter information
  6. Click confirm
  7. Page/Login reflects changes
    Test complete

Admin User Stories

Approve a product listing

User Story: As an admin, I want to approve/deny a product listing.

Acceptance Criteria:

Scenario 1:

  • Given the admin has logged in
  • And the seller has submitted a product listing
  • When the admin selects a pending product listing
  • Then the product details are displayed
  • When the admin clicks the button to approve the listing
  • Then the listing will be unsuspended
  • And added to the listings available to customers
  • And a message is sent to the seller announcing the product approval

Scenario 2:

  • Given the admin has logged in
  • And the seller has submitted a product listing
  • When the admin selects a pending product listing
  • Then the product details are displayed
  • When the admin clicks the button to deny the listing
  • Then the listing remains suspended
  • And a message is sent to the seller announcing the product denial

Task breakdown:

  • Design user interface
  • Program functionality for admin accounts

Acceptance Test

  1. Access shop page
  2. Access Admin page by altering the url
  3. Login using credentials
  4. Click on Products tab
  5. Click on a Product
  6. Change SusFlag attribute to 1 for suspended, 0 for unsuspended
    (suspended products will not be shown on the shop page)
    Test complete

Seller User Stories

Create a product listing

User Story: As a seller, I want to add a listing for a product

Acceptance Criteria:

Scenario:

  • Given the seller has logged in
  • When the seller selects to add a new listing
  • Then will redirect to an entry form
  • When the seller enters product information
  • Then will record the information to the database
  • Then a message is displayed to the seller that confirms listing addition
  • And a message is displayed to the seller says the product is pending review

Task breakdown:

  • Design user interface
  • Program functionality for seller accounts
  • Generate inventory for seller accounts

Acceptance Test

  1. Login (same as previous US)
  2. Click on Add listing page
  3. Enter product information
  4. Click submit
  5. View confirmation
    Test complete