DocumentCode
2036617
Title
Planted-model evaluation of algorithms for identifying differences between spreadsheets
Author
Harutyunyan, Anna ; Borradaile, Glencora ; Chambers, Christopher ; Scaffidi, Christopher
Author_Institution
Sch. of Electr. Eng. & Comput. Sci., Oregon State Univ., Corvallis, OR, USA
fYear
2012
fDate
Sept. 30 2012-Oct. 4 2012
Firstpage
7
Lastpage
14
Abstract
Users often need to test, debug or reuse spreadsheets. We present a new algorithm that can identify differences between two spreadsheets, providing a basis for future tools to help users compare two versions of a spreadsheet (thereby seeing what is new and needs testing) or two different spreadsheets (thereby seeing which is more appropriate for reuse in a situation). This algorithm, RowColAlign, is a two-dimensional generalization of the classic dynamic programming algorithm for solving the one-dimensional longest common subsequence problem. In addition, we present a new planted model for generating test cases to evaluate this algorithm and others like it, including the greedy SheetDiff algorithm presented in prior work. In our evaluation, our new RowColAlign algorithm made no errors at all on test cases, including test cases comparable to relatively large spreadsheets. Moreover, further analysis revealed that it is unexpected for our new algorithm to make errors except when spreadsheets contain an unrealistically small number of distinct values. These results are extremely encouraging, revealing our algorithm´s potential as the basis for future spreadsheet tools.
Keywords
dynamic programming; greedy algorithms; program debugging; program testing; software reusability; spreadsheet programs; RowColAlign algorithm; classic dynamic programming algorithm; difference identification; greedy SheetDiff algorithm; one-dimensional longest common subsequence problem; planted-model evaluation; spreadsheet debuging; spreadsheet reusing; spreadsheet testing; test case generation; two-dimensional generalization; Accuracy; Algorithm design and analysis; Dynamic programming; Error analysis; Heuristic algorithms; Transforms; analysis; human-centric computing; spreadsheets;
fLanguage
English
Publisher
ieee
Conference_Titel
Visual Languages and Human-Centric Computing (VL/HCC), 2012 IEEE Symposium on
Conference_Location
Innsbruck
ISSN
1943-6092
Print_ISBN
978-1-4673-0852-6
Type
conf
DOI
10.1109/VLHCC.2012.6344471
Filename
6344471
Link To Document