i-nth logo


Jan-Christopher Bals, Fabian Christ, Gregor Engels, & Martin Erwig


Using spreadsheets is the preferred method to calculate, display or store anything that fits into a table-like structure. They are often used by end users to create applications. But they have one critical drawback - they are very error-prone.

To reduce the error-proneness, we purpose a new way of object-oriented modeling of spreadsheets prior to using them. These spreadsheet models, termed ClassSheets, are used to generate concrete spreadsheets on the instance level.

By this approach sources of errors are reduced and spreadsheet applications are easier to understand.


ClassSheet syntax with width and height expansions
ClassSheet syntax with width and height expansions

The syntax for ClassSheets defines a class as a composition of blocks.

One block in the syntax is one cell of a ClassSheet. Blocks can be arranged horizontally or vertically and compose the class's layout.

We add an enhanced version of formulas to calculate the width and height of expansions measured in blocks.


2007, Journal of Object Technology, Volume 6, Number 9, October, pages 383-398

Full article

ClassSheets - model-based, object-oriented design of spreadsheet applications