Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Add planned-enhancements #295

Conversation

tituschewxj
Copy link
Member

Adds the planned enhancements.

Resolves #241, resolves #175, resolves #198.

The reason why we can't combine planned enhancements for duplicate prefix checking and duplicate checking.

FAQ: Enhancement X and Y are very similar. Can we count them as one?
Answer: Only if adding one automatically adds the other. If one can be added without the other, they are counted as two enhancements.

I tried to pick enhancements that are more serious in my opinion.

  • [PE-D][Tester A] Find accepts arguments that do not follow name format #195 is very low, so I omitted it.
  • I believe filtering by attendance was an important feature that was left out and it could help cover certain weaknesses in our product. (which may be a medium)
  • I kept name validation, as there was the trade off of being able to add blank names without it (which is a medium -> low)

Currently duplicate phone/email is not really that serious. (low, so we may want to change this out for something more serious if any)

@tituschewxj tituschewxj added priority.high !!! size.small Short pr, less than 100 lines of code changed type.dg Developer Guide labels Apr 13, 2024
@tituschewxj tituschewxj added this to the v1.4 milestone Apr 13, 2024
@tituschewxj tituschewxj self-assigned this Apr 13, 2024
Copy link

@wxiaoyun wxiaoyun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are indeed important planned enhancements! LGTM

Comment on lines +1190 to +1198
9. **Searching for students by their attendance in a certain week(s).**

1. Currently, the `find` command only works on the name attribute of a student, meaning that we can only find a student by name.
2. However, it is useful for a user to find students by their attendance in a certain week(s) number, so that the user can easily identify which students attended in which week(s), for easier tallying of numbers and improving how the user tracks students attendance.
3. Hence, we plan to modify the format of the `find` command in the following way to achieve this change. The `find` command format would be changed to `find [KEYWORD]… [wk/WEEK]…`, so that the find command works on the `WEEK` parameter.
4. The reason why `KEYWORD` and `MORE_KEYWORDS` are modified, is to handle the situation when a user wants to search for students just by attendance, so the constraint that a keyword has to be present has to be removed in order to implement this with the `find` command. We minimise the changes the original behaviour of the `KEYWORD` and `MORE_KEYWORDS` parameters.
5. We also specify a constraint that at least one parameter must be present for `find` to execute successfully, to preserve the current behaviour that one keyword must be present.
6. A user can now search students attendance by week number through the above changes. For example, entering `find wk/1` will find all students whose attendance is marked in week 1.
7. Another example with multiple parameters is that `find wk/1 wk/2` will find all students whose attendance is marked in either week 1 or week 2, following the current behaviour of the `find` command with `KEYWORDS` and `MORE_KEYWORDS`.<br><br>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we allow find command to find students whose attendance is NOT marked in week 1 as well? e.g. find wk/!1 wk/!2

Copy link
Member Author

@tituschewxj tituschewxj Apr 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can't do that, because it would count as two enhancements: by their marked attendance and by their unmarked attendance?

FAQ: Enhancement X and Y are very similar. Can we count them as one?
Answer: Only if adding one automatically adds the other. If one can be added without the other, they are counted as two enhancements.

I think it would be difficult to justify that it is just one new feature, because that is adding another feature of finding negative matches in the find command.

@tituschewxj tituschewxj merged commit 671df23 into AY2324S2-CS2103T-F13-1:master Apr 14, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority.high !!! size.small Short pr, less than 100 lines of code changed type.dg Developer Guide
Projects
None yet
2 participants