A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

14
SEMS 2014 Daniel Kulesz Institute of Software Technology University of Stuttgart [email protected] A Spreadsheet Cell-Meaning Model for Testing 2 nd July 2014

Transcript of A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

Page 1: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

SEMS 2014

Daniel Kulesz

Institute of Software TechnologyUniversity of Stuttgart

[email protected]

A Spreadsheet Cell-Meaning Modelfor Testing

2nd July 2014

Page 2: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

2 / 14

Agenda

Introduction

Issues with the “naive” cell-meaning model

Requirements for a better model

Our prototype

Future work

Page 3: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

3 / 14

Introduction

Spreadsheet failures can cause problems – sometimes with severe impact.

Detecting anomalies (errors, defects, faults, failures...) in spreadsheets early can prevent failures in the field.

Several anomaly detection techniques exist. The most prominent for detecting failures is testing.

Testing: Input cells are populated with data. Afterwards, “output” cells are checked for deviations between expected and actual results.

System testing: end-to-endTerminology borrowedfrom IEEE Std. 1044-2009

Page 4: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

4 / 14

Cell-Meaning Models

Cell-Meaning Models (my notion) describe or prescribe what specific spreadsheet cells mean to the user.

Cell meanings can be automatically detected using the internal re/calculation model of spreadsheet environments:

Input cells

Intermediate calculation cells

Result cells

Plausibility cells (just one approach)

Existing testing approaches use this “Naive Cell-Meaning Model”.

My claim: The Naive Model is too limited for testing.

Page 5: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

5 / 14

ExampleSpreadsheet for managing course grades

Collaborative setting:

Filled by course instructor

Passed to secretary

Used for statistical purposes by study program manager

Page 6: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

6 / 14

Example: Detected cell-meanings

Input cells

Intermediatecalculation cells

Result cells

Page 7: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

7 / 14

Issue 1Total points could be output values (secretary), but are auto-detected as intermediate cells.

Page 8: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

8 / 14

Issue 2 Plausibility cells are not output cells.

Page 9: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

9 / 14

Issue 3Just the failure rate is a meaningful output cell for the study program manager.

Page 10: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

10 / 14

Issue 4Static data cells are not input cells for any of the users.

Page 11: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

11 / 14

Issue 5 Student names are input cells,too (course instructor).

Page 12: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

12 / 14

Requirements for a better model

From a theoretic perspective:

User-specifiable

Support for views

Input cells must distinguish between “dumb data” and “decision variables”

Output cells must distinguish between “real results” and “plausibility statements”

From a practical perspective:

Understandability

Acceptance

Page 13: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

13 / 14

Our prototype

Partly implemented* in our tool“Spreadsheet inspection framework”

See it in action tomorrow in the tooldemo track at EuSpRIG!

* no view support yet and just threecell-meaning types so far.

Page 14: A spreadsheet cell-meaning model for testing - Daniel Kulesz at Sems 2014

A Spreadsheet Cell-Meaning Model for Testing SEMS 2014

© Daniel Kulesz

14 / 14

Future work

Finish implementation

Validate understandability

Validate acceptance

Are the benefits of the model worth the effort of manual intervention in the cell-meaning detection process?

Questions?