Intranet Process, Planning & Development

Written by Jeffrey Haas and excerpted from the book Practical Intranet Development

Search Solutions

The 'search' function on a web site can be a very valuable resource to users. It adds a high degree of usability because it allows users to look for the information they're actually looking for instead of the information your information architects thought they would be looking for when they designed your site's navigation schema. Even the most capable team of human factor engineers (usability experts) will never be able to take into account all your users' information needs in respect to specific words or phrases. That's why having a search function is a really good idea.

Unfortunately, there are numerous circumstances in which a company will be unable to simply include a search function on their internet site when the need for one arises. The technical complexity inherent in searching for keywords or phrases embedded in HTML is often beyond the level of technology used in the creation, implement and maintenance of a site.

Many web sites are static, meaning that each of its pages is an individual file where the content (text and images) is integrated with the formatting (page layout, font information, text size, image alignment, etc.). There are various degrees of dynamic templating and scripting that can be implemented to make maintenance of individual pages' content and an entire site's graphical look and feel more efficient, but any site that does not store its content in a database is still a static site at its core. That means it's a series of individual digital pages that have only superficial relationships to each other and searching them from within the site will be impossible.

In order to make a site searchable in this scenario, there are three possible solutions:

  1. Invest what may amount to substantial resources migrating your site onto a database-driven platform that will allow your developers to create a search function. This will typically involve developing or purchasing a content management system that includes a Boolean search capability (allows use of 'and', 'or', 'not' and other advanced operators to fine-tune search requests).
  2. Purchase an information management application that crawls through all the pages and documents on your Intranet server and indexes them in a local database. This database can then be searched by users through a web interface that can be integrated with your intranet (sample code is provided). These products are very powerful and allow for flexible, advanced search capability and extensive customization. The two leading products in this area are:
  3. Outsource your search functionality to a Remote Site Search Service that will place your search engine on a web server which is distinct from the one where your web site is hosted. This will allow you to let someone else handle most of the technical issues, and allow you to likely realize substantial savings over solution #1.

If you're interested in learning more about the first option, you should read Chapter 8 on Content Management Systems

The Remote Site Search Service option mentioned briefly in solution #2 above encompasses a wide choice of services and service providers. The different packages vary in cost from free to very expensive and have numerous value-added options that were implemented in efforts to distinguish themselves from their competition.

All Remote Site Search Services rely on the same basic precept: they function like any of the major search engine, but limit their results to those found on the pages specified for indexing by their clients. Essentially, the remote searcher's "web spider" crawls your site and stores your pages' information in an indexed database on their server. When one of your users enters a query from a search form on your site, the query goes by HTTP to the search provider. The search provider looks up the query in their index, formats the results in a format specified by you (which is likely to be derived from your existing web templates), and then displays them on their web site. The results' links, when selected, take the user back to the appropriate page on your site.

Note that, if the results page is formatted properly, this process can be transparent to your users and they will never be made aware of the fact they're leaving and returning to your site during their searches.

Where the service providers diverge in their offerings is in their core technology, their features and their pricing. Some service providers offer straightforward search capability (simple text and phrases only) while others provide more complex search capability that includes date-ranging, relevance ranking, and proximity operators (NEAR). As well, a key feature that is very valuable to most site administrators is the availability of statistical reporting on search usage that includes aggregate data and allows for a better ongoing understanding of what users are looking for on a site.

In regards to pricing, the range is significant, from free to tens of thousands of dollars (US) per month. An overview of some of the services is below. Following that, there will be a recommendation and a brief section on limitations.