gremmyz / pe

0 stars 0 forks source link

Some missing/incorrect input in .json file causes all data to be corrupted #1

Open gremmyz opened 1 year ago

gremmyz commented 1 year ago

Type: Design Flaw

Currently,

editing the .json files to have incorrect input

image.png

or missing input

image.png

will cause the application data to be corrupted, and the application to restart with a new file.

image.png

This behavior is documented in the UG, but perhaps it should also be a planned enhancement in the DG, as it might cause minor inconveniences to some users when they try to edit the data file or if a new user looks at the .json file and accidentally delete something and the input becomes invalid, which then causes the application to restart a fresh data file.

nus-pe-bot commented 1 year ago

Team's Response

From the module website under the Guidelines for the dev team to follow when triaging PE bugs section:

Handling manual edits to the data file: AB3 UG specifies the current level of support for manually editing the data file. At least that level of support should be supported in the new product as well.

I believe we have also provided the same if not more support by describing how the data is saved in the UG. Therefore, we will reject this bug report.

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: Yes, that would be the case if the bug was classified as a functionality bug.

image.png

However, I classified it as a feature flaw. I believe that this should be a feature flaw because as per the module website:

if the product is missing a critical functionality that makes the product less useful to the intended user, it can be reported as a bug of type Type.FeatureFlaw.

My original report:

it might cause minor inconveniences to some users when they try to edit the data file or if a new user looks at the .json file and accidentally delete something and the input becomes invalid, which then causes the application to restart a fresh data file.

I believe that I have given reasoning for this to be classified as a feature flaw.

  1. In case a new user opens the .json file and accidentally deletes something, they would have trouble retrieving it.
  2. In case a user tries to edit the data file and enters information in the wrong format, they may not know what is causing the issue.

Both these reasons shows that this flaw causes minor (perhaps unlikely) inconveniences to users, thus making the product less useful to intended users. To make the feature of being able to manually edit the .json file more useful, it would be good for the product to return an error message such as "Data from [directory_file] could not be read. See [log_file_name] for more information on how to resolve this."

Rather than response.Rejected, I believe this should be response.notInScope instead.

Edit: On hindsight, I feel like it is quite severe that the app deletes all data when invalid data is entered. Given the constraint of the Human-Editable File, editing the text file may not be a very rare situation as I previously perceived. I propose to raise the severity level of this bug to severity.Medium instead of severity.Low.

image.png

Since manual editing of data is reserved for advanced users, this bug will not affect most users. (Not severity.High)