Li-Lehao / pe

0 stars 0 forks source link

edit json file causes data lost #7

Open Li-Lehao opened 2 years ago

Li-Lehao commented 2 years ago

Steps to reproduce: edit the json file. change a CAP field to 4.500.

Expected: when open the software again, some warning should be given, and the person should be loaded except for that person with an invalid field.

Actual: the software start with a new json file, and the person list is empty.

Screenshots:

image.png

image.png

image.png

image.png

nus-pe-bot commented 2 years ago

Team's Response

https://github.com/nus-cs2103-AY2122S1/forum/issues/404

As per the answer from Prof Damith, our app does still support the functionality of editing save files as it matches the functionality of AB3

Our UG also had the disclaimer that editing the save file into a invalid format will clear the application as seen here:

image.png

Therefore we do not think that it is a valid bug.

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: I agree that this software support human-edit JSON file. And I also agree that the behavior that if some fields of the JSON file is invalid, the software will start with a new empty JSON file is pointed out in the UG.

Therefore I think since this behavior is pointed out in the UG, it should not be considered as a functionality bug, but it can be considered a feature flaw with severity Low. Although this behavior of starting with an empty JSON file is somehow inherit from the original AB3, it is really not good behavior. The software allows users to manually edit the JSON file, but it will wipe out all the data if some field is wrong without warning the user. This behavior rise the risk of losing data. I think the better behavior is: if some of the persons have invalid fields, skip these persons when loading the data, after that show a warning to the user that some of the persons with invalid fields are not loaded, and allow the user to go to the JSON file to correct them.

Therefore I think this should be a design issue and it can be considered a feature flaw.