Talk at VL/HCC '12

3,951 views

Published on

  • Be the first to comment

  • Be the first to like this

Talk at VL/HCC '12

  1. 1. Extension and Implementation of ClassSheet Models Jácome Cunha1,2, João P. Fernandes1,3, Jorge Mendes1, João Saraiva1 {jacome,jpaulo,jorgemendes,jas}@di.uminho.pt 1 HASLab / INESC TEC & Universidade do Minho 2 Escola de Tecnologia e Gestão - Instituto Politécnico do Porto 3 Universidade da Beira Interior Portugal VL/HCC 2012 September 30 - October 4
  2. 2. Why do Spreadsheets Matter? 2
  3. 3. Why do Spreadsheets Matter?Financial intelligence firm CODA reports that95% of all U.S. firms use spreadsheets forfinancial reporting Sarbanes-Oxley: What About all the Spreadsheets?, Raymond R. Panko and Nicholas Ordway, 2008 3
  4. 4. Why do Spreadsheets Matter?In 2004, RevenueRecognition.com (nowSofttrax) had the International Data Corporationinterview 118 business leaders.IDC found that 85% were using spreadsheets infinancial reporting and forecasting Sarbanes-Oxley: What About all the Spreadsheets?, Raymond R. Panko and Nicholas Ordway, 2008 4
  5. 5. Why do Spreadsheets Matter?50% of all spreadsheets are the basis for decisionsSupporting professional spreadsheet users by generating leveled dataflow diagrams,Felienne Hermans, Martin Pinzger and Arie van Deursen, 2011 5
  6. 6. Still... www.eusprig.org/horror-stories.htm 6
  7. 7. The Contribution of Models 7
  8. 8. ClassSheets - Models for SpreadsheetsClassSheets: automatic generation of spreadsheet applications from 8object-oriented specifications, Gregor Engels, Martin Erwig, ASE05
  9. 9. Vertically Expandable Tables 9
  10. 10. Relationship Tables 10
  11. 11. Limitations of ClassSheets● Does not allow to specify several constraints● In fact, the example shown could not be completely characterized by the original version● We will show how to extend ClassSheets 11
  12. 12. Extended ClassSheet Language 12
  13. 13. Extended ClassSheet Embedding 13
  14. 14. 14
  15. 15. MDSheet ● Available at http://ssaapp.di.uminho.pt ● Built out of ~7200 LOC: ● ~3700 in Haskell, for the evolution and inference ● ~600 in Basic, for the embedding ● ~2880 in C++, for gluing all componentsMDSheet: A Framework for Model-driven Spreadsheet Engineering, Jácome 15Cunha, João P. Fernandes, Jorge Mendes, João Saraiva, ICSE 12
  16. 16. Conclusions 16
  17. 17. Thank You! SSaaPP:http://ssaapp.di.uminho.pt 17

×