Jcome Cunha,Joo P.Fernandes,Christophe Peixoto, Joo Saraiva
1 HASLab / INESC TEC & Universidade do Minho, Portugal
QUATIC 2012
A Quality Model for Spreadsheet
Why do Spreadsheets matter?
95% of all U.S. firms90% of all analysts in industry50% of all SSs are the basis for decisions
Still...
Economy losses of $10 billion/year!
A recent spreadsheet error...
A Portuguese horror story...
EuSpriG Original Horror Storieshttp://www.eusprig.org/stories.htm
Many more horror stories...
SpreadSheets as SW Languages
In fact Spreadsheets lack advanced mechanisms found in modern languages, namely:
Type and Modular Systems
Abstractions
Debuggers/Profilers/Refactors
Mechanisms for Model-Driven Engineering and Software Evolution!
Best Practice Rules...
This paper
We propose a quality model for spreadsheets based on the widely accepted ISO/IEC 9126 standard for software product quality.
We introduce a set of domain specific metrics for spreadsheets used to measure concrete spreadsheet characteristics.
We calibrate our quality model using a large repository of real-world spreadsheets (EUSES corpus)
Spreadsheets Quality Model: Definition
SpreadSheet Quality Model: Definition
We have adapted the ISO/IEC 9126 to Spreadsheets
SpreadSheet Quality Model: Definition
For example:
Understandability: There are many ways to make a spreadsheet more understandable
1- the separation of the input, computation and output components of the spreadsheet.2- the use of different background colors for different types of data cells.3- a large number of cells makes a spreadsheet hard to understand.
SpreadSheet Quality Model: Calibration
To calibrate our model we need to consider a large repository of spreadsheets: The EUSES corpus (5606 spreadsheets, organized in 6 categories)
SpreadSheet Quality Model: Calibration
The Metrics: we reused SIG Spreadsheets metrics suite
SpreadSheet Quality Model: Calibration
The idea is to compute the metrics in a large set of real-word spreadsheet in order to define metric values that allow us to assign a five star ranking to a spreadsheet.
Repository: EUSES
Metric: Number of Cells
SpreadSheet Quality Model: Calibration
The graphics that represent the aggregation based on the central tendency of the results of computing the metric number of cells
SpreadSheet Quality Model: Calibration
Finally, we are able to define the star ranking intervals for each of the characteristics considered:
SpreadSheet Smells: Catalog Validation
We have implemented both a batch and web-based spreadsheet quality analyzer tools:
SpreadSheet Quality Model: Evaluation
We have developed an equivalent android-based application to assess quality of cloud stored spreadsheets (google docs).
We presented a quality model for spreadsheets.
We have implemented the quality model as three different tools.
We have calibrated our model using the tools a large repository containing real-world spreadsheets.
But,
this is a preliminary result/model. We need to extend our metric suite and, thus, to consider more sub-characteristics of the ISO 9126 std.
Conclusions
SSaaPP SpreadSheets as a Programmin Paradigm (FCT funded)http://ssaapp.di.uminho.pt
AutoSeer - Automated Test Oracles for Software Error Detection (FCT funded)http://www.fe.up.pt/AutoSeer
Research Material