Wednesday, September 17, 2014

Eight times faster search experience ... same hardware, software, network

We've recently worked on improving the search experience for one of our clients, who use an Enterprise Content Management System to store their documents. Yet again we were able to achieve some impressive gains in user productivity without having the client invest into new hardware, network or vendor products. 

The 'pain points'

Existing CMS presented information in a linear fashion. To find information, users were following these steps:
  1. Populating their search criteria and running a search, 
  2. Browsing through pages of results, 
  3. Looking at Content Information and/or Document Preview on selected items 
  4. Downloading or updating selected documents

We found that the users were forced to repeat steps 1 to 3 multiple times, because the search form was getting replaced by the search results and search results pages were replaced by the content information pages - (see diagram below )

This sequential way of organizing the process was forcing users to go back and forth in their browsers, having to wait for pages to be reloaded many times in between. Because of this, most searches were taking between 2 and 5 min - from the time a user has initiated a search - to the moment when the document was finally located.
The server was also taking the time to respond (2..30 seconds for most pages) and because of the constant need for going back and forth - these response times were the first item on the user complaint list.

Users were unhappy with the server response times, but the real reason of their poor experience was bad information flow.

Another thing we found is that the use of screen real estate could be greatly improved:

Out of the box Search Results were only able to fit 20 rows per screen... and nothing else. Green on the screenshot above shows the useful space in out of the box Search Results screen.

Another issue that further slowed users down and made them lose focus and wait, were the use of pages in search results.  Pagination may work well on a web site, but in an enterprise app it can be very counterproductive. Here's why:
Going to the next page involves waiting. 
Mass update operations that span multiple pages have to be performed multiple times (separately for each page)

Not only these repeated mass-updates created more waiting but they have also introduced a greater risk of error – as users had to repeat update instructions for every page

The new UI 

So here's the new UI that we built (I'm masking parts of the screen to hide client's data):

Just one screen is replacing all 3 steps, that were slowing the users down. All 3 steps - filling the criteria, browsing through the search results and reviewing the details - all fit nicely in just one screen.

And the best part of it - iterative searching! 

Even though this new interface uses the out of the box content information screen and the same middle tier code to get search results, this new way of presenting the information created a net new way of using the system and took users up to a new bracket of productivity.

Because the search criteria is always shown on the left - the user can change or further refine their search without losing their criteria or having to go back. They immediately see the results on the right.

Another feature they found to be very helpful was the seamless scroll powered by the lazy load feature. As you continue scrolling down - the grid requests additional records from the server, so you never have to lose your focus and wait for more records to load. And it makes their mass updates a breeze.


With original UI users had to constantly jump over 3 sequential, slow- loading web pages to find the information they need. The new Search interface eliminated waiting and counter-productive fragmented views and also allowed users to iteratively refine their search criteria.

Task Time Improvement

  • Task time before - average - 3 min
  • Task time after - average - 30 sec

ROI Calculations

  • The average time savings per task - 2.5 min
  • The average number of times a task is performed each day per user - 9
  • Total average time savings per user - 22.5 min
  • Total number of product users - 29
  • Total average time savings for all users - 652.5 min or 10.9 hrs
  • Average hourly pay or system users - $50
  • Average daily savings - $543.75
  • Average annual savings - $137,000
  • Typical product life span - 3 years
  • Total estimated savings over the products lifespan - $411,000
  • The cost of implementing new search UI - $19,500
  • Net Productivity Savings - $391,500
  • ROI on improving productivity - 2000%

No comments:

Post a Comment