1. Jácome Cunha, João Paulo Fernandes,
Jorge Mendes, Rui Pereira, João Saraiva
HASLab/INESC TEC & Universidade do Minho
(rel)ease – Universidade da Beira Interior
http://ssaapp.di.uminho.pt
MDSheet – Model-Driven Spreadsheets
SEMS '14
Delft, The Netherlands, July 2014
2. 13
History!
› Project SpreadSheets As A Programming Paradigm
(SSaaPP)
› Working on spreadsheets' research for about 8 years
› Programming languages perspective
› Software engineering perspective
14. 12
Summary
1 2 4 6 7 8 9 11 13 15 16 17 21 24 25
00: 00
05: 00
10: 00
15: 00
Model-Driven
P l ain
Su b je ct
Time(mm:ss)
1 2 3 5 7 8 11 13 15 18 21 22
00:00
05:00
10:00
15:00
Model-Driven
Plain
Subject
Time(mm:ss)
Editor's Notes
Explain the example.
Mostly, formula issues. But also incorrect values.
It is also necessary a lot of work to add a new year or category.
After adding data, it may be necessary to update the formulas.
Our solution it to have a specification of the spreadsheet one wants and make the spreadsheet follow it.
It helps the user to keep the data correct as only the input cells are allowed to be changed. The formula are automatically updated in whenever necessary.
To add a new year or category just press one button
No they don't!!
We infer them from data instances, using data mining techniques.
A relational model is computed, and from that a ClassSheet is obtained.
Change the model to an evolved one.
You can edit the model and have the data automatically co-evolved.
You can also evolve the data and have a new model for it.
Why?
Because it is probably more natural for some people.
Also, because some operations are also easier to do on the data than on the model.
You can Query it!!
Begin query construction
End query construction
Spreadsheet tend to have errors
We have devised a model-driven approach to help users
Models can automatically be inferred
And guide the user in introducing correct data
We have empirical evidence that our system indeed helps users to be more efficient and effective