Descrizione del progetto
Una nuova serie di strumenti riduce la probabilità di errori nei fogli di calcolo
Le applicazioni per fogli di calcolo come Microsoft Excel sono strumenti fondamentali nei settori del commercio, della contabilità e della ricerca. Tuttavia, un semplice errore nei fogli di calcolo aziendali può costare miliardi. Un precedente progetto finanziato dall’UE ha applicato nuove tecniche all’analisi statica dei programmi, agevolando la verifica di programmi che utilizzano strutture di dati complesse, quali matrici, elenchi, alberi e dizionari unidimensionali o multidimensionali. MemCAD ha favorito la progettazione di potenti tecniche di astrazione per ragionare su strutture di dati complesse, come ad esempio le tabelle presenti nei fogli di calcolo. Sulla scia di questi sviluppi, il progetto SPARKs, finanziato dall’UE, intende sfruttare questi risultati convogliandoli in una serie di strumenti in grado di verificare, ottimizzare e mantenere i fogli di calcolo. La serie di strumenti prevista si baserà su un’analisi statica semantica automatica e conservativa, riportando tutte le occorrenze di determinate classi di errori.
Obiettivo
Spreadsheet applications (such as Microsoft Excel + VBA) are heavily used in a wide range of fields including engineering, finance, management, statistics and health. However, they do not ensure robustness properties, thus spreadsheet errors are hard to avoid, common and potentially very costly. According to estimates, the annual cost of spreadsheet errors is around 7 billion dollars. For instance, in 2013, a series of basic spreadsheet errors at JPMorgan incurred 6 billion dollars trading losses. To avoid such problems, spreadsheet users need better support from rigorous tools, since the development of industrial spreadsheets typically involves multiple tabs, formulas, macros and data read from external sources (e.g. the internet). However, as of today, spreadsheet environment offer almost no verification support, and third party tools do not allow to reason correctly over macros, and future uses of existing formulas. The MemCAD ERC StG project opened the way to novel formal analysis techniques for spreadsheet applications. Indeed, the MemCAD project led to the design of powerful abstraction techniques to reason over complex data-structures such as tables as found in spreadsheets. During this project, we have implemented AiXL, a prototype that was able to analyze large public benchmarks. It uncovered defects that are beyond the scope of other approaches. We propose to leverage these results into a toolbox able to safely verify, optimize and maintain spreadsheets, so as to reduce the likelihood of errors. The envisioned toolbox relies on automatic and conservative semantic static analysis, so that it will report all occurrences of certain classes of errors. It will have an open architecture with plugins, and will easily extend to user specific properties. This works will take place in a partnership with MatrixLEAD, a startup created based on the results of the ERC MemCAD project. MatrixLEAD will provide industrial use-cases and commercialization plans.
Campo scientifico
Programma(i)
Argomento(i)
Meccanismo di finanziamento
ERC-POC - Proof of Concept GrantIstituzione ospitante
78153 Le Chesnay Cedex
Francia