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:
- Access Shop page through link
- Click Login
- Input Username
- Input Password
- Click Submit Button
- Logged in Shop Page Shown
Scenario 2: - Access Shop page through link
- Click Signup
- Input Information
- Click Submit
- Log in (once verified by Admin)
- 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
- Log in (as in previous US)
- Shop page appears
- 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
- Login (as in previous US)
- Click the entry field in the search bar
- Enter a product name
- Click the Search button
- 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
- Login (as in previous US)
- Click Add to Cart Button on a Product
- Click on "Cart" button in the top bar of the page
- 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
- Login (as with previous US)
- Click on "Settings" button in the top corner of the page
- Settings page appears
- Click Edit button
- Enter information
- Click confirm
- 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
- Access shop page
- Access Admin page by altering the url
- Login using credentials
- Click on Products tab
- Click on a Product
- 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
- Login (same as previous US)
- Click on Add listing page
- Enter product information
- Click submit
- View confirmation
Test complete