Title :
A method for the formal testing of program visualization tools
Author :
Graham, T. C Nicholas
Author_Institution :
Dept. of Comput. Sci., York Univ., North York, Ont., Canada
Abstract :
Many modern tools support program understanding through the visualization of program structure. Such tools are typically based on a formal theory describing the structure of programs to be visualized such as first order logic, temporal logic, entity relationship models and graph grammars. Two questions arise with such approaches: (a) does the tool correctly abide by the rules of the formalism; and (b) is the formalization itself correct? To address these questions in the context of the visual ClockWorks programming environment, we have developed a method for formally testing both the tool and the theory. This work relies heavily on the use of the PVS (J. Crow et al., 1995) theorem prover. Many of the proofs carried out in this work are easy to prove mechanically, but would be far too tedious to carry out by hand. While this technique was carried out in the context of the ClockWorks tool, the method should be applicable to any visualization system that can be formalized using logic
Keywords :
data visualisation; formal logic; program testing; programming environments; reverse engineering; software tools; theorem proving; visual programming; PVS theorem prover; entity relationship models; first order logic; formal testing; formal theory; graph grammars; modern tools; program structure; program understanding; program visualization tools; temporal logic; visual ClockWorks programming environment; visualization system; Clocks; Computer science; Data visualization; Database languages; Logic programming; Power system modeling; Programming environments; Software architecture; Software testing; System testing;
Conference_Titel :
Program Comprehension, 1996, Proceedings., Fourth Workshop on
Conference_Location :
Berlin
Print_ISBN :
0-8186-7283-8
DOI :
10.1109/WPC.1996.501120