LeeEnHao / pe

0 stars 0 forks source link

Important user story is not considered in the development: Salvaging patient data in case of data corruption #13

Open LeeEnHao opened 3 years ago

LeeEnHao commented 3 years ago

From the developer guide, it would seem that there is no consideration for the scenario where the user accidentally corrupts the data file of Archangel. This is extremely dangerous as the application contains the patient records such as bloodtype and other important details.

If the user is solely relying on this application as a means of tracking patient data, a data wipeout will decimate the user's ability to conduct his services. There should be a backup plan for such a scenario, so that the application can safely restore to a previous state. This is better than losing everything at once.

Maybe keep a replicated data file, and have a backup file as well. This can be a safeguard to guarantee the robustness of the application for potential users.

nus-se-bot commented 3 years ago

Team's Response

Thank you for your response.

While this is a valid concern, we feel that the probablity of such occurence is very low. This sounds like a possible feature to be implemented in later phases,but currently it does not affect our functionalities.

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: As with all applications that deals with important datasets, anything short of a 100% guarantee of the atomicity of transactions and integrity of data is detrimental to the user should a data corruption occur. By data corruption, it can include data loss as well. While it can be included for future implementations, it should be at least included as a user story. Otherwise, an application dealing with important datasets, that are not able to preserve the integrity of its data will not be able to compete with those that do, such as applications that rely on traditional RDBMS.

Hence, at the minimum, the user story of a graceful recovery of data/salvage should be included to show that developers have considered the necessary business requirements to make the application safe to use.


:question: Issue severity

Team chose [severity.VeryLow] Originally [severity.Medium]

Reason for disagreement: [replace this with your explanation]