Requirements - hdenizdogan/SWE-573-Spring-2023 GitHub Wiki

Requirements

System

R1. The software shall be a web application.

R2. Users have to log in in order to see the content of the software.

Signup

R3. Users shall be able to sign up with their email and their password.

R4. The username shall be created after registration.

R5. The username shall be unique.

R6. When the user registers, they will be redirected to home page.

Login

R7. Users shall be able to log in.

R8. Users shall be able to log out.

R9. If a user enters wrong email or password, "incorrect password" error shall be thrown.

R10. If a user forgets their password, they can click "forget your password" to get their password to their email.

R11. When "forget your password" is clicked, an email will be sent that contains instructions.

R12. The user shall be able to change their password with email verification and typing of their new password twice.

Home Page

R13. When the user clicks on his photo on home page, the user will be directed to their profile page.

R14. The home page shall show the recent 4 stories created.

R15. When the user clicks one of the stories, they will be redirected to that story.

Enter Story

R16. Users shall be able to save their stories of a location that they have.

R17. Users shall be able to publish their stories of a location that they have.

R18. All story posts shall contain a username, title, content, location, and date information.

R19. Users shall be able to add photos to their shared stories.

R20. Users shall be able to add labels to their shared stories.

R21. Users shall enter the location(up to 2) of the story that they have shared.

R22. Users shall enter the date(single,start/end date or decade) of the story that they have shared.

Story

R23. Users shall be able to like other users’ stories.

R24. Users shall be able to comment on shared stories of other users.

R25. Users shall be able to like the stories.

Search

R26. Users shall be able to search with title, username, content, location and date parameters.

R27. The software shall show the number of search results that is shown to the user.

Profile Page

R28. The users shall be able to upload their profile picture.

R29. The users shall be able to add info on their profile.

R30. The user shall be able to follow other users.

R31. The user shall be able to unfollow the users they have follow.

Edit Profile

R32. The user shall be able to change their password when they click on "Reset Password".