Searching is one of the key features of any modern user interface. With todays powerful algorithms and cheap hardware, it is possible to provide an easy-to-use search solution to your customers, utilizing all the great features that made online searches successful. Just keep one thing in mind: The less effort it takes to search, the more effort typically went into the development of the search functionality. Do not confuse ease of use with ease of implementation!
In this article, I want to give an overview of the typical mistakes that jeopardize search functionality. I will focus on Apache Lucene, since it is integrated into Sitecore and free, hence used often. There are many parameters that can be defined and customized in Lucene, yet very few that should. Search requirements are often prematurely optimized in ways that significantly reduce the usability, yet underspecified in the important areas. Here is a list of things to avoid when specifying search functionality.
Adding it “on top”
Searching is often a key feature of a solution, yet is perceived as something that you simply add on top once the rest is finished. If you follow this approach, your search will probably turn out to be a gimmick rather than a convenient tool for your customers. If you want your search to be useful, you need to consider it throughout the entire design phase. Specify the search while developing the data model. Define the relations and characteristics that could be used for filtering and identify which sections are internationalized. You will end up with a taxonomy of your content that can be reflected in your search functionality.
“Just like google”
Categorizing your search
Messing with the result
The take-home message is: Search does not come for free. It requires thorough planning and deep conceptual insights to create this functionality. Make sure that you have technical expertise available during the design phase. Try to avoid including too many stakeholder concerns and go for a technical relevance instead of a business one.
Last but not least: Note that this list is not even close to being exhaustive, as search itself is an incredibly complex topic.
Never miss an update by following us and subscribing to our monthly newsletter!
Latest posts by Markus Klimmasch (see all)
- What to consider when specifying the search function of your website - March 7, 2016
- Considerations for X-Platform Mobile App Development - November 20, 2015
- Sitecore Experience Database vs Google Analytics - November 11, 2015