Tabula: A Language to Model Spreadsheet Tables

Spreadsheets provide a flexible and easy to use software development environment, but that leads to error proneness. Work has been done to prevent errors in spreadsheets, including using models to specify distinct parts of a spreadsheet as it is done with model-driven software development. Previous model languages for spreadsheets offer a limited expressiveness, and cannot model several features present in most real world spreadsheets. In this paper, the modeling language Tabula is introduced. It extends previous spreadsheet models with features like type constraints and nested classes with repetitions. Tabula is not only more expressive than other models but it can also be extended with more features. Moreover, Tabula includes a bidirectional transformation engine that guarantees synchronization after an update either in the model or spreadsheet.

[1]  Jácome Cunha,et al.  Bidirectional Transformation of Model-Driven Spreadsheets , 2012, ICMT@TOOLS.

[2]  Jácome Cunha,et al.  Embedding and evolution of spreadsheet models in spreadsheet systems , 2011, 2011 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC).

[3]  Jácome Cunha,et al.  Extension and implementation of ClassSheet models , 2012, 2012 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC).

[4]  Gregor Engels,et al.  Theory and Practice of Model Transformations , 2016, Lecture Notes in Computer Science.

[5]  M. Erwig,et al.  Automatic generation and maintenance of correct spreadsheets , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[6]  Jácome Cunha,et al.  Embedding, Evolution, and Validation of Model-Driven Spreadsheets , 2015, IEEE Transactions on Software Engineering.

[7]  Virginie Wiels,et al.  Formal Verification of Critical Aerospace Software , 2012 .

[8]  Jácome Cunha,et al.  MDSheet: A framework for model-driven spreadsheet engineering , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[9]  Gregor Engels,et al.  ClassSheets: automatic generation of spreadsheet applications from object-oriented specifications , 2005, ASE '05.

[10]  Raymond R. Panko,et al.  Spreadsheet Errors: What We Know. What We Think We Can Do , 2008, ArXiv.

[11]  Jorge Mendes Evolution of model-driven spreadsheets , 2012 .