An Empirical Study on the Patterns of Eye Movement during Summarization Tasks

Eye movement patterns are the order in which keywords or sections of keywords are read. These patterns are an important component of how programmers read source code. One strategy for determining how programmers perform summarization tasks is through eye tracking studies. These studies examine where people focus their attention while viewing text or images. In this study, we expand on eye tracking analysis to determine the eye movement patterns of programmers. We begin the study with a qualitative exploration of the eye movement patterns used by 10 professional programmers from an earlier study. We then use what we learned qualitatively to perform a quantitative analysis of those patterns. We found that all ten of the programmers followed nearly identical eye movement patterns. These patterns were analogous to eye movement patterns of reading natural language.

[1]  H. Deubel,et al.  Current Oculomotor Research , 1999, Springer US.

[2]  D. Wolfe,et al.  Nonparametric Statistical Methods. , 1974 .

[3]  Dennis Mancl,et al.  Understanding and addressing the essential costs of evolving systems , 2000, Bell Labs Technical Journal.

[4]  John Mariani,et al.  Opportunistic Reuse: Lessons from Scrapheap Software Development , 2008, CBSE.

[5]  Arun Lakhotia,et al.  Understanding someone else's code: Analysis of experiences , 1993, J. Syst. Softw..

[6]  Scott R. Klemmer,et al.  Example-centric programming: integrating web search into the development environment , 2010, CHI.

[7]  Markku Tukiainen,et al.  Temporal eye-tracking data: evolution of debugging strategies with multiple representations , 2008, ETRA.

[8]  Sidney K. D'Mello,et al.  It's Written on Your Face: Detecting Affective States from Facial Expressions while Learning Computer Programming , 2014, Intelligent Tutoring Systems.

[9]  Markku Tukiainen,et al.  An eye-tracking methodology for characterizing program comprehension processes , 2006, ETRA.

[10]  Douglas A. Wolfe,et al.  Nonparametric Statistical Methods , 1973 .

[11]  Akito Monden,et al.  Analyzing individual performance of source code review using reviewers' eye movement , 2006, ETRA.

[12]  Martha E. Crosby,et al.  How do we read algorithms? A case study , 1990, Computer.

[13]  Lori Pollock,et al.  Automatic generation of descriptive summary comments for methods in object-oriented programs , 2012 .

[14]  Lori L. Pollock,et al.  Generating Parameter Comments and Integrating with Method Summaries , 2011, 2011 IEEE 19th International Conference on Program Comprehension.

[15]  Gerald L. Lohse,et al.  Consumer Eye Movement Patterns on Yellow Pages Advertising , 1997 .

[16]  Lori L. Pollock,et al.  Automatic generation of natural language summaries for Java classes , 2013, 2013 21st International Conference on Program Comprehension (ICPC).

[17]  Thomas Leich,et al.  Understanding understanding source code with functional magnetic resonance imaging , 2014, ICSE.

[18]  Brad A. Myers,et al.  A framework and methodology for studying the causes of software errors in programming systems , 2005, J. Vis. Lang. Comput..

[19]  Don R. Swanson,et al.  Searching Natural Language Text by Computer , 1960 .

[20]  Brad A. Myers,et al.  An Exploratory Study of How Developers Seek, Relate, and Collect Relevant Information during Software Maintenance Tasks , 2006, IEEE Transactions on Software Engineering.

[21]  Elliot Soloway,et al.  Mental models and software maintenance , 1986, J. Syst. Softw..

[22]  Jonathan I. Maletic,et al.  An eye-tracking study on the role of scan time in finding source code defects , 2012, ETRA.

[23]  Håkan Burden,et al.  Natural language generation from class diagrams , 2011, MoDeVVa.

[24]  K. Holmqvist,et al.  Entry points and reading paths on newspaper spreads: comparing a semiotic analysis with eye-tracking measurements , 2006 .

[25]  Elmar Jürgens,et al.  Quality analysis of source code comments , 2013, 2013 21st International Conference on Program Comprehension (ICPC).

[26]  Rainer Koschke,et al.  How do professional developers comprehend software? , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[27]  Ralph Radach,et al.  The Return Sweep in Reading , 1999 .

[28]  Collin McMillan,et al.  Improving automated source code summarization via an eye-tracking study of programmers , 2014, ICSE.

[29]  Ben Shneiderman,et al.  Syntactic/semantic interactions in programmer behavior: A model and experimental results , 1979, International Journal of Computer & Information Sciences.

[30]  Senthil Mani,et al.  AUSUM: approach for unsupervised bug report summarization , 2012, SIGSOFT FSE.

[31]  Robert J. Walker,et al.  Systematizing pragmatic software reuse , 2012, TSEM.