i-nth logo

Authors

Rui Abreu, Jacome Cunha, Joao Paulo Fernandes, Pedro Martins, Alexandre Perez, & Joao Saraiva

Abstract

Despite being staggeringly error prone, spreadsheets are a highly flexible programming environment that is widely used in industry. In fact, spreadsheets are widely adopted for decision making, and decisions taken upon wrong (spreadsheet-based) assumptions may have serious economical impacts on businesses, among other consequences.

This paper proposes a technique to automatically pinpoint potential faults in spreadsheets. It combines a catalog of spreadsheet smells that provide a first indication of a potential fault, with a generic spectrum-based fault localization strategy in order to improve (in terms of accuracy and false positive rate) on these initial results.

Our technique has been implemented in a tool which helps users detecting faults. To validate the proposed technique, we consider a well-known and well-documented catalog of faulty spreadsheets.

Our experiments yield two main results:

  • We were able to distinguish between smells that can point to faulty cells from smells and those that are not capable of doing so.
  • We provide a technique capable of detecting a significant number of errors: two thirds of the cells labeled as faulty are in fact (documented) errors.

Sample

Spreadsheet analysis framework
Spreadsheet analysis framework

Overview of spreadsheet analysis framework used to automatically locate potential faults in spreadsheets by combining a catalog of smells with a spectrum-based fault localization strategy.

Publication

2016, Working paper

Full article

Combining smells and fault localization in spreadsheets