Why Analytical Applications Fail
By Zach Gemignani
July 7, 2008
Find more about:
analytics
reporting
Many analytical applications fail for a simple reason: they assume users know precisely what they need before they’ve begun the analysis. There are cases where this assumption holds and the user has a specific end-point in mind. But more often, users depend on the tool to track down an answer with only a vague idea of where to start. The exploratory analysis that follows can feel like swimming upstream when the application isn’t designed to facilitate the journey.
The source of this mismatch is partly rooted in the technical perspective of database developers. The simplest path to providing data access is to let users fill out a form to define a SQL query. It is a linear mindset that isn’t well-suited to ambiguous problems.
I’d like to offer a couple examples that illustrates the difference between the common, form-based approach and a more dynamic, interactive approach. Then I’ll explain the implicit assumptions behind the different models and why it matters.
At its heart, Travelocity is a travel analysis tool intended to help you find the best flight (or hotel, car rental, package, etc.) given a complex set of parameters. The relative importance of each of these parameters (departure day/time, return day/time, airports, connections, preferred airlines, price, etc.) is a personal preference… but not one that is explicitly or fully known even to the user. For example, it would be hard for me to say exactly how much more I would pay for a non-stop flight or what is the relative value of a more convenient airport versus a more reliable airline. These preferences are hard to understand prior to seeing specific trade-offs.
Travelocity approaches this complex problem in the way that so many analytical problems do: it asks for all your preferences first then offers a static list results for the specified query.

A few things to note about this search results page:
- On a busy web page, “Change Your Search” is not emphasized.
- The “tracker” across the top shows a linear five-step process. The user is expected to flow through this sequence in order.
- Getting results for a new search takes more than ten seconds.
I’ve been a loyal Travelocity user for years, and I don’t want to imply that this site is poorly designed or difficult to use. The problem is more subtle than that.
By way of comparison, let’s take a look at a more recent entrant to the online travel business, Kayak. This site is designed with a different usage model in mind. Kayak starts by asking for the same information as Travelocity, but the results pages is designed to support further analysis:

The biggest difference is the prominent filtering functionality on the left side of the page. The filters allow users to narrow down their original search without leaving the results page (it takes less than a second to view refreshed results after changing a filter—no “run report” button required). In addition, Kayak places more emphasis on the start-over option. The designers of this site did not assume your first search would be enough to get you to the perfect flight option. Finally, notice the different “views” of the data that are available for a given result set. The views help support different types of decisions based on the same search parameters.
Analytical applications for business have similar underlying structures and usage models. The analysis process in Omniture SiteCatalyst, the leading web analytics platform for large sites, offers a typical example:

This application offers lots of functionality, and it feels like featuring functionality is the primary purpose of the start page. If you want to get to useful data rather than view an advertisement for Omniture products and events, you can start by selecting the “Report Builder:”

Now, it is form-filling time. Like Travelocity, the user is expected to choose the precise parameters before they get to see anything. The resulting report requires a 10 second wait, and the result is static. Any additional filtering will require you to run a new report
Now let’s look at how Google Analytics chooses to structure the user experience:

In contrast to SiteCatalyst, Google Analytics shows you results immediately—no defining or configuring a report before you can get started. Similar to Kayak, the application offers a bunch of options on the report results page to refine parameters (e.g. data ranges, metrics, comparisons).
Travelocity and Omniture make a few assumptions common to analytical applications:
- Users can accurately define their need (i.e. they already know what they are looking for).
- Users can precisely define their need (i.e. they know all the relevant parameters).
- Users’ workflow will follow a linear sequence of events. Going back to the beginning is a failure of the process or user.
More effective analytical applications like Kayak and Google Analytics make different assumptions:
- Users have a general question, but do not necessarily know details about what they're looking for.
- Users need to see results before they can ask better, more detailed questions. These feedback loops provide critical learning.
- Users need to get to data as quickly and easily as possible. A screen without data is delayed progress.
- Different views of the data can provide different insights about results.
- Users want the application to keep up with their trains of thought. Speed and responsiveness matter. Here’s a framework from Jakob Nielsen’s blog about response time:
0.1 second is about the limit for having the user feel that the system is reacting instantaneously, meaning that no special feedback is necessary except to display the result.
1.0 second is about the limit for the user’s flow of thought to stay uninterrupted, even though the user will notice the delay. Normally, no special feedback is necessary during delays of more than 0.1 but less than 1.0 second, but the user does lose the feeling of operating directly on the data.
10 seconds is about the limit for keeping the user’s attention focused on the dialogue. For longer delays, users will want to perform other tasks while waiting for the computer to finish, so they should be given feedback indicating when the computer expects to be done. Feedback during the delay is especially important if the response time is likely to be highly variable, since users will then not know what to expect.
In my experience, making the right assumptions about user behavior makes all the difference between an application people enjoy and depend on and an application people dread using.
Microsoft's Executive Dashboard... Magnifying Glass Required
By Zach Gemignani
June 26, 2008
Find more about:
dashboard
reporting
microsoft
Organizations have a personality, and it bleeds into everything from executive reporting to product offerings. A recent Fortune article entitled Microsoft without Gates offers this wonderful tidbit about Steve Ballmer, CEO of Microsoft:
Even though he never was a serious computer programmer, by all accounts Ballmer is just as good at math as Gates is. He lives and breathes data. “Steve has a computer in his head,” says Bob Muglia, a 20-year company man who heads the Server and Tools division. Ballmer expects his subordinates to be adept in math as well. He distributes 11-by-17 sheets filled with numbers detailing the progress of various operations. The numerals are so small that executives use transparent magnifier rulers to see them. But there are never any columns showing percentage changes. Ballmer believes people ought to do that in their heads. It saves space on the paper for more numbers.
Wow. If it is as bad as the author describes, Ballmer has designed the anti-dashboard.
The Presentation Zen blog offers another great example of organization culture as displayed in business artifacts:

Gates here explaining the Live strategy. A lot of images and a lot of text...Good graphic design guides the viewer and has a clear hierarchy or order so that she knows where to look first, second, and so on. What is the communication priority of this visual? It must be the circle of clip art, but that does not help me much.

Does it get more "Zen" than this? "Visual-Zen Master," Steve Jobs, allows the screen to fade completely empty at appropriate, short moments while he tells his story.
3 comments
superdaz said:
What is the communication priority of the Apple visual? Making things look pretty because they simply do not and will never experience the amount of work put in by companies like Microsoft over such a range of products.
Demerzel said:
What each of the backgrounds really mean:
Bill Gates: I just bought all these industries and copyrighted them.
Steve Jobs: This is the sum of all my life's work--nothing.
Max said:
@superdaz: I don't quite understand what you mean, considering how notorious Apple as a company is for working its employees to the bone. Anyway, I cite an old Unix mantra here to make my point for me: The ideal program does one thing extremely well, and nothing else. I don't think you could say that for either Microsoft or any of its products. What's the fuss about doing lots of things if you don't do any of them particularly well?
Add a comment
Mashing Google Analytics With External Data
By Sal Uryasev
June 9, 2008
Find more about:
googleanalytics
reporting
google
A couple months ago, we put together a Greasemonkey tool that sucked data out of Google Analytics, and after mining it for trend information, integrated it back into the GA interface. This week's tool combines and extends Google Analytics with data from an outside source.
Here is a quick alpha of our Greasemonkey integration of external data reporting into Google Analytics for Kampyle, a "feedback analytics service." Click on the images to zoom in.
Clicking on the 'Kampylize' tab queries the Kampyle site in real-time to populate the standard GA data table.
Our friends at Kampyle run a service that allows website owners to put a feedback button on individual pages of their website. All information submitted by the user is uploaded to a central Kampyle database that compiles the user feedback with web page url and standard internet statistics such as the name of the browser. Website owners can access a server-end service that consists of a reporting site complete with summary data tables, graphs, and charts.
Since both sites are web-based reporting suites segmented in a similar fashion (individual website, date, web browser, etc.), they integrate together naturally. There is a lot of value in placing related data side by side, allowing users to get a more holistic picture of web site performance. If you have other ideas of data sources that would fit neatly with Google Analytics, let us know and we'll consider building the integration.
If you're interested in technical details, continue to Open Juice to see how this is all accomplished...
A Dashboard Alerts Checklist
By Zach Gemignani
May 8, 2008
Find more about:
dashboard
alert
design
reporting

There is a tendency with reporting, and dashboards in particular, to cram as much information on the page as possible. It is a problem that Avinash describes with typical candor:
“This one of the core reasons why most dashboards are 'crappy', i.e. they are data pukes that provide little in terms of context and even less in terms of actionable value.”
In the past, we have offered tools to make data presentation as clear as possible (chart chooser, Excel chart cleaner). Sometimes clean isn’t enough; a more dramatic approach is needed.
One alternative is to shift the focus from the full data to changes in the most critical data points. By pulling out the important exceptions, you can make it easier for your audience to digest what matters and take action.
Stephen Few says in his book Information Dashboard Design:
“The best way to condense a broad spectrum of information to fit onto a dashboard is in the form of summaries and exceptions…given the purpose of a dashboard to help people monitor what’s going on, much of the information it presents is necessary only when something unusual is happening; something that falls outside the realm of normality, into the realm of problems and opportunities. Why make someone wade through hundreds of values when only one or two require attention? We call these critical values exceptions.”
Alerts are one mechanism to turn the focus to the exceptions, outliers and data highlights. Whether embedded in the dashboard or presented separately, alerts can be the extra layer of abstraction that make a dashboard useful. Unfortunately, they are hard to get right. I’ve arrived at four C’s for effective alerts—context, cogency, communication, control. Here’s a checklist to consider as you build alerts into a dashboard or report:
Context: Users need to understand how an alert is defined and how it fits into the larger picture.
- Are the parameters well defined? An alert is commonly defined by the following factors: metric (e.g. revenue), dimension (e.g. time), delta (e.g month over month change), scope (e.g. Northeast region, Peanut-product line), threshold (e.g. increase or decrease of 10%).
- Is the timing of the alerts actionable? One client explained to us that fluctuations in many of their metrics make monthly alerts too frequent—it would unnecessarily alarm people when, from their perspective, no significant trend had been established.
- Is the change statistically significant? This is of particular importance when you are measuring deltas. A doubling of traffic from a referring site doesn’t mean much when it is moving from one to two visitors.
Cogency: An alerting system needs to avoid causing unnecessary alarm while delivering easy-to-understand information that can be acted upon.
- Can the alerts be described in simple terms that even an executive can understand? Alerts should have a real-world meaning that users are familiar with. If an alert is based on a complex metric, for example, users will be confused as to the implications.
- Is the alert actionable? In the best cases, alerts should point users to both the drivers of the alert and the actions that can address the situation. This system does neither: ![terror warning system]
- Are the alerts so granular and/or frequently triggered that users will get alert fatigue? Excessive use of alerts will undermining their credibility. We saw this happen at one client where an IT-designed system threw off alerts like they were going out of style. The application went out of style the next year when users decided it was more distracting than useful. Here’s another example of a system that seems designed to raise blood pressure.
(It appears that a 5% increase in brand attribute performance isn’t good enough to get you out of the yellow.)
Communication: Alerts must be designed to effectively capture attention and inform.
- Is the alert placed in context? Google Finance does a nice job of putting news alerts within the stock chart.

- Is it clear what the user should do next? Give the user a clear path to more information so they can understand the full context of the alert.
- Does the sophistication of your alerts match the sophistication of your audience? I’ve found that it is better to start with some simple alerts so your audience can begin to learn what they mean and how to react. Over time, these alerts can become more refined and focused to capture complex situations.
- Does the alert draw the eye without being visually overwhelming or annoying? Here’s a article about how to “reduce visual noise” in dashboards.
- Is color used appropriately? Red means bad. Yellow is sorta bad. Green means good (but “good” things don’t need to be alerts). It isn’t particularly fair for color blind folks, but these conventions are deeply rooted.
- Have you found the best mechanism for presenting alerts? Alerts can be sent through e-mail, as SMS message, blasted over the office intercom system, or posted to the wall in the bathroom. What is the most convenient and appropriate medium?
Control: Advanced alert system should give users the ability to customize and manage alerts.
- Can the user identify the important alerts for them, and avoid the others? As hard as you may try in designing the dashboard or report, you aren’t in the shoes of the users. They will learn what they want to pay attention to and what information is extraneous.
- Can the user adjust the parameters? With more sophisticated dashboards, you want to give users the ability to adjust parameters to hone in on the exceptions that really require action.
- Can the user analyze alert frequency and trends? I’ve never seen a system that does this, but having the ability to view and analyze alert history seems critically important to getting a holistic view of performance.
How to Feel Better About Your Data Warehouse Fiasco
By Zach Gemignani
February 27, 2008
Find more about:
Business_Intelligence
bi
reporting
Here’s a little predictive analytics:
About a year ago, I took a swipe at the “$80 million supercomputer to analyze NYC student achievement.” It smelled more like a super sales job than a super useful analytical tool.
At the time I had said:
Teachers are underpaid, hardly appreciated, and overworked. I can only wonder what the half-life is of a system that asks teachers to log on to get information delivered by the “chief accountability officer.”
Well, it appears that things haven’t gone that smoothly with the supercomputer. Today, I received a link from Leonie Haimson, a NYC education advocate, to a story entitled SCHOOLS COMPUTER AN $80M ‘DISASTER’.
Not only has the supercomputer struggled to gain much traction with users (“The school system’s new $80 million computer super system to track student performance has been a super debacle, teachers and principals say”), it has coincided with severe budget cuts.
We see these data warehousing problems all the time with our clients, and the NYC supercomputer displays all the hallmarks:
- Delivery delays: Nearly six months after the Department of Education unveiled the “first of its kind” data-management system, the city’s 80,000 teachers have yet to log on because of glitches and delays.
- Bad user experience: Many principals have complained that it runs slowly, lacks vital information, and is often too frustrating to use.
- Complicated training and set-up: School officials were hoping to have everyone hooked up and trained within months… delays in creating IDs and passwords for teachers
- Trying to do too much, delivering too little: The principal added that she preferred to get student information from a combination of old data systems “rather than wait for ARIS to churn and churn and churn and maybe give me half the report I need.”
- Massive cost: Complaints about the expensive system—on which nearly $35 million has been spent so far—have gotten louder since the city unceremoniously chopped $100 million from individual school budgets last month.
- And yet, few success anecdotes to justify the investment: ARIS had already enabled her data team to analyze the performance trends of the school’s many English-language learners.
It does offer one thing that I haven’t seen before: a Chief Accountability Officer.
6 comments | Show all comments only the last 5 are shown
Miguel Marcos said:
Chief Accountability Officer.
Go ahead and pronounce the anagram:
CAO.
Ross said:
Does these mean that the "CAO" will be the one who has to pay back the $80 mil, he's Accountable right?
Lynn Marentette said:
I'm a school psychologist who works with people and data. I've been frustrated with user-unfriendly technology throughout my career. Student data management systems are one of my sore spots.
The quote from the article tells it all: "Bad user experience: Many principals have complained that it runs slowly, lacks vital information, and is often too frustrating to use."
NYC isn't the only place experiencing usability problems with education data management systems.
I work in North Carolina, a state that adopted the NC WISE data management system about 10 years ago, at quite an expense. My school district will be moving to the system next year, so I do not have personal experience with the system. To prepare myself tof the change, I viewed the multitude of questions discussed on the NC WISE Questions/FAQ website. One glance and you will quickly see that ease-of-use was probably not a priority during the system's development: http://www.ncwise.org/ncwiseQuesFAQ.html
By the way, the NC WISE system doesn't play well with data-management systems designed for N.C. special education student information. Many districts use CECAS for handling this data, but as you can see from a recent "bug" list, there are numerous problems: http://www.nccecas.org/systemupdates/openbugs.html
Problems with the NC WISE system have been documented for years. Here are a few examples:
eSchool News article, 2004: http://www.eschoolnews.com/news/top-news/index.cfm?i=35547&CFID=5146403&CFTOKEN=38831309
Byte and Switch article, 2006: http://www.byteandswitch.com/document.asp?doc_id=105150
Note: I returned to school a few years ago to study computers/technology part-time, including HCI, so I know that there is much room for improvement.
Annoyed Analyst said:
So...how do I feel better about my data warehouse fiasco? :-)
Mary G. said:
Same problem, smaller scale. You’ve opened the door for me to rant a bit about a program that was recently imposed on the special educators in our five town school district at a cost that I have been unable, to date, to track down—but I intend to.
Our small rural district here in Vermont recently bought into a special education management program. As the coordinator of special education services and assistant principal at my school, I have found the program difficult to use and inefficient.
The program, Case-e, was created with little or no understanding of the special education process. The creators didn’t even bother to use the special education terminology we use in Vermont on the countless, seemingly arbitrarily placed, tabs. Each section of an evaluation or individualized education plan is isolated so that the user can’t see the report until it is finished. And, there is no spell check! Really, I’m not kidding. Just as annoying, test scores cannot be shown in columns. Oh, you think I’m making this up? No, the program does not allow it. The support folks from the company said they can’t fix it because it was “created by engineers in California.” What is that suppose to mean? They are willing to sell a program but to be responsible for how it works?
According to their website, the company claims their goal is to “help special educators reduce their time spent on paperwork and administrative duties so they can spend more of their time and energy helping students.” Wrong. The final product is unattractive and difficult to read, often with big blank spaces and sections of the report divided where they shouldn’t be. Not only does the original document take significantly longer to prepare, but also I am ashamed to give it to parents. I always apologize for it and often give them a second copy of a report that I have redone in my old parent-friendly format.
Finally, the program claims to provide “total support… you have all the assistance you need, when you need it.” Not true. If the creators knew anything about teachers, they would know that we often write these reports late at night and on the weekends. Teaching is not a 9 to 5 job. Their technical assistant folks need to keep the same hours that teachers do.
Beyond the cost of this program, this is costing our district many extra hous of professional time. I could go on, but I won’t. Grrr...
Mr. C said:
I'm a principal in NYC and can verify for you that ARIS is the fiasco you describe. For a system with very few active users, it's shockingly slow. (What will happen when everyone is actually using it?) Currently, ARIS is a pretty user interface on top of an outdated (and equally atrocious) computer system in which we still do all of our data entry. No new information can be put into ARIS. You can only view the information and produce more attractive looking reports which mostly concern test scores.
The trainings, largely done by IBM staffers with no sense of what we would need/want from a data system, have been a total waste of time. I have spent more time in training about how to use ARIS than I have actually using it for anything to help my students or my school. And yes, I just lost tens of thousands of dollars from my budget.
Add a comment
Earlier writing




8 comments | Show all comments only the last 5 are shown
matt said:
Thanks for this analysis. It's very useful to feature real world example followed by your pro view on the topic. More on usability for analytical app, please! :)
Galen @ Estately said:
Awesome analysis - I'm not sure I've ever seen it broken down this way. As a non-stop changer of my preferences, the need to constantly tweak my search / preferences makes Kayak and Google Analytics ideal.
Simon White said:
Hello,
Nice to read your article. Complex travel queries are indeed a hard problem, and balancing user's knowledge (they have, after all, had up to 10 years of experience in online flight queries and booking with Travelocity) and a way to convert the less well versed in just what constitutes a flight / hotel booking is the crux of the problem. Equally, the databases behind such queries are highly optimised and Kayak is piggybacking on top of that as an affiliate, rather than a vendor in itself. Affiliates are possibly best placed to try new paradigms and then drive change in the actual vendor sites, and it's useful to note that. You also might want to look at the two separate flexible dates options on Travelocity's site, which you have to activate before searching, but which provide different price comparison options / views. Perhaps a way of switching to those views would be a good addition, but the interface, as you noted, is already quite busy.
As an aside, Omniture have launched a v14 which gives a slightly different approach to reporting, it would be fairer with a current article to look at their latest UI.
-Simon (disclaimer: I work in the Travelocity group)
Anthony said:
I enjoyed you're article very much and agree with it wholeheartedly...
Have you seen QlikView? It's a platform that works in much the way you describe. There are some good examples at http://demo.qlikview.com
FYI, I work there, so I'm biased.
Brian said:
Hi Anthony. How is Qlikview different than the other bi tools like hyperion, cognos, tableau, excel, etc? Going to the website, I saw mention of in-memory processing, 64 bit architecture, etc (like I read in a Gartner (i believe) report) but I don't see how they are incorporated nor what makes QlikView the best option. Thank you
Robbin said:
I have to change you guys into lovers of Farecast (even though it was purchased by MS.) I met the Kayak guys at SES NY and they tried to convince me to do the Kayak thing, but nothing is as flexible as Farecast. When it comes to travel, that is.
Jurgen said:
Very nice article, thanks for writing it.
I personally like the idea of being able to play with the results and explore further. However, I am sympathetic towards the Travelocity site as it is definately less-busy (translated: "less-confusing") to a new user that simply wants to find the best flight prices between two dates. I'm certainly no expert in travel systems, but I have seen many operational implementations fail because of over-complicating stuff. In my view Kayak has too many options on there. If they prioritised a little they could reduce the number of options yet still offer enough flexibility to differentiate from Travelocity and be innovative. All this without possibly confusing anyone in the process.
Zach said:
@Simon: Obviously I have no insight into the backend of this application. That said, the filtering that Kayak is may be / could be done in the browser, requiring no changes to the original data fetching. At least, that is how we've done it previously: fetch a broad result, narrow within the browser. As for SC14, I don't have access to it (and have heard lots of griping from those who do), so I made the assumption it wasn't game changing.
@Robbin: The Kayak and Farecast experiences are freakishly similar to my eye. Perhaps you can point out where they diverge.
@Jurgen: I'd blame the clutter more on the prominently placed ads rather than the filtering/views functionality.
said:
Add a comment