Search Project Overview

Lots of people think that implementing a search solution is easy and can be achieved in a matter of days. While getting a basic solution to work can be done quickly, making that solution provide contextually relevant information to all end users requires more work.

This article outlines the steps you should follow to implement a successful, long lasting search solution relying on the Coveo™ Cloud platform.

Know Your End-User Expectations

One common mistake in the early stages of a search project is to index all available content without first identifying the actual needs and expectations the end users may have. Before you even start working on your search project, you should be able to answer the following questions:

Question A few possible answers
Who are you end users? What are their search use-cases?
  • Support agents looking for case insight
  • Customers looking to solve their issues through self-support
  • International shoppers who want to browse your product catalog
What information do your end users expect to find in their search results?
  • Product documentation
  • Support cases
  • Forum conversations
What metadata do your end users expect to be able to filter their search requests/results on?
  • Product name
  • Article author
  • Product price range
How do your end users expect relevance to affect their search results?
  • Rank new items higher
  • Rank videos higher
  • Rank specific product-related items lower when a product is not available in the country of the end-user

To gather such knowledge, a common practice is to carry out interviews and shadowing sessions with potential end users. Analyzing available usage data can also be helpful, especially if spending time with potential end users is not an option.

Locate and Index Content

For more detailed information, see the Locating and Indexing Content section of this guide.

End users often have a rather vague idea of where the information they need actually resides; they may merely be aware that the content is accessible through some kind of portal. Early in your search project, you must identify the exact system (or systems) where the content your end users need is located (e.g., SharePoint, Google Drive, Lithium, Salesforce, etc.).

The Coveo Cloud platform offers a large selection of connectors which can be configured as sources to regularly pull items and permission models from original content repositories into an index. Typically, you should be able to use system-specific sources to index most, if not all of the content your end users require. If no system-specific source exists for a certain type of content repository you need to index data from, there are other possibilities (e.g., using a generic source such as Database or Sitemap, or using the Push API).

Design the Search Experience

For more detailed information, see the Designing the Search Experience section of this guide.

A complete search experience may include one or more search interfaces aimed at satisfying the end-user needs and expectations.

Among other things, designing your search experience may require you to:

  • Decide which filters and refiners should be available, and how the end user may interact with those (e.g., configure facets and tabs).
  • Create result templates to render certain types of items in a tailor-made fashion (e.g., to highlight new items).
  • Develop custom components to meet specific end-user requirements (e.g., to display a result count next to each tab).

While implementing a search interface entirely on your own is possible, doing so can be complex and time consuming. Thankfully, the Coveo JavaScript Search Framework offers a set of customizable components which you can assemble to easily create feature-rich search interfaces.

Tune Relevance

For more detailed information, see the Tuning Relevance section of this guide.

Indexing and querying content are merely the first steps of a successful search project: relevance tuning is also an important and recurring task.

Manually Tune Relevance

The index provides built-in relevance through various ranking factors and weights.

You can also define your own relevance tuning rules by injecting query syntax expressions in search requests before they are sent to the Coveo Search API, and/or by creating various query pipeline rules (e.g., query ranking expressions (QREs), thesaurus rules, etc.).

Examine Usage Analytics Data

End-user interactions with a search interface can be recorded through the Coveo Usage Analytics (Coveo UA) service.

You can notably leverage usage analytics data in reports to learn what your end users are searching for, what they are finding, and also what they are not finding (which can help you identify content gaps). You can also derive end-user behavior from this data, which allows you to make informed search experience design choices and/or relevance tuning decisions. Finally, the Coveo Machine Learning (Coveo ML) service relies on usage analytics data to improve the output of its models.

Activate Coveo Machine Learning

Coveo is a relevance engine that leverages search to understand and learn from end-user intent in order to provide increasingly relevant interactions. This implies that when sufficient reliable usage analytics data is available, the Coveo ML service can dramatically improve the relevance output of your search project.

Continuously Improve the Solution

A search project is never done. You should continuously examine usage analytics data to fill content gaps, improve the search experience design, and fine tune relevance. The Coveo Cloud administration console offers tools to do this in a most efficient way.

What’s Next?

The next article in this guide provides guidelines to help you manage your search project (see Search Project Management).