PESCE: A Visual Generator for Software Understanding - CiteSeerX

0 downloads 0 Views 120KB Size Report
consistent visual explanations of software. Keywords. Software visualization, knowledge-based user interfaces, presentation generation. INTRODUCTION.
PESCE: A Visual Generator for Software Understanding Rogelio Adobbati, W. Lewis Johnson, Stacy Marsella Computer Science Department / Information Sciences Institute University of Southern California 4676 Admiralty Way Marina de1 Rey, CA 90292 USA +13108221511 {rogelio,johnson,marsella} @isi.edu object/relationship type it realizes, the visualization method to be called to display the object/relationship, and a set of spatial, temporal, and style constraints for the method.

ABSTRACT

We present a short overview of PESCE, a system that addresses the problem of automatically generating consistent visual explanations of software.

The Presentation

Software visualization, presentation generation

knowledge-based

user interfaces,

INTRODUCTION

The importance of visual representations in understanding complex systems has been well established. In the case of complex software systems, static predefined diagrams have been used as documentation. However, the dynamic nature of software, and the different characteristics of users trying to perform software understanding, make dynamically generated presentations highly desirable [2].

An exhaustive search of the rule space would lead to exponential explosion. PESCE tries to avoid that by reducing the branching factor of the search tree (objects and relationships are visualized by only a few methods, usually between 2 and 4), minimizing backtracking (more densely connected objects are searched first; nonmandatory constraints are relaxed if possible), and pruning paths that are known to lead to constraint conflicts.

Dynamically generating presentations for software artifacts represents a difficult challenge, due to the multiple dimensionality ofsoftware artifacts, the need to tailor the information to different user levels of expertise and different tasks, the limited amount of graphical resources available at any given time, and the fact that the mechanisms for conceptual comprehension of graphical depictions are not well understood.

The Diagram Generator

The Diagram Generator is a Java applet that represents objects and relationships through a graphical layout on a web page. The diagram is generated from an SGML-like description (MAP - Markup language for Authoring Presentations) generated by the presentation engine.

DYNAMIC PRESENTATION GENERATION IN PESCE

To provide a solution for the presentation generation problem, we are working on PESCE (Presentation Engine for Software Comprehension and Explanation). The main components of PESCE are a repository of visuulizntion rules for software objects and relationships, a presentation. engine that uses those rules to generate visual directives to show information about a software system, and a diagram generator that realizes those directives on the user’s screen. PESCE is part of MediaDoc [l], a Web-based software engineering tool being developed at IS1 that uses textual and graphical presentations for software explanation. The Visualization

Engine

The main component of PESCE is the presentation engine. This module receives information about software objects and relationships from MediaDoc’s content server. It searches the rule repository to generate the right visual representation for each object and relationship, checking that no constraints are violated - backtracking if necessary.

Keywords

FUTURE WORK So far, several

simple examples of visual presentations have been tested in PESCE. We are currently working on a larger and more general set of visual rules, testing heuristics for scalability and efticiency, and porting the presentation engine to Java. ACKNOWLEDGMENTS

This research is sponsored by DARPA under DARPA order number D880.

Rules

REFERENCES 1. Johnson, W.L. and Erdem, A. Interactive Explanation of Software Sys tans. Autonwtcrl .Sr!ftwurc Eqirwcring 4, (1097), 53-7s. 2. Knuth, D. Computer Drawn Flowcha-ts. C~~7~ullclni~ation.s of the ACM 6 (9). (1963) 55.5-563.

Visual rules are used by the presentation engine to generate graphical representations of an object or relationship. Each rule has 3 main components: the softw‘are

195

Suggest Documents