Ringtone app
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

REQUIREMENTS.md 3.2 KiB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # Requirements
  2. ## Authentication
  3. - As a client, I want to log in to the service.
  4. - [X] In the front-end, the client provides a username, and a password to request login to the back-end.
  5. - [X] In the back-end, the server processes the login request from the front-end.
  6. - As a client, I want to log out from the service.
  7. - [X] In the front-end, the client requests logout to the backend.
  8. - [X] In the back-end, the server processes the logout request from the front-end.
  9. ## Ringtone
  10. - As a client, I want to download a ringtone.
  11. - [ ] In the front-end, the client provides a ringtone ID to request a ringtone from the back-end.
  12. - [ ] In the back-end, the server sends the ringtone data to the front-end.
  13. - As a client, I want to browse ringtones.
  14. - [ ] In the front-end, the client provides optional skip and take arguments to request multiple ringtones from the
  15. back-end.
  16. - [X] In the back-end, the server sends the ringtones to the front-end.
  17. - As a client, I want to view the ringtones made by a composer.
  18. - [ ] In the front-end, the client provides a composer's user ID and optional skip and take arguments to request
  19. multiple ringtones from the back-end.
  20. - [X] In the back-end, the server sends the ringtones to the front-end.
  21. ## Search
  22. - As a client, I want to search for ringtones.
  23. - [ ] In the front-end, the client requests provides a search keyword to request for ringtones from the back-end.
  24. - [X] In the back-end, the server retrieves the ringtones whose name matches the search keyword provided by the
  25. front-end.
  26. - As a client, I want to search for composers.
  27. - [ ] In the front-end, the client requests provides a search keyword to request for composers from the back-end.
  28. - [X] In the back-end, the server retrieves the composers whose name matches the search keyword provided by the
  29. front-end.
  30. ## Composer
  31. - As a composer, I want to create a ringtone.
  32. - [X] In the front-end, the client inputs ringtone data to the view.
  33. - [X] In the front-end, the client sends the ringtone data to the back-end.
  34. - [X] In the back-end, the server stores the ringtone data.
  35. - As a composer, I want to update a ringtone.
  36. - [ ] In the front-end, the client modifies the ringtone data retrieved from the back-end and loaded on the view.
  37. - [ ] In the front-end, the client sends the ringtone data to the back-end.
  38. - [X] In the back-end, the server stores the updated ringtone data.
  39. - As a composer, I want to soft-delete a ringtone.
  40. - [ ] In the front-end, the client provides a ringtone ID to request a ringtone's soft deletion to the back-end.
  41. - [X] In the back-end, the server tags a ringtone as deleted if its ID matches the one provided by the front-end.
  42. - As a composer, I want to undo deletion of a soft-deleted ringtone.
  43. - [ ] In the front-end, the client provides a ringtone ID to request a ringtone's deletion rollback to the back-end.
  44. - [X] In the back-end, the server untags a ringtone as deleted if its ID matches the one provided by the front-end.
  45. - As a composer, I want to hard-delete of a ringtone.
  46. - [ ] In the front-end, the client provides a ringtone ID to request a ringtone's deletion rollback to the back-end.
  47. - [X] In the back-end, the server removes a ringtone in the database if its ID matches the one provided by the
  48. front-end.