User Stories - kwo20/Group1 GitHub Wiki
User Story 1: Create account
As a user I want to be able to go to the website where I will be prompted to either log in or create an account with the website. After I create an account, I will then be prompted to log in with my newly created account
Priority: High
Risk: High
Core Feature
Story Points: 5
Task Breakdown:
-
Create a database that can hold user information.
-
Code a way for users to input a username and password.
-
Query the database to add the users into the user table.
-
Prompt users to login with the newly created account.
-
Compare against the database to either login the user or not.
Acceptance Testing:
-
Press button on login page that says "Create Account"
-
Input username and password into their respective text boxes.
-
Press button on create account page that says "Create Account"
-
Input newly created information into their respective username and password boxes.
-
Press button that says "Login"
User Story 2: Post
After I sign in with my account, I would like to see a text box where I will create my post. Inside of the box, I will be prompted to enter all the information for that post. Then I will click submit and the post will be placed on my timeline so that my friends can see.
Priority: High
Risk: High
Core Feature
Story Points: 5
Task Breakdown:
-
Create a posts table in the database to store information on the post content, time posted, and who posted it..
-
Create prompt for user to input post content and submit it.
-
Store this information into the posts table in the database.
-
Create a way to show user's post on their timeline in chronological order.
Acceptance Testing:
-
Click on text box that says "What's on your mind, 'user'?"
-
Input the information that you want to post to your timeline.
-
Press button that says "Post".
-
See post on timeline.
User Story 3: Add Friend
As a user I want to be able to add friends. After getting to my friend's page I would see a button to follow them. Then I would click the button and my friend would receive a request. If they accept they will be added to my friend's list.
Priority: Medium
Risk: Low
Core Feature
Story Points: 4
Task Breakdown:
-
Implement a way in the database to store which people someone is following.
-
Create a button on a user's page that will allow other users to send the user a friend request.
-
Create a page that will show who has sent friend requests along with an accept and deny button.
-
If accept, add the user to the other user's friend list.
-
If deny, remove the friend request without making the two users friends
Acceptance Testing:
(User 1)
-
Navigate to intended friend's frontpage.
-
Press the button that says "Friend 'user'"
(User 2) 3. Navigate to friend/friend request page by pressing button on your frontpage that says "Friends".
- Press either the button that say "Accept" or "Deny" friend based on your choice.
(User 1) 5. (If accept) Can now see friend's posts on timeline.
- (If deny) Cannot see intended friend's posts on timeline, but can send another request.
User Story 4: Interact with Posts
As a user I want to be able to view and interact with my friends posts. While I'm logged in and on the my page or my friend's page, I expect to see several buttons to interact with my posts such as a like button, a comment button, or a share button. If I click on the like button the post will have a number appear showing how many likes it has. If I click on the comment button I will be prompted to write a message that will appear beneath their post. Lastly, if I click on the share button, the post will be put on my timeline.
Priority: Medium
Risk: High
Core Feature
Story Points: 5
Task Breakdown:
-
On all posts create buttons for liking, commenting, and sharing.
-
Make the like button increase a like counter on a post when pressed.
-
Create a list of posts that have been shared by a user in their account information.
-
Display shared posts on a user's timeline along with their own posts.
-
Create a comments list for a posts information.
-
Make a prompt for a user to input and submit a comment.
-
Add the comment to the database.
-
Display comments under the post it is made for.
Acceptance Testing:
-
Press button that says "Like" under the desired post.
-
See the like number increment by 1.
-
Press the button that says "Share" under the desired post.
-
See the shared post on your own timeline.
-
Type comment into the "COMMENT" text box under desired post.
-
See comment under the desired post.
User Story 5: Search
As a user I want to be able to search for my friends and posts
Priority: Medium
Risk: Low
Core Feature
Story Points: 4
Task Breakdown:
-
Create a search bar.
-
Prompt a user for input in the search bar.
-
Query the database for all users and posts with similar names/content to the inputted search.
-
Create a display to show the results to the user.
Acceptance Testing:
-
Press the text box that says "Search for user here".
-
Put the name/content of the user/post you would like to find.
-
Press the button that says "Search".
-
See the search options on a page.
-
Select the user whose page you want to go to.
-
See the timeline of the selected user.
User Story 6: Profile page
As a user I want to be able to go to have a profile page that I can edit to show my name and bio. I also want to be able to view other users' profile pages.
Priority: High
Risk: Low
Core Feature
Story Points: 5
Task Breakdown:
-
Create a page that can display user information.
-
Add a button from a user's timeline that will go to the page.
-
Create an edit page where a user can edit their information.
-
Check if name is correct format.
-
Change corresponding information in the database.
Acceptance Testing:
-
Go to your timeline.
-
Press the button named, "(user)'s Profile".
-
Press the button named, "Edit".
-
Input new name/bio into their respective boxes and hit submit.
-
Press the return to profile page button.
-
See updated information on the profile page.