dom-buri / pe

0 stars 0 forks source link

Program crash in calendar view #12

Open dom-buri opened 9 months ago

dom-buri commented 9 months ago

Screenshot 2023-11-17 at 4.54.26 PM.png

Screenshot 2023-11-17 at 4.58.08 PM.png

In the calendar view with 2 appointments as shown in the screenshot above. I clicked appointment 1 a few times in a row, I then click appointment 2 a few times in a row. The program will throw a NullPointerException as shown in the screenshot

nus-pe-bot commented 9 months ago

Team's Response

Thank you for the feedback. We would like to clarify that the clicking of the appointments in the Calendar does not lead to a crash but only the throwing of NullPointerException. The application should remain functional and continue to operate normally even after the exception is thrown.

The situation you encountered with the NullPointerException is a result of our deliberate design choice to prevent the creation or editing of calendar entries through the Calendar graphical user interface (GUI). The application is designed to be primarily operated via the command line interface (CLI), and the calendar view serves as a read-only visual aid for the appointments created through CLI commands.

However, we acknowledge that the NullPointerException thrown when clicking on the calendar entries is not ideal, even if it does not cause the application to crash. It would have been preferable to silently ignore the clicks or provide a user-friendly message indicating that the creation and editing of appointments are not available via the GUI. Our group recognize this as an area for improvement in user experience.

We decided to categorise this as a FeatureFlaw rather than a FunctionalityBug for the following reasons:

  1. Since the NullPointerException doesn't interrupt the application's operations or prevent further actions, it doesn't constitute a failure of functionality. Instead, it points to a lack of refinement and exception handling in the Calendar feature that should be addressed to improve the overall quality.

  2. Ideally, the Calendar should account for the click of events and manage them without exposing underlying exceptions to the user. The presence of exceptions suggests that the Calendar feature's design isn't fully realized, which aligns more with a feature flaw than a functionality bug.

We decided to categorise this as severity Medium rather than High for the following reasons:

  1. The issue occurs only when the user clicks on the appointment in the Calendar which may not be frequent for all users.

  2. It does not prevent the user from using ToothTracker as intended since ToothTracker continues to function properly after the exception is thrown.

  3. The main inconvenience seems to be the exception message itself, which might cause confusion or concern but does not hinder ToothTracker's usability.

    Items for the Tester to Verify

    :question: Issue type

Team chose [type.FeatureFlaw] Originally [type.FunctionalityBug]

Reason for disagreement: I think it is a functionality bug because even though clicking of the appointments in the Calendar is not supposed to do anything, throwing a null pointer exception is an unexpected behavior. The software should handle all user interactions gracefully, even if they are not supposed to trigger any functionality.


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