Software

All software developed in the context of the SSaaPP project is available in the project’s account at Bitbucket.org. The repositories are private, so if you want access just ask sending an email to ssaapp (di.uminho.pt).

FaultySheet Detective

FaultySheet Detective is a tool to find bad smells and faults in spreadsheets.

You can download it here.

An example spreadsheet is available here.

The generic framework for spreadsheet analysis is available here.

FaultySheet Detective 1.1

In this version we have:

  • Added two new smells to the catalog: Switch Statements and Temporary Field.
  • Updated the dependency libraries to newer versions.
  • Performed various optimizations and performance tweaks.
  • Performed an overall GUI polishing.

This new version is available here.

Previous versions:

SmellSheet Detective

SmellSheet Detective is a tool to find bad smells and faults in spreadsheets.

You can download it here.

An example spreadsheet is available here.

The generic framework for spreadsheet analysis is available here.

QuerySheet

QuerySheet is a tool to query model-driven spreadsheet data.

The link to the repository with the core code can be found here, and for the graphical user interface here.

MDSheet

MDSheet is a framework for the embedding, evolution and inference of spreadsheet models. This framework offers a model-driven software development mechanism for spreadsheet users.

The OpenOffice extension can be downloaded here. For installation and use instructions, see below.

Instructions

The MDSheet addon is only available for Linux-based operating systems.

If you have any problem installing or using the addon, or if you have any comment or suggestion, or just want access to the source code, you can contact Jorge Mendes.

Note: This is an alpha prototype, which is still under active development. Nevertheless, it may already be used to test new theories and to experiment several functionalities. For now, we do not have in mind to make this a production tool, so only a representative set of features were implemented. It was only made available for demonstration purposes. We take no responsibility for any damage caused by the application. Use it at your own risk.

Installation

Download the addon here (old [buggy] version). Open OpenOffice and install the addon via the extension manager.

The installation procedure for LibreOffice should be similar. In most (or all) cases, only the name is changed from OpenOffice.org to LibreOffice.

There can be some errors installing or using the addon due to missing library dependencies. At this moment, we do not have a list of dependencies available.

Use

  • Initialization — Create a new spreadsheet file. The first worksheet is used for the model and the second one is used for the data. To facilitate the use of the spreadsheet, you can name the first sheet Model and the second one Data.
  • Model creation — Go to the Model sheet. Select an area for a class and click on the button “c+” in the addon toolbar to create a class. Fill the dialog and click “Add”. You just created a new class. You can create more classes to build your model following the same steps. After creating your model, you can go to the Data sheet to see the result.
  • Model evolution — Go to the Model sheet. Select a cell where you want to evolve. Click the button that you want to use to evolve (e.g., “Col+”), or edit the cells. You can go to the Data sheet to see the result.
  • Data evolution — Go to the Data sheet. Click on the buttons (with label ‘⋮’ or ‘⋯’) to add new instances of expandable classes. These operations do not change the layout of the spreadsheet, so the model remains the same. You can also add/remove columns/rows.

MDSheet with Functional Dependencies Inference

This version can infer functional dependencies from database-like spreadsheets, create models from those dependencies, and migrate the data to the new format.

It is available for download here (Ubuntu 11.10) or here (Ubuntu 12.04 LTS), with the basic scripts from here.

Note: for the inference to work, a new system with support for multiple models and multiple instances was developed. Unfortunately, it is not yet fully functional, so evolution of the newly generated models is not yet possible.

HaExcel

  • HaExcel is a framework to manipulate, transform and query spreadsheets.
  • The HaExcel Add-on for OpenOffice helps users to safely edit spreadsheets.
    • A demonstration video can be found here.