The very first time a user inputs a key stroke in the search box his
search experience can be enhanced by either providing query
suggestions or performing type ahead queries and showing the results.
Google and Bing are examples of search systems providing query
suggestions.
Below are the query suggestions presented by Google while searching
for “Designing with the Mind in Mind”
For the same query the user needs to type more characters in Bing to get the suggestion.
Linkedin and Facebook are examples of search systems performing type
ahead queries.
Here is an example of type ahead search done on Linkedin while searching for “Yelp”
Providing search suggestions is more appropriate for systems in which
users engage in textual or keyword based queries, while type ahead
queries work better when users are searching for well known entities.
Benefits of Search Suggest Systems
Some of the benefits that users get from suggested queries are
Spelling mistakes are avoided.
Words like “Ratatouille” are almost impossible to spell
correctly. Most search systems are unforgiving of mistakes made while
entering the query terms. By providing query suggestions we greatly improve
the users chance of finding what he is looking for by eliminating a
large class of spelling mistakes.
Fewer keys need to be typed.
Most users do not touch type. Every key press involves significant
cognitive load on the user. By providing suggestions that can be
easily selected we reduce the efforts that users must take to use the
search system.
Suggestions provide immediate feedback in terms of what queries are possible.
Query suggestions also provide immediate feedback in terms of what
kind of queries the search system is capable of serving. The presence
of a suggestion indicates that the search system should provide a
useful response to the query. The absence of a suggestion could often
indicate that the system may not contain appropriate responses for the query.
Goals for search suggest systems.
Users should perceive that they are receiving the query suggestion
instantaneously.
Maximum interval between events for perception that one event caused another event: 140 milliseconds (0.14 second) This interval is the deadline for perception of cause and effect. If an interactive system takes longer than 0.14 second to respond to your action, you won’t perceive your action as having caused the response. For example, if the echoing of characters you type lags more than 140 milliseconds behind your typing, then you will lose the perception that you are typing those characters. Your attention will be diverted away from the meaning of the text and toward the act of typing, which slows you down, pulls typing out of automatic processing and into conscious processing, and increases your chances of making an error.
Jeff JohnsonDesigning with the Mind in Mind
From the above user must see the query suggestions
within 150ms of pressing a key to perceive that they are
instantaneous.
Suggestions should be ordered by likelihood of them being entered
by the user.
Most search suggest systems are built by performing analysis of logs
of the search system. Queries are scored based on how frequently they
are entered and if they resulted in clicks on the search results. High
scoring queries become the candidates for suggestions. In addition
the ranking of the suggestions can be personalized for a particular
user. The rankings can also be modified based on the category of the
suggestion. For example for a library ILS system suggestions for book
titles can be ranked higher than suggestions for DVD titles during
weekdays while on weekends DVD titles could be ranked higher.
results. While suggestions should be presented in the order of their score
there might be a benefit to re-ordering them so that if a suggestion
is the first word of another suggestion but it ranks lower then it
should still be presented first.
Completeness
For a user to believe that the search suggestion systems is correctly
guiding him it is important that the system be complete in terms of
the suggestions that it provides. If a query has the potential of resulting in a search result with a
high click through rate then that query should be provided as a
suggestion when its prefix has been typed by the user.
Here is an example of a search system that fails to do this.
The user is searching for the book "Lady Tasting Tea" on Ebay. After
typing "lady ta" he stops receiving suggestions.
However when he completes the query he does find that Ebay sells the book.
Correctness
The query suggestions system should not provides suggestions which
result in zero search results. Such suggestions reduce the users
belief that the search auto complete system is correctly guiding his
search exploration. It is indeed very rare to find a suggest system in
production that does this.