The main goal of this issue is to create the dashboard that is housing all the books. I will be calling the dashboard the 'library' and the folders created 'bookshelves'. Below are a series of user stories with the critical points displayed in bullet point at the really beginning.
Have a + button on the very right of the screen, when clicked should pop up a window that allows users to create a new bookshelf.
Have another button on the very left that when clicked, allows the user to sort the folders based off of different requirements.
BELOW ARE THE USER STORIES
Create Bookshelf with Popup
Name: Create Bookshelf
Actors: Regular User
Iteration: 2
Triggers/Preconditions:
The user is logged in and on their library page.
The system allows users to create bookshelves.
Actions/Postconditions:
The user clicks the "+" button to create a new bookshelf.
A popup appears prompting the user to enter a name for the new bookshelf, optionally keeping the bookshelf secret.
The user enters the bookshelf name.
The user optionally checks the "Keep this bookshelf secret" option.
The user submits the form by clicking the "Create" button.
The system creates a new bookshelf with the provided name and options.
The new bookshelf appears in the user's library.
Acceptance Tests:
Test 1:
Input: Bookshelf Name: "Harry Potter"
Assertion: The bookshelf is created and displayed in the library.
Test 2:
Input: Bookshelf Name: "" (empty)
Assertion: The form shows an error message indicating the name is required.
Test 3:
Input: Bookshelf Name: "Favorites", "Keep this bookshelf secret" option checked
Assertion: The bookshelf is created as a secret and displayed in the library with a lock icon.
Sort Books
Name: Sort Books
Actors: Regular User
Iteration: 2
Triggers/Preconditions:
The user is logged in and on their library page.
The user has books added to their library.
Actions/Postconditions:
The user clicks the sort button.
The user selects a sort option (e.g., by title, author, date added).
The system sorts the books according to the selected option.
The sorted list of books is displayed in the library.
Acceptance Tests:
Test 1:
Action: User selects "Sort by Title".
Assertion: The books are sorted alphabetically by title.
Test 2:
Action: User selects "Sort by Author".
Assertion: The books are sorted alphabetically by author.
Rename Bookshelf
Name: Rename Bookshelf
Actors: Regular User
Iteration: 2
Triggers/Preconditions:
The user is logged in and on their library page.
The user has one or more bookshelves created.
Actions/Postconditions:
The user clicks the "Rename Bookshelf" button next to a bookshelf name.
The user is prompted to enter a new name for the bookshelf.
The user submits the form with the new name.
The system updates the bookshelf name.
The new name appears in the user's library.
Acceptance Tests:
Test 1:
Input: New Bookshelf Name: "Must Reads"
Assertion: The bookshelf is renamed to "Must Reads" and displayed in the library.
Test 2:
Input: New Bookshelf Name: "" (empty)
Assertion: The form shows an error message indicating the name is required.
Delete Bookshelf
Name: Delete Bookshelf
Actors: Regular User
Iteration: 2
Triggers/Preconditions:
The user is logged in and on their library page.
The user has one or more bookshelves created.
Actions/Postconditions:
The user clicks the "Delete Bookshelf" button next to a bookshelf name.
The user is prompted to confirm the deletion.
The user confirms the deletion.
The system deletes the bookshelf and all its contents.
The bookshelf no longer appears in the user's library.
Acceptance Tests:
Test 1:
Action: User clicks the "Delete Bookshelf" button for "Recipes to Make" and confirms the deletion.
Assertion: The "Recipes to Make" bookshelf and all its books are removed from the library.
The main goal of this issue is to create the dashboard that is housing all the books. I will be calling the dashboard the 'library' and the folders created 'bookshelves'. Below are a series of user stories with the critical points displayed in bullet point at the really beginning.
BELOW ARE THE USER STORIES Create Bookshelf with Popup
Name: Create Bookshelf Actors: Regular User Iteration: 2
Triggers/Preconditions:
Actions/Postconditions:
Acceptance Tests:
Test 1: Input: Bookshelf Name: "Harry Potter" Assertion: The bookshelf is created and displayed in the library.
Test 2: Input: Bookshelf Name: "" (empty) Assertion: The form shows an error message indicating the name is required.
Test 3: Input: Bookshelf Name: "Favorites", "Keep this bookshelf secret" option checked Assertion: The bookshelf is created as a secret and displayed in the library with a lock icon.
Sort Books
Name: Sort Books Actors: Regular User Iteration: 2
Triggers/Preconditions:
Actions/Postconditions:
Acceptance Tests:
Test 1: Action: User selects "Sort by Title". Assertion: The books are sorted alphabetically by title.
Test 2: Action: User selects "Sort by Author". Assertion: The books are sorted alphabetically by author.
Rename Bookshelf
Name: Rename Bookshelf Actors: Regular User Iteration: 2
Triggers/Preconditions:
Actions/Postconditions:
Test 1: Input: New Bookshelf Name: "Must Reads" Assertion: The bookshelf is renamed to "Must Reads" and displayed in the library.
Test 2: Input: New Bookshelf Name: "" (empty) Assertion: The form shows an error message indicating the name is required.
Delete Bookshelf
Name: Delete Bookshelf Actors: Regular User Iteration: 2
Triggers/Preconditions:
Actions/Postconditions:
Acceptance Tests:
Test 1: Action: User clicks the "Delete Bookshelf" button for "Recipes to Make" and confirms the deletion. Assertion: The "Recipes to Make" bookshelf and all its books are removed from the library.