i-nth logo


Rui Abreu, Birgit Hofer, Alexandre Perez, & Franz Wotawa


Spreadsheets can be viewed as a highly flexible programming environment for end users. Spreadsheets are widely adopted for decision making and may have a serious economical impact for the business. However, spreadsheets are staggeringly prone to errors. Hence, approaches for aiding the process of pinpointing the faulty cells in a spreadsheet are of great value.

We present a constraint-based approach, ConBug, for debugging spreadsheets. The approach takes as input a (faulty) spreadsheet and a test case that reveals the fault and computes a set of diagnosis candidates for the debugging problem. Therefore, we convert the spreadsheet and a test case to a constraint satisfaction problem.

We perform an empirical evaluation with 78 spreadsheets from different sources, where we demonstrate that our approach is light-weight and efficient. From our experimental results, we conclude that ConBug helps end users to pinpoint faulty cells.


Example from EUSES spreadsheet corpus
Example from EUSES spreadsheet corpus

This example spreadsheet, from the EUSES spreadsheet corpus, contains a formula error. It is used to illustrate the basic concepts of ConBug.


2015, Software Quality Journal, Volume 23, Issue 2, June, pages 297-322

Full article

Using constraints to diagnose faulty spreadsheets