Complex Systems Visualization
ILP 1999 Research Summary
John Reekie and Michael Shilman
We are building infrastructure to explore the problem of visualizing complex hardware and software systems and its role in the design process. The key aspect of this work that differentiates it from conventional visualization tools is an emphasis on dynamic and interactive visualization. As the design of a complex system evolves from initial conception through to its completion, the designer needs immediate and relevant feedback about properties of the system, as it is understood at that particular point in the design process. The visualization components need to be dynamic, in that they adapt to changing conditions, such as progression of the design or a simulation, and incremental, so that they display whatever information is available now, rather than waiting for a complete (but tardy) data set.
The proposed architecture is based on the concept of high-level "protocols." A protocol is a generic model of structuring data, such as tuples or graphs, and an associated set of interfaces on this data. Data elements within a protocol can be annotated to allow extension to domain-specific data. The protocols allow visualization components to be rapidly re-used or adapted in a range of applications.
We plan to apply this architecture to different problems in design. To begin with, we will be exploring the visualization and understanding of evolving system topologies in Ptolemy II, and memory access patterns in embedded systems synthesized from JavaTime system specifications. We are interested in determining useful browsing metaphors for these domains, editing techniques that can be directly applied through domain-independent visualization components, and to what extent generic data protocols can accomodate interactivity with the designer.