Abstract:
Spreadsheet languages, which include commercial spreadsheets and various research systems, have proven to be flexible tools in many settings. Research shows, however, that spreadsheets often contain faults. This thesis presents an integrated testing and fault localization methodology for spreadsheets. This methodology allows spreadsheet developers to engage in modeless development, testing and debugging activities. Furthermore, we provide an interface to our methodology that does not require an understanding of testing and debugging theory. To accomplish this, we introduce the notion of fault likelihood: the likelihood that a given cell contains a fault that contributes to an known failure in the spreadsheet. To estimate fault likelihood we present five properties that we feel should govern its behavior. We then discuss our implementation of this methodology and illustrate its use.