nus-cs2103-AY2425S1 / pe-dev-response

0 stars 0 forks source link

Lack of a method of documenting hours taught #3920

Open nus-se-script opened 2 days ago

nus-se-script commented 2 days ago

The app records hourly rate, amount paid, and amount owed. I believe the team hopes to help users "efficiently manage payments" as mentioned in their UG. However, it seems quite difficult for the user to find out whether a student owes them money or not.

Taking the case of Irfan Ibrahim, who paid 400.00 and owes nothing.

Expected: Users checking their accounts should be able to at least know how many hours of class they had with Irfan to find out whether a payment of 400 actually cleared Irfan's balance.

Actual: User has no way of knowing whether he/she had 2 hours of class with Irfan, in which case Irfan actually owes him/her 400.

image.png


[original: nus-cs2103-AY2425S1/pe-interim#3798] [original labels: severity.Medium type.FeatureFlaw]

Feng1231 commented 2 days ago

Team's Response

We have noted your concern about not being able to know explicitly how many hours have been conducted.

For a daily use case, The flow is usually as such:

  1. User conducted a lesson with Irfan Ibrahim
  2. User record the payment with either owe or pay (At this point of time, user need to know that he had conducted that 1h of lesson and record it into the application)

Referring to your suggestion, if we were to have implemented a feature to keep track of the hours conducted, The flow will become as such:

  1. User conducted a lesson with Irfan Ibrahim
  2. User updates the hour conducted attribute related to that student (At this point of time, user need to know that he had conducted that 1h of lesson and record it into the application)
  3. User record the payment with either owe or pay

To us, the step 2 of this new flow that we would have, according to what you proposed (where the application can track the number of hours conducted) seems redundant to us. Either way, the user have to remember that he has conducted a certain amount of hour of tuition for that student, and update the contact info using our application (using pay INDEX hr/HOURS_PAID, owe INDEX hr/HOURS_OWED) If he happens to forget about this tuition entirely, (for instance, he totally forget that he conducted the tuition with Irfan), having a feature that keep tracks of the hours conducted will also not salvage him from this.

To add on, for the new flow, there might be confusion to the user as he has to update the hour conducted and update the amount paid or amount owed

Moreover, if student pays immediately after and user wants to record it down, he has to input the number of hours conducted for, so this means that there is no need to keep track for the number of hours, since he would have already remembered how many hours he have conducted, and recorded the payment with the correct hour after the tuition.

For settle INDEX amount/AMOUNT, if user enters AMOUNT to be more than what the student currently owes, an error will be thrown and he would not be able to execute the settle command, which prevents the payment tracking from going haywire.

Furthermore, we also don't quite agree with the level of severity reported. (Note that this is supplementary and is not our reason for rejecting the bug reported) Justification for LOW severity:

Duplicate status (if any):

--