Nanxi-Huang / pe

0 stars 0 forks source link

Find feature is too general #3

Open Nanxi-Huang opened 3 years ago

Nanxi-Huang commented 3 years ago

the find feature will find persons whose fields contain any of the given keywords. However, the search result will thus be too general and the find feature becomes not useful at all. For example, If I want to search a person whose company is amazon, after I entered 'find ama', all the contacts in the list are shown because maybe ama are commonly used letters and a lot of the contacts will have fields containing this letter. even if prefix are added to specify different field, the search result is also too broad for find feature to be useful.

Screenshot 2021-04-16 at 2.59.33 PM.png

Screenshot 2021-04-16 at 3.00.50 PM.png

nus-pe-bot commented 3 years ago

Team's Response

  1. All considerations for the fuzzy find feature is documented in the developer's guide.
  2. I argue that if you want to find amazon you should type find amazon. The fuzzy find feature is supposed to return you results that are similar because you cannot remember the spelling or you mistyped the spelling of a specific name.
  3. This issue is equivalent to going into google and searching for ama, expecting it to return Amazon. As shown below, it does not return amazon and I dont think it should. Your search term is too general and not that the feature is too general.

image.png

Items for the Tester to Verify

:question: Issue response

Team chose [response.Rejected]

Reason for disagreement: Firstly, the team should not make a comparison between their product and Google, because Google is a search engine!! The amount of contacts stored by the app is so little as compared to the resources of the internet...

In addition, 'find ama' is just one example, the find feature is undeniably too general. Even if I used the team's default data (only 8 contacts) and enter 'find Alex', only 1 contact in the default data is named Alex Yeoh, still:

image.png

Is there any "Alex" in Charlotte Oliveiro's info? No. But why is this contact in the search result? Imagine if there are hundreds of contacts, this find feature will be even more inefficient.

If the user wants to find a person whose name is Ann, and entered 'find -n Ann', again, 3/8 contacts will appear in the search results,

image.png

The description of fuzzy find in DG further proofs the inefficiency of the find feature, if a user searches a name and the name happens to be quite common, not only people with the same name will appear in the search result, but also name with more than 60% similarity threshold.

For Western names, it is quite common for people to have the same name. For Chinese names, there are many common surnames and popular characters. Names of other languages, especially long names, will have a greater chance of being matched if a short name is searched.

And there will be even more matching results if the user does not specify which type of parameter to search.

for example, the user wants to find a contact and he only remembers that the person's surname is Yao, and he enters 'find Yao'.

People with names, remarks, or tags containing 2 of the 3 letters will be matched, 'a' and 'o' are very common letters, and people with email domain as yahoo.com will also be matched.

As such, this find feature is not optimized for contact management at all. It is very likely that the user still needs to search manually, especially if the contact is all the way at the lower half of the list and the person does not have a very unique name.

As such, I think the find feature is too general, keywords should be matched instead of letters. Only 8 contacts and there are already so many examples that show the inefficiency of find feature, not to say if a real user who may store much more contacts.


:question: Issue severity

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

Reason for disagreement: I think this bug is of severity.High because it does not only appear in rare occasions, the find feature is one of the most important feature of this product, and probably most used. Its inefficiency will affect most users and cause problems for most users, for example, the contact they want to find is at the lower half of the list, and there are too many search results for them to manually filter through until they find the one they are looking for.