• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Using Visualization to Foster Object-Oriented Program Understanding (1994)

by J Stasko, D Jerding
Add To MetaCart

Tools

Sorted by:
Results 1 - 10 of 19
Next 10 →

The Information Mural: A Technique for Displaying and Navigating Large Information Spaces

by Dean F. Jerding, John T. Stasko - IEEE Transactions on Visualization and Computer Graphics , 1995
"... Information visualizations must allow users to browse information spaces and focus quickly on items of interest. Being able to see some representation of the entire information space provides an initial gestalt overview and gives context to support browsing and search tasks. However, the limited num ..."
Abstract - Cited by 97 (4 self) - Add to MetaCart
Information visualizations must allow users to browse information spaces and focus quickly on items of interest. Being able to see some representation of the entire information space provides an initial gestalt overview and gives context to support browsing and search tasks. However, the limited number of pixels on the screen constrain the information bandwidth and make it difficult to completely display large information spaces. The Information Mural is a two-dimensional, reduced representation of an entire information space that fits entirely within a display window or screen. The mural creates a miniature version of the information space using visual attributes such as grayscale shading, intensity, color, and pixel size, along with anti-aliased compression techniques. Information Murals can be used as stand-alone visualizations or in global navigational views. We have built several prototypes to demonstrate the use of Information Murals in visualization applications; subject matter ...

Visualizing interactions in program executions

by Dean F. Jerding, John T. Stasko, Thomas Ball - In Proceedings of the 19th International Conference on Software Engineering , 1997
"... Implementing, validating, modifying, or reengineering an object-oriented system requires an understanding of the object and class interactions which occur as a program executes. This work seeks to identify, visualize, and analyze interactions in object-oriented program executions as a means for exam ..."
Abstract - Cited by 60 (3 self) - Add to MetaCart
Implementing, validating, modifying, or reengineering an object-oriented system requires an understanding of the object and class interactions which occur as a program executes. This work seeks to identify, visualize, and analyze interactions in object-oriented program executions as a means for examining and understanding dynamic behavior. We have discovered recurring interaction scenarios in program executions that can be used as abstractions in the understanding process, and have developed a means for identifying these interaction patterns. Our visualizations focus on supporting design recovery, validation, and reengineering tasks, and can be applied to both object-oriented and procedural programs.

Visualizing Message Patterns in Object-Oriented Program Executions

by Dean F. Jerding, John T. Stasko, Thomas Ball , 1996
"... The dynamic behavior of object-oriented programs is difficult to design, implement, and modify. Understanding the interactions between classes and objects is necessary to create efficient designs and make safe modifications. This work seeks to identify, visualize, and analyze recurring message patte ..."
Abstract - Cited by 19 (2 self) - Add to MetaCart
The dynamic behavior of object-oriented programs is difficult to design, implement, and modify. Understanding the interactions between classes and objects is necessary to create efficient designs and make safe modifications. This work seeks to identify, visualize, and analyze recurring message patterns in object-oriented program executions as a means for understanding and examining dynamic behavior. Our visualizations focus on supporting design recovery, validation, and reengineering tasks. Keywords: software visualization, object-oriented programs, program understanding, software reengineering 1 Addressing Problems of OO Dynamics The importance of dynamic behavior in the design and implementation of object-oriented (OO) systems cannot be over-emphasized. Object-oriented analysis and design techniques (OOA/D) that evolve around object models created from static problem statements or object decomposition of real-world systems must not avoid the dynamic issues. Usage-scenario based a...

Java class visualization for teaching object-oriented concepts

by Herbert L. Dershem, James V - Proc. of SIGCSE , 1998
"... Visualization is a useful tool in many areas of computer science education. This paper describes the use of visualization in the introduction of object-oriented concepts. A Java application has been developed that allows the user to interact with a visualization of any Java class through the instant ..."
Abstract - Cited by 6 (1 self) - Add to MetaCart
Visualization is a useful tool in many areas of computer science education. This paper describes the use of visualization in the introduction of object-oriented concepts. A Java application has been developed that allows the user to interact with a visualization of any Java class through the instantiation of objects, the movement of those objects around the class environment, and the activation of class methods. The user may also move conveniently between classes in this visualization. This Object Visualizer is useful for classroom demonstration, individual student use in the laboratory, and class

Visualisation for Program Comprehension: Information and Issues

by Claire Knight , 1998
"... For many years basic visualisation, based around simple boxes and lines, has been done in an attempt to be able to ease some of the cognitive overload caused by program comprehension. The problems with such visualisations is that they can very easily become incomprehensible themselves by trying to f ..."
Abstract - Cited by 6 (2 self) - Add to MetaCart
For many years basic visualisation, based around simple boxes and lines, has been done in an attempt to be able to ease some of the cognitive overload caused by program comprehension. The problems with such visualisations is that they can very easily become incomprehensible themselves by trying to force large amounts of information into a small space, relying solely on two dimensions for the representations and because generally the information is presented in a static way. There are many different issues that must be considered for three-dimensional visualisation, especially when those visualisations are of intangible software systems, and a selection of these are presented and discussed. - 1 - 1. Introduction Software visualisation is an important tool in the maintainer's armoury. It is a technique that can, when designed and used effectively, aid him in his quest to understand existing program code. This document provides an introduction to software visualisation issues, with pr...

Understanding Code For Reuse

by Stuart Marshall , 1999
"... The software industry currently has problems meeting the high demand for software. One proposed solution is to reuse code from old projects, however this does not seem to be working. One reason could be the time and effort required to reuse. We identify the understanding of code as a key component o ..."
Abstract - Cited by 5 (3 self) - Add to MetaCart
The software industry currently has problems meeting the high demand for software. One proposed solution is to reuse code from old projects, however this does not seem to be working. One reason could be the time and effort required to reuse. We identify the understanding of code as a key component of the time and effort spent during reuse, and look at tools that can help programmers to better understand code. Tools can utilise two approaches to support understanding: allowing the programmer to first hand experience of executing the code, and creating visualisations from these executions. We design, implement, and evaluate a tool that uses these two approaches.

The Information Mural: Increasing Information Bandwidth in Visualizations

by Dean F. Jerding, John T. Stasko - Georgia Institute of Technology , 1996
"... Information visualizations must allow users to browse information spaces and focus quickly on items of interest. Being able to see some representation of the entire information space provides an initial gestalt overview and gives context to support browsing and search tasks. However, the limited num ..."
Abstract - Cited by 5 (0 self) - Add to MetaCart
Information visualizations must allow users to browse information spaces and focus quickly on items of interest. Being able to see some representation of the entire information space provides an initial gestalt overview and gives context to support browsing and search tasks. However, the limited number of pixels on the screen constrain the information bandwidth and make it difficult to completely display large information spaces. The Information Mural is a two-dimensional, reduced representation of an entire information space that fits entirely within a display window or screen. The mural creates a miniature version of the information space using visual attributes such as grayscale shading, intensity, color, and pixel size, along with anti-aliased compression techniques. Information Murals can be used as stand-alone visualizations or in global navigational views. We have built several prototypes to demonstrate the use of Information Murals in visualization applications; subject matter ...

3-D Visualization of Software Structure

by Mathew L. Staples, James M. Bieman - Advances in Computers, Volume 49 , 1998
"... A common and frustrating problem in software engineering is the introduction of new faults as a side-effect of software maintenance. An understanding of all of the relationships that exist between modified software and the rest of a system can limit the introduction of new faults. For large systems, ..."
Abstract - Cited by 5 (0 self) - Add to MetaCart
A common and frustrating problem in software engineering is the introduction of new faults as a side-effect of software maintenance. An understanding of all of the relationships that exist between modified software and the rest of a system can limit the introduction of new faults. For large systems, these relationships can be numerous and subtle. The relationships can be especially complex in object-oriented systems that include inheritance and dynamic binding. Software visualization can potentially ease both impact analysis and general program understanding. Software visualization can facilitate program understanding by graphically displaying important software features. However, despite recent success in developing useful and intuitive graphical representations for certain aspects of software, current software visualization systems are limited by their lack of scalability --- the ability to visualize both small and large-scale software entities. This paper demonstrates that three-dim...

Virtual 3d worlds for enhanced software visualisation

by Lachlan Keown , 2000
"... 3D visualizations of software can be used to highlight relationships between system compo-nents, and also allow focussing on the internals of software, particularly when applied to object oriented software. Such visualizations allow software engineers to comprehend larger software systems, due to mo ..."
Abstract - Cited by 5 (0 self) - Add to MetaCart
3D visualizations of software can be used to highlight relationships between system compo-nents, and also allow focussing on the internals of software, particularly when applied to object oriented software. Such visualizations allow software engineers to comprehend larger software systems, due to more information being available through the use of a third dimen-sion. An architecture has been designed to carry out such visualizations. Major features of this architecture are a meta language to describe object oriented systems, a description language to generate generic visualizations, and an automated pipeline for generating visual-izations. Using this architecture, several visualizations have been generated and analysed, to

Program visualization - the state of the art

by Sharon Ellershaw, Michael Oudshoorn , 1994
"... Program visualization focuses on the graphical representation of an executing program and its data. The information is presented in a form designed to enhance both the understanding and productivity of the programmer through the efficient use of the human visual system. The programmer is able to obs ..."
Abstract - Cited by 4 (0 self) - Add to MetaCart
Program visualization focuses on the graphical representation of an executing program and its data. The information is presented in a form designed to enhance both the understanding and productivity of the programmer through the efficient use of the human visual system. The programmer is able to observe patterns of behaviour within the executing code and rapidly detect a departure from the expected behaviour patterns in an accurate way. However, depending on the programming paradigm and architectural platform that is utilized, the variety and manner in which information is best presented varies somewhat. This paper attempts to analyse the visualization requirements for a variety of programming paradigms and architectural platforms, detailing the paradigm and platform specific needs, in addition to general visualization requirements that extend across paradigms and platforms. A survey of current visualization systems is presented which examines each system in detail and categorizes it by the programming paradigms/platform that it is designed to visualize. A comparison of the various visualization systems is also presented and the achievements and failures of current visualization technology are highlighted and commented upon. 1.
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University