Goal-directed debugging of spreadsheets

We present a semi-automatic debugger for spreadsheet systems that is specifically targeted at end-user programmers. Users can report expected values for cells that yield incorrect results. The system then generates change suggestions that could correct the error. Users can interactively explore, apply, refine, or reject these change suggestions. The computation of change suggestions is based on a formal inference system that propagates expected values backwards across formulas. The system is fully integrated into Microsoft Excel and can be used to automatically detect and correct various kinds of errors in spreadsheets. Test results show that the system works accurately and reliably.

[1]  Jing Jin,et al.  An explanation-based, visual debugger for one-way constraints , 2004, UIST '04.

[2]  Brad A. Myers,et al.  Designing the whyline: a debugging interface for asking questions about program behavior , 2004, CHI.

[3]  Martin Erwig,et al.  Automatic generation and maintenance of correct spreadsheets , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[4]  Gregg Rothermel,et al.  End - User Software Engineering with Assertions , 2002, ICSE 2002.

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

[6]  Eugene Creswick,et al.  Strategies and behaviors of end-user programmers with interactive fault localization , 2003, IEEE Symposium on Human Centric Computing Languages and Environments, 2003. Proceedings. 2003.

[7]  Martin Erwig,et al.  Header and Unit Inference for Spreadsheets Through Spatial Analyses , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[8]  Gregg Rothermel,et al.  A methodology for testing spreadsheets , 2001, TSEM.

[9]  Margaret M. Burnett,et al.  Garbage in, garbage out? An empirical look at oracle mistakes by end-user programmers , 2005, 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05).

[10]  Gregg Rothermel,et al.  Automated test case generation for spreadsheets , 2002, ICSE '02.

[11]  Margaret M. Burnett,et al.  Adding Apples and Oranges , 2002, PADL.

[12]  Shriram Krishnamurthi,et al.  A type system for statically detecting spreadsheet errors , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[13]  Roland Mittermeir,et al.  Finding high-level structures in spreadsheet programs , 2002, Ninth Working Conference on Reverse Engineering, 2002. Proceedings..

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

[15]  Roland Mittermeir,et al.  Spreadsheet Debugging , 2003, ArXiv.