FareBrowser: An Interactive Visualization Tool

for Finding Low Airline Fares


Bill Shapiro and Hench Qian
Department of Computer Science
University of Maryland
{billshap, qian}@cs.umd.edu

Abstract

In this paper we describe an airline fare visualization tool, called FareBrowser,  for finding the cheapest round-trip fare that matches the user's travel constraints.  FareBrowser allows users to browse fares between two cities and filter out unavailable and inappropriate flight combinations to focus on the best ones. We also present the results of a small user study where we compare the performance and ease-of-use of FareBrowser to the Best Fare Finder visualization tool available on Travelocity.com's website.

Introduction

In the past, airline reservations were made either through travel agents or a particular airline.  With the emergence of online travel sites, many individuals are now purchasing airline tickets over the internet.  Finding cheap airline tickets on the internet remains a formidable task.  In particular, budget conscious travelers may want to choose their travel dates, in part,  based on which dates the cheapest fares are offered.  However, most travel sites require that users specify the exact dates and times they wish to travel.  Additionally, the complicated fare structure employed by airlines makes finding inexpensive flights nearly impossible without a sophisticated query mechanism that presents fares in a manner comprehensible to the user.

In this paper we describe an airline fare visualization tool, called FareBrowser,  for finding the cheapest round-trip fare that matches the user's travel constraints.  FareBrowser allows users to browse the cheapest fares between two cities and filter out unavailable and inappropriate flight combinations to focus on the best ones.  FareBrowser presents an overview of available flight combinations for a specified time period (day, week, month, etc.).  The user can then interactively filter the display to arrive at the flights that meet the user's constraints. FareBrowser also provides additional details on demand.  When the user moves their mouse over a particular flight, additional details about the flight are revealed in a separate box.  Additionally, when the user zooms in on the display, additional details about each flight are revealed.

In designing FareBrowser, we attempted to balance two primary objectives.  First, the tool should be simple enough that it can be used by the average internet user with little instruction.  Second, the tool should provide enough functionality that it is capable of effectively handling sophisticated user queries. In order to characterize how well FareBrowser achieves these objectives, we present a user study that compares FareBrowser to the Best Fare Finder visualization tool available on Travelocity.com's web site.
 

Related Work

There has been a significant amount of research on visualization of temporal data [6][7] [10], and a small amount of work on the particular problem of visualizing airline flight schedules.  Timelines are commonly used for visualizing temporal data [2].  LifeLines [9] is an environment for visualizing events in a person's life (e.g., medical patient records). The visualization consists of facets of a persons life, each of which may contain multiple timelines.  A common time scale is provided at the top of the screen.  Events are displayed as small boxes or icons and retinal properties are used to distinguish different types of events. There are also several productivity packages, such as Microsoft Project, that employ timelines to visualize schedules.

Casner and Larkin [4] [5] compare several different methods for visualizing airline flight schedules. They argue that graphical presentations are more effective than tabular ones and present a supporting user study. However, they only discuss the visualization of flight schedules for a single day. Nonetheless, they provide several techniques for graphically encoding flight information that are more broadly useful. Norman [8] also briefly discusses techniques for visualizing airline flight information.

Dynamic queries are used in FareBrowser to  allow users to interactively narrow the flight search space.  HomeFinder [11] and FilmFinder [1] are two visualization tools that provide early examples of how dynamic queries can be used to dynamically filter out irrelevant data through the use of sliders or selection of buttons.

There are several travel sites on the web that have tools for finding airline flights, including Expedia.com and Travelocity.com. The most common tool for finding airline flights consists of a form, where the user specifies the dates on which she wishes to travel and the preferred times and possibly airlines.  A database is queried with the provided information and a list of flights that match the criteria is returned, often sorted by price. The user may also be presented with the option of listing flights based on itinerary or price, however, only flights for the specified dates are returned.  These tools are relatively efficient if the user have strict constraints on travel dates.  However, distinguishing between the results would still be facilitated by presenting them in a graphical form.

Travelocity.com also features a tool called Best Fare Finder for finding the cheapest round-trip fare between two cities when the travel dates are flexible.  The primary drawback to this tool is that, because it is menu-driven, it is very tedious to use.  The user must first select the fare she wants from a list of fares and then see if departing flights are available in the desired date range.  Next she must check if returning flights are available during the desired dates.  Finally, she must choose the departing and returning flight times.  If acceptable dates and/or times are not available, they must start the whole process over with another fare.  If available flights are scarce (as is the case close to holidays), a user may need to search many fares to find one that meets their requirements.

The FareBrowser Interface

Our goal in developing FareBrowser is to allow users to quickly locate the cheapest flight that matches their travel constraints. Consequently, our design emphasizes price.  Figure 1 shows the FareBrowser interface. The interfaces is divided into two frames. The left frame is dominated by horizontal boxes,  outlined in black, that represent round-trip fares. Each fare box contains the name of the airline that offers the fare and the round-trip price.  Additionally, each fare box contains several long white bars that represent the departing and returning flights that are offered within the fare. Each white bar is a timeline, with blue rectangles in a bar representing available departing flights and yellow rectangles representing available returning flights. A common time  scale at the top of the left frame displays the dates corresponding to each timeline and allows the user to change the date range with left and right arrow buttons. A status line at the bottom of the left frame displays the number of fares that were found.

Figure 1: The FareBrowser interface

Figure 1: The FareBrowser interface

The top section of the right frame, called the control panel,  contains menus for selecting source and destination cities.  The user's selection is submitted with the "Find Fares" button just below the menus.

Zooming

A zoom slider in the control panel allows the user to increase or decrease the number of days shown.  FareBrowser is capable of effectively showing flight availability for up to two months in a single view as shown in Figure 2.  The time scale at the top adjusts to different zoom values by increasing or decreasing the density of dates displayed in order to prevent the time scale from becoming overly cluttered.

Figure 2: FareBrowser showing the lowest fares for a two month period

Figure 2: FareBrowser showing the lowest fares for a two month period

FareBrowser uses an approach similar to that used in the Pad++ [3] Zoomable User Interface, where additional details are revealed as the user zooms in.  In particular, when the user zooms in to the single day view in FareBrowser, additional details about each available flight are graphically presented.  Figure 3 shows FareBrowser's day view1.  The time scale is changed to hours and the position of each available flight represents its departing and arrival times. Layovers are encoded by white space between flight segments.  The size of the white space represents the length of the layover and the lengths of the yellow and blue rectangles represent the lengths of each flight segment. Using this encoding, a user can quickly distinguish between direct flights and flights with layovers, as well as long flights vs. short flights.

Figure 3: Additional details are revealed when the user zooms in to the day view

Figure 3: Additional details are revealed when the user zooms in to the day view

Dynamic Filtering

A user may obtain further details about a flight by moving the mouse over a flight bar. Detailed flight information is then displayed in the Flight Information Box on the lower right. To select a flight on a particular day, the user clicks on a rectangle representing an available flight.  When the user selects an available departing flight, for example, FareBrowser dynamically filters available flights by graying out all flights that are no longer applicable, given the user's selection.  Figure 4 shows how available flights are filtered when the user selects a departing flight. Currently, only simple filters exist.  For example, all return dates before the departing date are grayed out since one cannot return before leaving.  Additionally, flights from fares other than the one selected are invalidated because both the departing and returning flight must be from the same fare.  If the user clicks again on the selected flight instance or presses the clear button, the flight is deselected and the grayed out portions are returned to their original state.

Figure 4: Dynamically filtering available fares based on the user's selection

Figure 4: Dynamically filtering available fares based on the user's selection

The filtering mechanism can be used to effectively express additional constraints.  For example, some combinations of departing flights and returning flights may not be permitted for a given fare.  These restrictions may be extremely complicated, but can easily be conveyed to the user by graying out flights based on user selections. The current FareBrowser prototype does not enforce these constraints.

Finally, buttons at the bottom of the right frame allow users to clear and purchase the selected itinerary, respectively.

Overview Capability

The number of fares shown in a single view depends on the number of flights contained in each fare.  At the current size, FareBrowser displays 35 flights in a view.  If the zoom is set to the maximum value of two months (56 days), then FareBrowser can display the availability of 1,960 flight instances in a single view.  It is often true that not all fares will fit in a single view and the user would be required to scroll in order to view additional fares.  However, because fares are sorted by price, the user can scan the display from top to bottom to find the first available flight that matches his criteria.  The bargain-hunting user would only need to scroll if the visible fares did not contain any acceptable flights.
 

Implementation

FareBrowser was implemented in Java to run as an applet or application. It heavily uses the Swing component library from Sun.  The reader is encouraged to try a demonstration applet that uses real data for selected flights from November, 29 1999.
 

User Study

A simple user study was performed with eight subjects to evaluate the ease-of-use and performance in solving common and sophisticated tasks of FareBrowser. We compared FareBrowser with  Travelocity.com's Best Fare Finder (described above), which is available at http://www.travelocity.com.

Hypotheses

The study tested the following hypotheses:
  1. Users will be able to complete simple tasks in approximately the same amount of time and with few or no errors when using FareBrowser as compared to using Fare Finder.
  2. Users will be able to complete complex tasks in less time and with fewer errors using FareBrowser as compared to using Fare Finder.
  3. Users will be able to learn to use FareBrowser effectively in a short time.
The first hypothesis states that FareBrowser should not perform significantly worse than Fare Finder for simple tasks.  A simple task may include finding the cheapest flight when the travel dates are fixed.  The second hypotheses is that FareBrowser will perform significantly better than Fare Finder for complicated tasks.  An example of a complicated task would be finding the cheapest fare when the travel dates are flexible.  Finally, the third hypothesis is that FareBrowser does not have such a steep learning curve that users will require more than a few minutes to learn to use it effectively.

Subjects

Eight undergraduates at the University of Maryland participated in the study. Their backgrounds are indicated in Table 1.
 
User Major
1 Non-technical
2 Engineering
3 Non-technical
4 Engineering
5 Non-technical
6 Engineering
7 Non-technical
8 Computer Science
Table 1: User backgrounds





One half of the students in the study were technical (either Computer Science or Engineering majors) and one half were non-technical.  We felt that technical users may be more comfortable using a computer and are more likely to be familiar and experienced with analyzing graphs.

Procedure

Each user was presented a set of specific instructions on the usage of FareBrowser and FareFinder and were given up to ten minutes to familiarize themselves with the systems. Then, each user was presented with the following set of tasks:
  1. Find (bring up the purchase screen of) the CHEAPEST fare from AUS to ATL departing on December 18th and returning on January 3rd.
  2. Find (bring up the purchase screen of) the CHEAPEST fare from ATL to BWI departing between December 18th and 22nd and returning between January 3rd and 7th.
  3. Find (bring up the purchase screen of) the CHEAPEST fare from BWI to AUS departing between December 28th and 29nd and returning between January 3rd and 4th.
  4. Find (bring up the purchase screen of) the CHEAPEST fare from GTR to ATL departing on December 28th and returning on January 3rd.
Task 1 was designed to be a simple and straight-forward task to get the user started. Task 2 was designed as a task to find fares given a range of dates between a source-destination pair with high flight availability, meaning that the user should not have to search many fare to find one that is available. Task 3 was designed as a task to find the cheapest fare when both departure and return dates are flexible, but availability is low. When availability is low, the user is required to search through several flights before finding availability within the desired date ranges.  Task 4 is very similar to task 1, but it is expected to better reflect the performance of an experienced user.

Users 1-4 were asked to perform tasks 1 and 2 with FareBrowser and tasks 3 and 4 with FareFinder. Users 5-8 were asked to perform tasks 1 and 2 with FareFinder and tasks 3 and 4 with FareBrowser. The tasks were performed in order from 1 to 4, and the elapsed time and fare found for each task were recorded. An equal number of technical and non-technical users were assigned to each of the two groups.

Results


The results of the study are shown in Table 2, and a statistical analysis is shown in Table 3. All values are in seconds. FareBrowser is abbreviated FB and FareFinder is abbreviated FF.
 

Task User 1 User 2 User 3 User 4 User 5 User 6 User 7 User 8
FB FF FB FF FB FF FB FF FB FF FB FF FB FF FB FF
1 440   70   220   95     150   245   175   145
2 150   70   75   60     50   85   75   65
3   (x)65   105   (x)300   125 130   60   130   40  
4   60   55   75   100 125   60   75   35  
Table 2: Results from user study (in seconds)
(x) - indicates incorrect (not cheapest) fare


Task FareBrowser FareFinder
Mean Standard
Deviation
90% Conf.
Interval
Mean Standard
Deviation
90% Conf.
Interval
1 206 146 (34, 378) 179 40 (132, 226)
2 89 36 (47, 131) 69 13 (54, 84)
3 90 41 (42, 138) 149 90 (43, 255)
4 74 33 (35, 113) 72 18 (51, 93)
Table 3: Statistical analysis of results (in seconds)

Task 1

Task 1, although simple, required the longest time to complete (with the exception of users 2 and 4). This can be attributed to the users' unfamiliarity with the systems, problem domain, and task demands. With FareBrowser, the main confusion was that a departing flight and a returning flight from the same fare box must be selected. Apparently, the fare box concept is not obvious in FareBrowser to some users (users 1 and 3). However, users 5-8, after using FareFinder first, had no such confusions. Another confusion was that some users did not immediately realize that fares were sorted by price, and had to look at the interface for a moment or re-read the instructions to figure it out. In all, the users were able to arrive at the cheapest fare, but the step-by-step procedure of FareFinder was more intuitive.

Task 2

For task 2, the cheapest fare was among the first fares examined, so the two systems had similar performances, as expected.

Task 3

For task 3, FareBrowser performed better on average than FareFinder. In FareBrowser, if no available flights are found in the desired date range, the user need only scroll down to find the first available flight. In FareFinder, however, users had to follow each listed airfare to see if a flight was available for the desired date range. Due to the low availability of the flight, the user was required to go through several fares before an available flight was found. Two users (users 1 and 3) became frustrated and began skipping fares, ultimately choosing incorrect (not cheapest) fares.

Task 4

As expected, users performed much better on task 4 than task 1 even though they were equivalent in terms of difficulty, regardless of the tool used. This showed that experience can significantly improve performance. Task 4 suggests that FareBrowser and FareFinder are comparable in the basic case of finding flights when the departing and returning dates are known.

Qualitative Conclusions

There was a relatively high variance in the performance of the FareBrowser users. This indicates that FareBrowser is somewhat complex, and different users have varying success. In general, users from a technical background (users 2, 4, 6, and 8) had more success than users from a non-technical background (users 1, 3, 5, and 7). For FareFinder, however, the variance was lower, indicating that FareFinder was easier to understand for all users.

The zooming feature in FareBrowser was not well-utilized. The default view showed two weeks of flights at a time. To see flights outside the current view, the user could either scroll to the next two weeks or zoom out to expand the visible date range. While performing the tasks, the users often encountered situations where the departing date was visible, but the returning flight was not, or vice versa. Most users opted to scroll back and forth between the visible date ranges. The two users (2 and 8) that did use the zooming feature performed best. Some of the users had zoomed while experimenting before starting the tasks, but the two that worked with a two week date range (users 1 and 5) throughout the study had the worst performance. These results give a strong indication that performance on FareBrowser is strongly enhanced when both the departing date and the returning date are visible.

User comparisons of the two systems were mixed as well. Most users indicated that they felt they worked faster in FareBrowser than FareFinder because of the continuity, with everything in one screen. Some users (mostly the users with technical backgrounds) liked the fact that FareBrowser displayed all of the data, and put them in control of picking a fare. Other users (mostly the users with non-technical backgrounds) felt FareBrowser was too complex and not as straight-forward as FareFinder. They felt it relied too heavily on the user's ability to read graphs.

Quantitative Conclusions

We performed unpaired t-tests for each of the tasks in order to determine if the completion tasks were statistically distinguishable.  However, not surprisingly, given the sample side none of the results were statistically significant.

Limitations

There were many potential limitations in this study. One obvious limitation is the small amount of data due to time constraints. Obviously, stronger conclusions can be made if more data was collected. Not only would more tasks give a better comparison of FareBrowser and FareFinder, but also a better indication of the respective "learning curves" and the performance of an experienced user.

Another potential limitation is the order in which the tasks were performed. Our results indicate that performance for tasks 2 and 3 using FareBrowser was similar while task 3 was expected to be more difficult. However, this is not a fair comparison since user knowledge at the time the tasks were performed was different. Task 2 was done with some experience with FareBrowser, but no experience with FareFinder. Task 3 was done with some experience with FareFinder, but no experience with FareBrowser. If the order of the tasks were shuffled, there would be an opportunity to give a fairer evaluation of FareBrowser on tasks 2 and 3 with similar user knowledge.

Also, as the study was being performed, it became obvious that the usage instructions given were not sufficient, especially for FareBrowser. This led to the struggles in task 1 as documented above. It also creates some uncertainty as to the level of understanding the user had while performing the other tasks.

Finally, performance issues of FareBrowser and FareFinder biased overall times. Due to time constraints in development, FareBrowser has many performance issues. Slow response in scrolling caused several impatient users to click many times and over-scroll, wasting precious time, and some minor bugs caused a few other confusions. FareFinder, of course, is on the internet. Its performance is partly influenced by internet traffic. Since this study was done at different times of the day, variance in internet delay may have contributed to some discrepancies in results.

Overall, the user study suggested that although it is more difficult to learn, FareBrowser is at least comparable with FareFinder for basic tasks, and can be more effective with finding fares given date ranges.
 

Conclusion and Future Work

Finding the cheapest airline fare is much more difficult when the user is flexible with regard to travel constraints.  FareBrowser is proposed as a visualization tool that uses a fare overview, zooming, details on demand and dynamic filtering to quickly focus on the best available fare.  The user study suggests that the simple menu-driven approach used in Travelocity's Fare Finder is initially easier to understand, but experienced users can perform complicated tasks  more efficiently using FareBrowser.

The user study also suggested several ways in which FareBrowser can be improved.  Step-by-step instructions for using FareBrowser would be extremely useful for guiding the novice user.  Additionally, The zooming capability was not utilized by most of the participants in the study, although it was very useful when used.  Zooming may be more intuitive if it is integrated into the time scale component, which already contains the arrow buttons for changing dates.

There are several additional features that could improve the range of functionality offered by FareBrowser.  First, there is much room for improvement in the dynamic filtering facility.  Currently, filtering is based only on user flight selection.  It would be useful to add sliders that allowed users to narrow the search space by specifying the ranges of acceptable departure and return days, number of layovers, length of flights, and possibly other attributes. Double-box sliders like those used in HomeFinder [7] and FilmFinder [1] that allow users to specify both upper and lower thresholds on attribute values would be an effective way to implement additional filtering.

It may also be useful to implement a more compact view of a fare.  Currently, each flight that is available with a fare is shown.  A less detailed overview could simply show the dates on which a departing or returning flight, as opposed to providing the information separately for each departing and returning flight.  This would significantly increase the number of fares that would be visible on a single view.  In the case where availability is scarce, the user could quickly search the fares from top to bottom until she found a fare that matched her criteria.  She could then zoom in on that particular fare to see the individual flights offered on the desired dates.

The mechanism for specifying the displayed date range can be improved.  Currently, if the zoom is set to a week view, for example, the user can move ahead or back by a week at a time, but cannot center the date range on a particular date.  It would be useful for the user to center the displayed dates on the range that she is considering. One possible solution is to use a scroll bar instead of arrow buttons to change the date range.

Finally, significant improvements can be made in speed/responsiveness, space utilization and usability through incremental refinement of the interface.
 

Work Cited

1
Ahlberg, C. and Shneiderman, B. Visual Information Seeking: Tight coupling of dynamic query filters with starfield displays. Proc. of ACM CHI94 Conference (April 1994), 313-317.
2
Allen, R.B. Interactive timelines as information systems interfaces. Symposium on Digital Libraries. Japan, August 1995.
3
Bederson, B.B., Hollan, James D. Pad++: A Zooming Graphical Interface for Exploring Alternate Interface Physics, Proceedings of UIST '94, (Marina del Rey, California, November 2-4, 1994), 17- 26, ACM, New York.
4
Casner, S. and Larkin, J.  Cognitive Efficiency Considerations for Good Graphic Design. Congnitive Science Society Proceedings. August, 1999.
5
Casner, S. and Larkin, J. Drawing Pictures Worth Ten Thousand Words: An Information Processing Model of the Design and Use of Visual Displays of Information. Cognitive Science. January, 1990.
6
Hibino, S., Rundensteiner, E. A. User interface evaluation of a direct manipulation temporal visual query language. Proc. ACM Multimedia 97 Conference, ACM, New York (1997), 99-107.
7
Mackinlay, J.D., Robertson, G.G., Card, S.K. The Perspective Wall: detail and context smoothly integrated. In Proceedings of SIGCHI '91 , (1991) 173-179, ACM, New York.
8
Norman, D. Things that Make us Smart. Defending Human Attributes in the Age of the Machine. Addisson-Wessley, 1993. pp. 55-60.
9
Plaisant, C., Milash, B., Rose, A., Widoff, S. and Shneiderman, B. Lifelines: Visualizing Personal Histories. CHI'96 Conference Proceedings. NY:ACM Press, 221-227.
10
Sanderson, P., Scott, J., Johnston, T., Mainzer, J., Watanabe, L., and James, J. MacSHAPA and the enterprise of exploring sequential data analysis (ESDA). Int. Journal of Man-Machine Studies 41 (1992), 633-681.
11
Shneiderman, B. Dynamic queries for visual information seeking. IEEE Software 11, 6 (1994), 70-77.

 


1
Flight lengths are distorted by differences in time zones.  The current prototype does not account for time changes that result from crossing time zones.

 


William Shapiro

Last modified: Tue Nov 30 15:32:28 EST 1999

Web Accessibility