Your SlideShare is downloading. ×
Talk at VL/HCC '11
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Talk at VL/HCC '11

2,760
views

Published on

Published in: Technology, Business

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,760
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Embedding and Evolution of Spreadsheet Models in Spreadsheet SystemsJá come Cunha, Jorge Mendes, Joã Paulo Fernandes o Joã Saraiva o Universidade do Minho Universidade do Minho & Universidade do Porto Portugal Portugal VL/HCC 2011 September 18-22, Pittsburgh, PA, USA
  • 2. Agenda● Introduction● Embedding ClassSheets into Spreadsheet Systems● Co-Evolution of Spreadsheet Models and Data● Conclusions and Future Work 2
  • 3. Introduction 3
  • 4. Spreadsheets are widely used 4Image taken from http://www.flickr.com/photos/cosmosfan/2414002070/
  • 5. Spreadsheets contain many errors 5Image taken from http://www.computerrepairmaintenance.com/secrets-to-fixing-computer-problems/
  • 6. An Example 6
  • 7. Model-based approach promises good results 7Images taken from http://www.getopt.org/ecimf/contrib/onto/REA/REA-UML.gif and http://www.telecom-lille1.eu/people/Vanwormhoudt/siteEMFOCL/tutoriel/TutorialEMFOCL1.htmand http://weblogs.asp.net/scottgu/archive/2006/07/12/Tip_2F00_Trick_3A00_-Online-Database-Schema-Samples-Library.aspx
  • 8. ClassSheets to the rescue! 8
  • 9. Embedding ClassSheets into Spreadsheet Systems 9
  • 10. ● Embedding DSLs in general purpose programming languages is a recurring strategy ● systems inherit all the power of the host language ● implementation effort is much reduced● We will present the embedding of the ClassSheet (DSL) model in traditional spreadsheet systems 10
  • 11. Vertically Expandable Tables 11
  • 12. Horizontally Expandable Tables 12
  • 13. Relationship Tables 13
  • 14. Co-Evolution ofSpreadsheet Models and Data 14
  • 15. Data Refinements - 2LT 15
  • 16. Data Refinements - 2LTseq2index [a, z] = {1 → a, 2 → z}list {1 → a, 2 → z} = [a, z] 16
  • 17. Co-Evolution Rules● Combinator rules: after, before, at● Semantic rules: insert a column, make it expandable● Layout rules: change orientation (transpose) 17
  • 18. Add/Remove Column Rule 18
  • 19. 19
  • 20. Solving the Problem 20
  • 21. Conclusions● We have shown how to embed a visual DSL into a traditional spreadsheet system● This allows user to create models and instances in the same environment● We used a formal framework to design and implement evolution steps● The model and its instances are always synchronized 21
  • 22. Future Work● Evaluate the embedded modeling language● Evaluate the impact of the new environment in efficiency (time) and effectiveness (errors)● Extend the ClassSheet model with restrictions● Allow users to change data and infer the “best” evolved ClassSheet model 22