darrenangwx / pe

0 stars 0 forks source link

NFR Requirements #15

Open darrenangwx opened 1 year ago

darrenangwx commented 1 year ago

image.png

One of the NFR Requirements is A user should find the required inputs intuitive such that they do not need to constantly refer to the manual page for help But i find myself referring to the user guide constantly because for each of the commands there is no m/, c/ to help me memorize the commands easier.

For example the add command add /MODULE_CODE /MODULAR_CREDITS /MODULE_TYPE /YEAR /SEM.

If it was something like add m/MODULE_CODE mc/MODULAR_CREDITS mt/MODULE_TYPE y/YEAR s/SEM , I would be able to know which components belong to which and this makes it easier to memorize and figure out which component is missing without referring to the user guide.

I feel like adding a letter before the slash will help memorize the commands easier.

Justification: This is listed as low severity because i am still able to refer to the man pages every time I want to use the commands

nus-pe-script commented 1 year ago

Team's Response

We are rejecting this bug report as we feel that this is more of a suggestion without necessary justification, especially since the user can refer to the man page and will memorise the commands sooner or later. Adding flags may actually be counter productive as the user will have to memorise the flags as well.

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: While I understand the developers' perspective that this issue is more of a suggestion and users will "eventually" memorize the commands, I would like to emphasize the importance of addressing the Non-Functional Requirement (NFR) related to user intuitiveness and not needing to constantly refer to the manual page for help that was claimed by the developers.

  1. Ease of use and intuitiveness: "eventually" memorizing commands does not mean ease of use and intuitiveness. Furthermore, implementing easily identifiable prefixes (e.g., m/MODULE_CODE) can significantly improve the user experience by making it easier to understand and remember each component of the command. Using all slashes for parameters without any prefix makes the user second guess what parameter that slash is for. The addition of prefix before the slash will allow the user to know what that parameter is for, and hence, aligns with the NFR goal of enabling users to navigate the application without constantly referring to the manual page.

  2. Flags as memory aids: While the developers express concern that adding flags might be counterproductive since users would need to memorize them as well, the suggested flags are designed to be mnemonic and self-explanatory, aiding users in remembering the commands more easily. Moreover, this approach is in line with industry standards and best practices, making the application and inputs more intuitive and usable by everyone.
    (e.g. Command line commands have flags that are used to accept parameters like so: <command> -a <parameter1> -b <parameter2> rather than just <command> -<parameter1> -<parameter2> that accepts parameters without any flags)

In conclusion, I disagree with the developers stance of rejecting this bug as they are not fulfilling the point 2 of the NFR requirement they claimed if they stick with their ways of accepting commands parameters.