Taupe: Visualizing and analyzing eye-tracking data

  • Authors:
  • Benoít De Smet;Lorent Lempereur;Zohreh Sharafi;Yann-Gaël Guéhéneuc;Giuliano Antoniol;Naji Habra

  • Affiliations:
  • Research Center in Information Systems Engineering, FUNDP, Namur, Belgium;Research Center in Information Systems Engineering, FUNDP, Namur, Belgium;Ptidej Team, ícole Polytechnique de Montréal, Québec, Canada;Ptidej Team, ícole Polytechnique de Montréal, Québec, Canada;Soccer Lab., ícole Polytechnique de Montréal, Québec, Canada;Research Center in Information Systems Engineering, FUNDP, Namur, Belgium

  • Venue:
  • Science of Computer Programming
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program comprehension is an essential part of any maintenance activity. It allows developers to build mental models of the program before undertaking any change. It has been studied by the research community for many years with the aim to devise models and tools to understand and ease this activity. Recently, researchers have introduced the use of eye-tracking devices to gather and analyze data about the developers' cognitive processes during program comprehension. However, eye-tracking devices are not completely reliable and, thus, recorded data sometimes must be processed, filtered, or corrected. Moreover, the analysis software tools packaged with eye-tracking devices are not open-source and do not always provide extension points to seamlessly integrate new sophisticated analyses. Consequently, we develop the Taupe software system to help researchers visualize, analyze, and edit the data recorded by eye-tracking devices. The two main objectives of Taupe are compatibility and extensibility so that researchers can easily: (1) apply the system on any eye-tracking data and (2) extend the system with their own analyses. To meet our objectives, we base the development of Taupe: (1) on well-known good practices, such as design patterns and a plug-in architecture using reflection, (2) on a thorough documentation, validation, and verification process, and (3) on lessons learned from existing analysis software systems. This paper describes the context of development of Taupe, the architectural and design choices made during its development, and its documentation, validation and verification process. It also illustrates the application of Taupe in three experiments on the use of design patterns by developers during program comprehension.