Debugging of spreadsheet programs
Debugging of spreadsheet programs
DACH: Österreich - Deutschland - Schweiz
Disciplines
Computer Sciences (100%)
Keywords
-
End-User Debugging,
Model-Based Debugging,
Spreadsheets,
End-User Programming
Spreadsheets are the most successful example of the End User Programming approach to software development. Today, spreadsheet applications, e.g., based on Microsoft Excel, can be found nearly everywhere in companies and are used for a variety of purposes. Studies showed for example that in over 80% of the examined companies spreadsheets are used for financial reporting. Furthermore, companies often use dozens or even hundreds of spreadsheet applications which often tend to be large and complex comprising hundreds or even thousands of formulas. Despite the fact that in many cases business-critical decisions depend on spreadsheets, a complete lack of quality control measures for this type of software applications can be observed in many companies. Not surprisingly, spreadsheets - which are usually developed by non-programmers - contain errors of various types. In some studies, researchers found at least one error in every single spreadsheet they analyzed. However, when business decisions are based on spreadsheets, such errors can lead to a significant financial loss or to other business risks as reported by the European Spreadsheet Risk Interest Group. Over the last decades, academics from different fields as well as industry have produced a rich set of methods, techniques and tools to ensure or improve the quality of traditional software artifacts. Only in recent years, the question of how to improve the quality of End User Programs and in particular spreadsheets has gained more attention in research and in practice. These developments led to a number of first proposals ranging, e.g., from process-related measures over visualization and software testing approaches to debugging techniques. In this project, we focus on the debugging stages of the spreadsheet development cycle. Therefore, our goal is to provide the spreadsheet developer with tools that support him or her in identifying the possible problem causes (error localization). These possible causes are called diagnoses and represent subsets of all formulas used in a spreadsheet that should be modified in order to make a spreadsheet application work as expected. In particular, we will analyze and systematically evaluate in which ways various existing approaches to software debugging can be applied, extended or combined to cope with the particularities of spreadsheet debugging. Based on these technical and algorithmic contributions, we aim to develop a classification system that helps us understand which error-spotting techniques are particularly well suited for which types of programs and application settings. Furthermore, we plan to conduct laboratory studies with real users at different stages of the project, in which we want to obtain a better understanding of how and to which extent the participants profit from using the provided debugging tools and how the interaction with an intelligent debugger for end users should be designed.
Spreadsheets are widespread in today`s IT supported society. While spreadsheets are often used as basis for far-reaching decisions, even such important documents are not always error- free. This is demonstrated by a growing list of spreadsheet-related horror stories, collected by the European Spreadsheet Risk Interest Group (ESPRIG). The DEOS project took up this issue and worked on establishing a variety of methods to help users recognize faulty behaviour of spreadsheets as well as to localize the root causes (cells) that are to blame for this behaviour. First, we elaborated on the question of how to design debugging methods to be as little effortful as possible for users, thus motivating and helping users to use such tools. For this purpose, we developed a method to split spreadsheets into consecutive, smaller but logically connected parts that can be individually tested by a user. A user study in Klagenfurt revealed that this approach is more engaging and effective than the usual inspection approach. We also looked into the root causes and different types of spreadsheet errors when regarding specific methods and applications. To that effect, we analysed a collection of mail conversations about a related set of spreadsheets, thereby identifying existing errors in those sheets. As a main result, we established the first publicly available corpus of spreadsheet files that also provides information about the type and location of faults that are contained therein. Such datasets are important for follow-up research work. For example, in our own work, we used this and similar datasets to train machine learning models to predict the likelihood and position of faulty formula cells in spreadsheets. Our first approach in this direction used a limited set of known measures to detect faults., The related research publication was awarded with an ACM SIGSOFT Distinguished Paper Award. Our subsequent work uses a larger collection of measurements and shows even better prediction performance. Lastly, we investigated common structural attributes of spreadsheets and methods to highlight suspicious structures that are based on these insights. We also developed a tool to communicate those structural cues to users and highlight possible issues. This tool, along with further add-ins, data, and other research outcomes is available at the DEOS projects web page, which we set up at www.spreadsheets.ist.tugraz.at. The DEOS project not only established Austria as competence centre for spreadsheet research, but also promoted international cooperation by connecting researchers from different parts of Austria and Germany. It also contributed in the build-up of an independent international community of expertise in spreadsheet research that is working to make spreadsheets easier and more reliable to use for everyone.
- Technische Universität Graz - 66%
- Universität Klagenfurt - 34%
- Dietmar Jannach, Universität Klagenfurt , national collaboration partner
- Kostyantyn Shchekotykhin, Universität Klagenfurt , associated research partner
Research Output
- 144 Citations
- 22 Publications
-
2019
Title On the refinement of spreadsheet smells by means of structure information DOI 10.1016/j.jss.2018.09.092 Type Journal Article Author Koch P Journal Journal of Systems and Software Pages 64-85 Link Publication -
2018
Title Fritz: A Tool for Spreadsheet Quality Assurance DOI 10.1109/vlhcc.2018.8506490 Type Conference Proceeding Abstract Author Koch P Pages 285-286 -
2018
Title Fragment-based spreadsheet debugging DOI 10.1007/s10515-018-0250-9 Type Journal Article Author Jannach D Journal Automated Software Engineering Pages 203-239 Link Publication -
2018
Title Parallel Model-Based Diagnosis DOI 10.1007/978-3-319-63516-3_14 Type Book Chapter Author Shchekotykhin K Publisher Springer Nature Pages 547-580 -
2018
Title Combining spreadsheet smells for improved fault prediction DOI 10.1145/3183399.3183402 Type Conference Proceeding Abstract Author Koch P Pages 25-28 Link Publication -
2016
Title Finding Errors in the Enron Spreadsheet Corpus DOI 10.1109/vlhcc.2016.7739679 Type Conference Proceeding Abstract Author Schmitz T Pages 157-161 -
2016
Title Static Spreadsheet Analysis DOI 10.1109/issrew.2016.8 Type Conference Proceeding Abstract Author Koch P Pages 167-174 -
2016
Title Parallel Model-Based Diagnosis on Multi-Core Computers DOI 10.1613/jair.5001 Type Journal Article Author Jannach D Journal Journal of Artificial Intelligence Research Pages 835-887 Link Publication -
2019
Title Strength of socio-political attitudes moderates electrophysiological responses to perceptual anomalies DOI 10.1371/journal.pone.0220732 Type Journal Article Author Reiss S Journal PLOS ONE Link Publication -
2019
Title Metric-Based Fault Prediction for Spreadsheets DOI 10.1109/tse.2019.2944604 Type Journal Article Author Koch P Journal IEEE Transactions on Software Engineering Pages 2195-2207 Link Publication -
2017
Title AI for Localizing Faults in Spreadsheets DOI 10.1007/978-3-319-67549-7_5 Type Book Chapter Author Hofer B Publisher Springer Nature Pages 71-87 -
2017
Title Removing Coincidental Correctness in Spectrum-Based Fault Localization for Circuit and Spreadsheet Debugging DOI 10.1109/issrew.2017.18 Type Conference Proceeding Abstract Author Hofer B Pages 199-206 -
2017
Title A Decomposition-Based Approach to Spreadsheet Testing and Debugging DOI 10.1109/vlhcc.2017.8103458 Type Conference Proceeding Abstract Author Schmitz T Pages 117-121 -
2017
Title An AI-Based Interactive Tool for Spreadsheet Debugging DOI 10.1109/vlhcc.2017.8103496 Type Conference Proceeding Abstract Author Schmitz T Pages 333-334 -
2017
Title Improving Spectrum-based Fault Localization for Spreadsheet Debugging DOI 10.1109/qrs.2017.21 Type Conference Proceeding Abstract Author Getzner E Pages 102-113 -
2017
Title Qualitative Deviation Models for Spreadsheet Debugging DOI 10.1109/issrew.2017.17 Type Conference Proceeding Abstract Author Hofer B Pages 191-198 -
2017
Title The Future of Automated Debugging -Focus on the Niches First DOI 10.1109/issrew.2017.16 Type Conference Proceeding Abstract Author Wotawa F Pages 92-93 -
2017
Title Combining Models for Improved Fault Localization in Spreadsheets DOI 10.1109/tr.2016.2632151 Type Journal Article Author Hofer B Journal IEEE Transactions on Reliability Pages 38-53 Link Publication -
2016
Title Fragment-Based Diagnosis of Spreadsheets DOI 10.1007/978-3-319-50230-4_28 Type Book Chapter Author Schmitz T Publisher Springer Nature Pages 372-387 -
2015
Title Fault Localization in the Light of Faulty User Input DOI 10.1109/qrs.2015.47 Type Conference Proceeding Abstract Author Hofer B Pages 282-291 -
2015
Title Conditional Slicing: Reducing Dynamic Slices DOI 10.1109/issrew.2015.7392045 Type Conference Proceeding Abstract Author Hofer B Pages 66-66 -
2015
Title Testing for Distinguishing Repair Candidates in Spreadsheets – the Mussco Approach DOI 10.1007/978-3-319-25945-1_8 Type Book Chapter Author Abreu R Publisher Springer Nature Pages 124-140