ABCDEFGHI
1
2
Project Name
ABC MULTILINGUAL INTERFACE
Date26th Feb 2024
3
Team Members
Jad Chehimi, Justin Robertson, Jonathen Adsit
Project Owner/ClientABC MULTILINGUAL
4
Charlie Kim, Boris Nedev, Saumya Rada
5
ID NumberDate ReceivedSourceRequirement Name and DescriptionAssigned ToAcceptance CriteriaTested By and DateAccepted By and DatePath to tests on GitHub
6
1Feb 5Sprint 2 AssignUS 1.01.1 - Create Library/Book UI JustinUser can scroll through a library of books with their title and book covers displayed.
User can select a book and see the books details and languages available and for that book.
User can navigate back to the library of books.
Saumya (Feb 25)Justin (Feb 25)frontend/tests/test_library.py
7
2Feb 5Sprint 2 AssignUS 1.01.2 Create Endpoint to Retrieve Books Boris & JadFrontend can send a GET request either for a specific book or all the books to the backend
Backend will process the request
Backend responds with the proper information to the backend and lets it know that it was successful
Jad (Feb 25)Boris (Feb 25)backend/books/tests.py
8
3Feb 5Sprint 2 AssignUS 2.03.2 Delete Book UI JustinUser can navigate to a page to manage the books and languages on the pen.
User can scroll through a list of books with their title, book cover and details displayed.
User can select a book and can press a button to delete the book.
User is prompted to confirm the deletion, with an option to cancel.
User is notified when the deletion is successful.
The book and all of its available languages are no longer available for selection.
Justin (Feb 25)Saumya (Feb 25)frontend/tests/test_delete_book.py
9
4Feb 5Sprint 2 AssignUS 1.02.2 - Create end-point to retrieve books by filtered languageBoris & JadFrontend can send a GET request to the backend for language information
Backend validates request and returns books associated with the language
Backend gives an appropriate response to the Frontend so that the user may know they were successful
Jad (Feb 25)Boris (Feb 25)backend/languages/tests.py
10
5Feb 5Sprint 2 AssignUS 2.01.2 - Add Book UIJustinUser can press a button to begin the process of adding a new book.
User can enter the title of the book.
User can choose the book cover image.
User presses a button to submit the new book entry. Empty entry is not added
User is notified when the addition is successful.
The book and its uploaded language are available for selection in the library.
User can press a button to edit the book details after the book is added.
Empty fields are denied and the user is notified the field is required.
Duplicate books are denied and the user is notified the book already exists.
Saumya (Feb 25)Justin (Feb 25)frontend/tests/test_add_book.py
11
6Feb 5Sprint 2 AssignUS 1.03.2 - Index File on PenSaumya & CharlieBackend Pen interface can access the user's file system
Backend Pen interface can write to the index.json file on the pen, creating it if necesssary
Backend Pen interface can update the index file with a new book, language, folder
Backend Pen interface can request the DB for specific audio files corresponding to a book and language.
Saumya (Feb 23)Justin (Feb 23)frontend/file-system/scripts/tests.js
12
7Feb 5Sprint 2 AssignUS 2.01.1 - Add Book to SQL DatabaseBoris & JadFrontend can send a POST request to the backend with book information
Backend will validate information and store new book
Backend will give an appropriate response to the Frontend so that the user may know they were successful
Jad (Feb 25)Boris (Feb 25)backend/books/tests.py
13
8Feb 5Sprint 2 AssignUS 2.02.1 - Add Language to SQL DatabaseBoris & JadFrontend can send a POST request to the backend with language information
Backend will validate information and store new language
Backend will give an appropriate response to the Frontend so that the user may know they were successful
Jad (Feb 25)Boris (Feb 25)backend/languages/tests.py
14
9Feb 5Sprint 2 AssignUS 2.02.2 - Add Language UIJustinUser can press a button to begin the process of adding a new language.
User can enter the language name.
User presses a button to submit the new language entry.
User is notified when the addition is successful.
The language is displayed in the list of available languages for the book.
User can press a button to edit the language details after the language is added.
Empty fields are denied and the user is notified the field is required.
Duplicate langugaes are denied and the user is notified the language already exists.
Justin (Feb 25)Saumya (Feb 25)frontend/tests/test_add_language.py
15
10Feb 5Sprint 2 AssignUS 2.04.2 - Delete Language UI JustinUser can navigate to a page to manage the all available languages.
User can select a language and can press a button to delete the language.
User is prompted to confirm the removal, with an option to cancel.
The user is notified when the deletion is successful.
The language is no longer available for selection.
User can also choose to delete a singluar language from a specific book.
Justin (Feb 25)Saumya (Feb 25)frontend/tests/test_delete_language.py
16
17
12Feb 27Sprint 3 Assign US 1.02.2 - Create end-point to retrieve books by filtered languageBoris & JadFrontend can send a GET request to the backend for language information
Backend validates request and returns books associated with the language
Backend gives an appropriate response to the Frontend so that the user may know they were successful
Boris (Mar 7)Jad (Mar 7)backend/booklanguages/tests.py
18
13Feb 27Sprint 3 Assign US 2.06 - Upload Audio Files UIJonathenUser can click a button on a book details page to begin the process of uploading audio files.
User can select a language that corresponds to the audio files they are uploading.
User can select and upload files from local device.
User is notified when the upload is successful.
User receives an error notification if the upload fails, specifying the reason for the failure.
Jonathen (Mar 7)Justin (Mar 7)frontend/tests/test_login.py
19
14Feb 27Sprint 3 Assign US 4.01.2 - Login Page UI JustinTeachers are prompted to log in using Django Admin when first accessing the website.
Administrators are prompted to log in using Django Admin when first accessing the website.
Teachers can only browse books, view book details and download audio files.
Administrators can perform all actions including browsing, downloading, adding, and deleting books and languages.
Unauthorized users/invalid credentials cannot successfully log in and receive an error message.
Justin (Mar 7)Saumya (Mar 7)frontend/tests/test_login.py
20
16March 7Sprint 3 Assign US 2.04.1 - Delete Language from SQL DatabaseBorisFrontend can send a DELETE request to the backend and remove a language from the database
Frontend can send a DELETE request to the backend and remove a language from a specific book
Backend validates request and deletes the language from the database
Backend validates request and deletes the language from a specific book only if there are no audio files associated with the language and book combination
Backend gives an appropriate response to the Frontend so that the user may know they were successful
Boris (Mar 7)Jad (Mar 7)backend/booklanguages/tests.py
21
17March 7Sprint 3 Assign US 2.06.1 - Pointer to DatabaseJonathenUser can click a button on a book details page to begin the process of uploading audio files.
User can select a language that corresponds to the audio files they are uploading.
User can select and upload files from local device.
User is notified when the upload is successful.
The files will be automatically uploaded to the correct locations in the cybera volume.
User receives an error notification if the upload fails, specifying the reason for the failure.
Jonathen (Mar 7)Jad (Mar 7)backend/audiofiles/tests.py
22
18March 7Sprint 3 Assign US 2.05.3 - Add a new sticker to the DBJadFrontend can send a POST request to the backend and add a sticker to the database associated with a certain book and page number
Backend validates request and adds the sticker to the database
Backend gives an appropriate response to the Frontend so that the user may know they were successful
Jad (Mar 7)Boris (Mar 7)backend/stickers/tests.py