gremmyz / pe

0 stars 0 forks source link

Valid date for borrowing #12

Open gremmyz opened 1 year ago

gremmyz commented 1 year ago

Type: Design Flaw

Currently,

books can be borrowed and the due date can be set to very far in the future:

borrow 3 b/21 d/15/04/3000

image.png

year 3000 is probably way after the person who borrowed the book has died, and users may use this to game the system and never return the book. I think its a major feature flaw that needs to be fixed ASAP

soc-pe-bot commented 1 year ago

Team's Response

Since ExpressLibrary is meant to be used for librarians, it is unlikely that a librarian would intentionally key in a due date that is that far in the future. We also do not want to limit the due date in the special case where a book may be borrowed longer than the usual borrowing period to provide more flexibility for librarians. Furthermore, this is a very rare case and does not make ExpressLibrary unusable for most users and the severity should not be high. However, we may consider implementing such a feature in a later iteration to ensure that the due date is not too ridiculous.

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: I agree with the lowering of severity. However, I don't agree that this bug should be rejected, and there should be a limit on how many days an item can be borrowed, as is in real life. Since you mentioned in another bug report reply that you will be marketing this product in Singapore only, I'll refer to Singapore's library borrowing rules.

image.png

Based on this, the maximum loan period at an instance in time is 21 days. Perhaps the validation check should be set to a more reasonable time period as such as well. If a librarian needed to extend the loan period for whatever reason, they should only be able to do it through perhaps a feature to edit the borrowing date.


## :question: Issue severity Team chose [`severity.Low`] Originally [`severity.High`] - [ ] I disagree **Reason for disagreement:** [replace this with your explanation]