i-nth logo

Authors

Pedro Martins & Rui Pereira

Abstract

Identifying bad design patterns in software is a successful and inspiring research trend. While these patterns do not necessarily correspond to software errors, the fact is that they raise potential problematic issues, often referred to as code smells, and that can for example compromise maintainability or evolution.

The identification of code smells in spreadsheets, which can be viewed as software development environments for non-professional programmers, has already been the subject of confluent researches by different groups. While these research groups have focused on detecting smells on concrete spreadsheets, or spreadsheet instances, in this paper we propose a comprehensive set of smells for abstract representations of spreadsheets, or spreadsheet models.

We also propose a set of refactorings suggesting how spreadsheet models can become simpler to understand, manipulate and evolve. Finally we present the integration of both smells and refactorings under the MDSheet framework.

Sample

Smell detection in MDSheet
Smell detection in MDSheet

MDSheet adds a toolbar button to evaluate the smells in a model. After clicking the button, the model is annotated with comments that describe the smells present in the annotated cells.

Publication

2014, Lecture Notes in Computer Science, Volume 8583, pages 556-571

Full article

Refactoring smelly spreadsheet models