User Stories - Intro-to-SE-Spring-21/Group5repo GitHub Wiki

User Story #1 Register Account

As a user, I want to be able to create my account and login information
[Additional Feature]
Priority: High
Risk: Low
Story Points: 4

Sub Stories:

  • As a user, I want to be able to click the Register button and set up my account

Task Breakdown:

  • Make Register Page
  • Enter username, password, and confirm password
  • Store info into database

Acceptance Testing:

  • Click register
  • Enter valid username and password and confirm password
  • Verify user data stored into database

User Story #2 Login to Account

As a user, I want to be able to log into my account
[Additional Feature]
Priority: High
Risk: Low
Story Points: 4

Sub Stories:

  • As a user, I want to be able to submit my login information to log into my account
  • As a user, I want to be sent directly to the home page after successfully logging in

Task Breakdown:

  • Make Login Page
  • Enter username and password
  • Verify login information
  • Log user into account
  • Redirect to home page

Acceptance Testing:

  • After registering, login is required
  • Enter login username and password
  • Check database for stored username and password
  • Login and return user to home page

User Story #3 Post a Tweet

As a user, I want to be able to post a tweet and have others view the post.
[Core Feature]
Priority: High
Risk: Low
Story Points: 4

Sub Stories:

  • As a user, I want to be able to click a button that allows me to post a tweet
  • As a user, I want to be able to type in a message and post it
  • As a user, I want my post to be visible by those who follow me

Task Breakdown:

  • Make Post a Beanz Page
  • Enter Tweet title and body
  • Store information in database
  • Redirect to home page

Acceptance Testing:

  • User must be logged in
  • Click Post a Beanz on home page
  • Enter in title/body
  • Store each tweet into database
  • Display tweet and other tweets on feed

User Story #4 Like a Tweet

As a user, I want to be able to like a tweet
[Core Feature]
Priority: High
Risk: Low
Story Points: 2

Sub Stories:

  • As a user, I want to be able to click a button that will symbolize a like

Task Breakdown:

  • Create Like button
  • Add 1 like to number of likes
  • Show updated like count

Acceptance Testing:

  • User must be logged in
  • Click on a tweet from feed/home page
  • View and press the like button
  • Like count should increase by 1 and display updated count

User Story #5 Follow a User

As a user, I want to be able follow a user from my user account
[Core Feature]
Priority: High
Risk: Low
Story Points: 3

Sub Stories:

  • As a user, I want to be able to click a button to follow a user

Task Breakdown:

  • Create Follow User button
  • Add Follower to followed user and Following to following user
  • Store follow information for both users

Acceptance Testing:

  • User must be logged in
  • Click On the Follow Button from home page
  • Increment followed user's Follower count by 1
  • Increment following user's Following count by 1
  • Update both user's Follow list
  • View Follows page to observe changes

User Story #6 View User Profile

As a user, I want to be able to view a user's profile and feed
[Additional Feature]
Priority: Low
Risk: Medium
Story Points: 3

Sub Stories:

  • As a user, I want to be able to click on a user's account and view their profile
  • As a user, I want to be able to click on a user's account and view posts from them and users they follow

Task Breakdown:

  • Create User Profile page
  • Include user info, feed, and tweet contents
  • Access database information to display information

Acceptance Testing:

  • Click on View Profile button in home page user info
  • Redirect the User Profile page
  • Display username, handle, bio, and follow info
  • Feed displays their tweets and tweets from users they follow

User Story #7 View General Feed

As a user, I want to be able to view a feed of general posts [Additional Feature]
Priority: Medium
Risk: Medium
Story Points: 4

Sub Stories:

  • As a user, I want to be able to scroll through posts from all users

Task Breakdown

  • Create General Feed on home page
  • Access database to display tweets, tweet info, and user info

Acceptance Testing:

  • Enter website
  • Directed to home page
  • Left column contains General Feed of all tweets

User Story #8 View User's Follower/Following List

As a user, I want to be able to view a list of the user's followers
As a user, I want to be able to view a list of who the user is following
[Additional Feature]
Priority: Medium
Risk: Low
Story Points: 3

Sub Stories:

  • As a user, I want to be able to scroll through a list of who the user is following
  • As a user, I want to be able to scroll through a list of the user's followers

Task Breakdown:

  • Create Follower/Following Page
  • Access database to display follow information

Acceptance Testing:

  • Click View Follows in home page user info
  • Redirect to Follow Page and display list of followers and following users

User Story #9 Settings Page

As a user, I want to be able to change my bio and username
[Additional Feature]
Priority: Low
Risk: Low
Story Points: 4

Sub Stories:

  • As a user, I want to be able to go to a page to change my username
  • As a user, I want to be able to go to a page to change my bio

Task Breakdown:

  • Create Settings Page
  • Store entered data in database to replace pre-existing data

Acceptance Testing:

  • User must be logged in
  • Click on Settings button
  • Redirect to Settings page
  • Enter either new username or bio in form and click submit
  • Store new data in database to replace old data
  • View User Profile to observe changes

User Story #10 Likes List

As a user, I want to be able to view who liked a tweet
[Additional Feature]
Priority: Low
Risk: Low
Story Points: 3

Sub Stories:

  • As a user, I want to be able to see who liked each tweet

Task Breakdown

  • Create Likes List Page
  • Access database to navigate to a page for each tweet
  • Access database to display all users who have liked a tweet

Acceptance Testing:

  • Click on a tweet from feed/home page
  • Click on the like count
  • Redirect to tweet's Like List page
  • View list of users who have liked the post

User Story #11 Logout of Account

As a user, I want to be able to log out of my account
[Additional Feature]
Priority: Medium
Risk: Low
Story Points: 2

Sub Stories:

  • As a user, I want to be able to click a button and be logged out of my account

Task Breakdown:

  • Make Logout button appear over Login button when logged in
  • Clear session data
  • Log user out of account

Acceptance Testing:

  • User must be logged in
  • Click Logout button
  • Verify that user is logged out