Strategies and behaviors of end-user programmers with interactive fault localization

End-user programmers are writing an unprecedented number of programs, due in large part to the significant effort put forth to bring programming power to end users. Unfortunately, this effort has not been supplemented by a comparable effort to increase the correctness of these often faulty programs. To address this need, we have been working towards bringing fault localization techniques to end users. In order to understand how end users are affected by and interact with such techniques, we conducted a think-aloud study, examining the interactive, human-centric ties between end-user debugging and a fault localization technique. Our results provide insights into the contributions such techniques can make to an interactive end-user debugging process.

[1]  Gregg Rothermel,et al.  End-user software engineering with assertions in the spreadsheet paradigm , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[2]  John T. Stasko,et al.  Visualization of test information to assist fault localization , 2002, ICSE '02.

[3]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[4]  John D. Gould,et al.  An experimental study of people creating spreadsheets , 1987, TOIS.

[5]  Carl Martin Allwood,et al.  Error Detection Processes in Statistical Problem Solving , 1984, Cogn. Sci..

[6]  Y. Y. Cheung,et al.  On program dicing , 1997 .

[7]  Gregg Rothermel,et al.  Slicing spreadsheets: an integrated methodology for spreadsheet testing and debugging , 1999, DSL '99.

[8]  Margaret M. Burnett,et al.  End-user software visualizations for fault localization , 2003, SoftVis '03.

[9]  Bonnie A. Nardi,et al.  Twinkling Lights and Nested Loops: Distributed Problem Solving and Spreadsheet Development , 1991, Int. J. Man Mach. Stud..

[10]  Rob Miller,et al.  Outlier finding: focusing user attention on possible errors , 2001, UIST '01.

[11]  David Canfield Smith,et al.  Cocoa at the Visual Programming Challenge 1997 , 1998, J. Vis. Lang. Comput..

[12]  Margaret M. Burnett,et al.  Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm , 2001, Journal of Functional Programming.

[13]  Henry Lieberman,et al.  ZStep 95: A Reversible, Animated Source Code Stepper , 1997 .

[14]  Gregg Rothermel,et al.  Harnessing curiosity to increase correctness in end-user programming , 2003, CHI '03.

[15]  Gregg Rothermel,et al.  What you see is what you test: a methodology for testing form-based visual programs , 1998, Proceedings of the 20th International Conference on Software Engineering.

[16]  Jorma Sajaniemi Modeling Spreadsheet Audit: A Rigorous Approach to Automatic Visualization , 2000, J. Vis. Lang. Comput..

[17]  J.Steve Davis Tools for spreadsheet auditing , 1996, Int. J. Hum. Comput. Stud..

[18]  Alan F. Blackwell,et al.  First steps in programming: a rationale for attention investment models , 2002, Proceedings IEEE 2002 Symposia on Human Centric Computing Languages and Environments.

[19]  Raymond R. Panko,et al.  What we know about spreadsheet errors , 1998 .

[20]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[21]  Bay-Wei Chang,et al.  Fluid visualization of spreadsheet structures , 1998, Proceedings. 1998 IEEE Symposium on Visual Languages (Cat. No.98TB100254).