Talk at VL/HCC '11

download Talk at VL/HCC '11

If you can't read please download the document

Transcript of Talk at VL/HCC '11

  • 1. Embedding and Evolution ofSpreadsheet Models in Spreadsheet SystemsJ come Cunha, Jorge Mendes,Jo Paulo Fernandes o Jo Saraivao Universidade do Minho Universidade do Minho &Universidade do PortoPortugalPortugal VL/HCC 2011September 18-22, Pittsburgh, PA, USA

2. Agenda Introduction Embedding ClassSheets into Spreadsheet Systems Co-Evolution of Spreadsheet Models and Data Conclusions and Future Work2 3. Introduction 3 4. Spreadsheets are widely used4Image 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 results7Images 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 Systems9 10. Embedding DSLs in general purposeprogramming 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 theClassSheet (DSL) model in traditionalspreadsheet systems 10 11. Vertically Expandable Tables 11 12. Horizontally Expandable Tables 12 13. Relationship Tables13 14. Co-Evolution ofSpreadsheet Models and Data14 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 itexpandable Layout rules: change orientation (transpose) 17 18. Add/Remove Column Rule 18 19. 19 20. Solving the Problem20 21. Conclusions We have shown how to embed a visual DSLinto a traditional spreadsheet system This allows user to create models andinstances in the same environment We used a formal framework to design andimplement evolution steps The model and its instances are alwayssynchronized 21 22. Future Work Evaluate the embedded modeling language Evaluate the impact of the new environment inefficiency (time) and effectiveness (errors) Extend the ClassSheet model with restrictions Allow users to change data and infer the bestevolved ClassSheet model22