DynaStruct

The goal of this project is the design of a software architecture called DynaStruct according to the following goals: The following picture shows the main components of the architecture.

DynaStruct_small

At the user interface level, there is an annotation editor which maps program events to model events according to visual user specifications. The following picture shows the annotation editor.

DynaStruct_small

Once a model of the program's behavior is established, the user specifies another mapping from the model to one or several connected views. The distinction between program model and views has the potential of larger reuse than a single-step mapping. Furthermore, this approachs supports the construction of a library of pre-defined model and standard representations for them.

Examples

There are some examples showing that it is quite easy to define mappings from program events to events in views. Unfortunately, these pictures do not convey the dynamics of an animation.

Towers of Hanoi

Example from

Bin Packing

Example of First-Fit bin packing

Parallel FFT Scheduling

The animation shows the execution of a parallel FFT of size 64 scheduled on 8 real processors. The resulting program is communication-optimal: The processors only communicate once. The animation is available as an SGI .mv file.
Arne Frick
Last modified: Fri Apr 26 03:00:52 MDT 1996