ZHANGTIANYAO1 / pe

0 stars 0 forks source link

Undo part is missing in DG #10

Open ZHANGTIANYAO1 opened 2 months ago

ZHANGTIANYAO1 commented 2 months ago

There is no details about how the Undo feature is implementated under Implementation part. This can cause difficulties to update undo feature for other developers who don't know how undo works and is implemented because it is not written in DG

image.png

nus-se-script commented 2 months ago

Team's Response

The undo command is not a noteworthy design to be added in the DG as the undo command just replaces the current version of the addressbook with the last saved version before the command. Future developers will not have any noticeable difficulty understanding the code even without the description in the DG.

image.png

image.png

Items for the Tester to Verify

:question: Issue response

Team chose [response.NotInScope]

Reason for disagreement: This isn't as straightforward as the team responded. Instead, this command calls a ModelManager function, which then resets the previous addressbook to the current addressbook via a variable called previousAddressBook. The programmer then needs to learn more about how the previousAddressBook works in order to roughly figure out the process. In the interim, developers who learned about the project from scratch had to jump through multiple files and look at the code line by line and understand their workflow. So DG should obviously include the implementation flow of this command. Otherwise it's a black box for other developers. And there is no technical description or diagram about undo in the whole DG.


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