Improving Spectrum-Based Fault Localization for Spreadsheet Debugging

Spreadsheets often contain faults that are difficult to localize. Spectrum-based Fault Localization (SFL) assists users in the fault localization process by ranking cells by their suspiciousness to contain a fault. Since the ranking of the basic SFL approach is often imprecise, we propose three techniques to improve it, i.e., dynamic cones, grouping, and tie-breaking. We evaluate these techniques with three spreadsheet corpora comprising more than 1,000 faulty spreadsheets of different size and structure. While dynamic cones do not come with large improvements, grouping and tie-breaking do. Grouping has a positive impact on about 50% of the spreadsheets with almost no negative effects. The same holds for tie-breaking, where some of the strategies offer high positive impact while keeping the risk of negative influences low.

[1]  Franz Wotawa,et al.  Mutation-based spreadsheet debugging , 2013, 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW).

[2]  Gregg Rothermel,et al.  Interactive fault localization techniques in a spreadsheet environment , 2006, IEEE Transactions on Software Engineering.

[3]  David Lo,et al.  Extended comprehensive study of association measures for fault localization , 2014, J. Softw. Evol. Process..

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

[5]  Rui Abreu,et al.  Zoltar: a spectrum-based fault localization tool , 2009, SINTER '09.

[6]  Peter Zoeteweij,et al.  An Evaluation of Similarity Coefficients for Software Fault Localization , 2006, 2006 12th Pacific Rim International Symposium on Dependable Computing (PRDC'06).

[7]  Rui AbreuBirgit Using constraints to diagnose faulty spreadsheets , 2015 .

[8]  Janusz W. Laski,et al.  Dynamic Program Slicing , 1988, Inf. Process. Lett..

[9]  Franz Wotawa,et al.  Avoiding, finding and fixing spreadsheet errors - A survey of automated approaches for spreadsheet QA , 2014, J. Syst. Softw..

[10]  G. Rothermel,et al.  An empirical study of fault localization for end-user programmers , 2005, ICSE.

[11]  Martin Erwig,et al.  Mutation Operators for Spreadsheets , 2009, IEEE Transactions on Software Engineering.

[12]  D. Jannach,et al.  Toward model-based debugging of spreadsheet programs , 2010 .

[13]  Martin Erwig,et al.  GoalDebug: A Spreadsheet Debugger for End Users , 2007, 29th International Conference on Software Engineering (ICSE'07).

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

[15]  Xiaofeng Xu,et al.  Ties within Fault Localization rankings: Exposing and Addressing the Problem , 2011, Int. J. Softw. Eng. Knowl. Eng..

[16]  Andrej Bregar Complexity Metrics for Spreadsheet Models , 2008, ArXiv.

[17]  Dianxiang Xu,et al.  Towards Better Fault Localization: A Crosstab-Based Statistical Approach , 2012, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews).

[18]  Arie van Deursen,et al.  Detecting code smells in spreadsheet formulas , 2011, 2012 28th IEEE International Conference on Software Maintenance (ICSM).

[19]  Rui Abreu,et al.  On the empirical evaluation of similarity coefficients for spreadsheets fault localization , 2014, Automated Software Engineering.

[20]  Gregg Rothermel,et al.  The EUSES spreadsheet corpus: a shared resource for supporting experimentation with spreadsheet dependability mechanisms , 2005, ACM SIGSOFT Softw. Eng. Notes.

[21]  Rui Abreu,et al.  On the Empirical Evaluation of Fault Localization Techniques for Spreadsheets , 2013, FASE.

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

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

[24]  Franz Wotawa,et al.  Why Does my Spreadsheet Compute Wrong Values? , 2014, 2014 IEEE 25th International Symposium on Software Reliability Engineering.

[25]  Mary Jean Harrold,et al.  Empirical evaluation of the tarantula automatic fault-localization technique , 2005, ASE.

[26]  Rui Abreu,et al.  Generation of Relevant Spreadsheet Repair Candidates , 2014, ECAI.