Data flow tracing for algorithm animation

Francik, Jaroslaw (1999) Data flow tracing for algorithm animation. (PhD thesis), Instytut Informatyki Politechniki Slaskiej, Gliwice, Polska Laboratoire D'Automatique I[sup]3D, Universite de Sciences et Technologies de Lille, .


Software visualisation consists of applying various multimedia techniques for significant improvement of human understanding of computer software. If the subject of such visualisation is an algorithm, and computer generated animation is essential for its realisation, we say of algorithm animation. Successful algorithm visualisations usually go beyond isomorphic mappings of program data or code to graphical representation of program semantics. They inherently provide a high level of abstractness, supplying an extra information on the semantics and meaning that is behind the code. The postulate of designing highly abstract visualisations is by most authors stated as being in a deep contradiction with postulate of automation of the designer’s work. The goal of the presented work is partial reconciling these two contradicted postulates. We can prove that some elements that significantly increase the level of abstractness may be introduced to the visualisation in a strictly automatic mode, without any additional effort of the visualiser. To obtain this result, an original method of algorithm animation based on data flow tracing has been proposed. The key idea of the new method is to acquire information for visualisation by observing elementary operations of data flow rather then by examining temporary data structure values used in traditional solutions. In more advanced versions of this method, Petri net formalism has been applied for dynamic analysis of data flow in a non-local range. It allowed creating an engine for automatic suppression of unimportant or unwanted data. The data flow method has been implemented in a system for algorithm animation called Daphnis, which is the practical result of the research. The visualisations created relatively easily with the Daphnis system achieve level of abstractness, which, in the solutions existing so far, required much effort involving precise, manual designing and tuning. Daphnis in its current version is a general purpose, easy-to-use system, with wide repertoire of graphical means. This repertoire may be broadened thanks to the open architecture of the system. The system is suitable for both didactic and engineering applications. The text of manual contains an introduction to the software visualisation with a review of solutions existing so far. Next, the method of algorithm animation based on data flow tracing is described in detail. Finally, the Daphnis system is presented, both from the user’s and designer’s point of view. Sample visualisations are also included.

Actions (Repository Editors)

Item Control Page Item Control Page