In this paper, we present demonstration of a 2Dplus3D visual interactive environment called ESSAVis++. It is an enhanced version of the ESSAVis platform and was designed to overcome the limitations of the previous ver...
详细信息
Reverse engineering methods produce different descriptions of software architectures. In this article we address the task of exploring and comparing these descriptions. We present a novel visualization technique to co...
详细信息
ISBN:
(纸本)9781450304948
Reverse engineering methods produce different descriptions of software architectures. In this article we address the task of exploring and comparing these descriptions. We present a novel visualization technique to compare architectures consisting of a decomposition of the software system and the dependencies among the code entities. This technique uses a visual representation of an adjacency matrix to provide a scalable analysis tool. Advanced layout features such as an automatic level of detail algorithm and sorting strategies improve the readability of the visualization. Using a case study, we show how this technique can be applied in practice.
Reverse engineering methods produce different descriptions of software architectures. In this article we address the task of exploring and comparing these descriptions. We present a novel visualization technique to co...
详细信息
Reverse engineering methods produce different descriptions of software architectures. In this article we address the task of exploring and comparing these descriptions. We present a novel visualization technique to compare architectures consisting of a decomposition of the software system and the dependencies among the code entities. This technique uses a visual representation of an adjacency matrix to provide a scalable analysis tool. Advanced layout features such as an automatic level of detail algorithm and sorting strategies improve the readability of the visualization. Using a case study, we show how this technique can be applied in practice.
software cities are visualizations of software systems in the form of virtual cities. They are used as platforms to integrate a large variety of product- and process-related analysis data. Their usability, however, fo...
详细信息
software cities are visualizations of software systems in the form of virtual cities. They are used as platforms to integrate a large variety of product- and process-related analysis data. Their usability, however, for real-world software development often suffers from their inability to appropriately deal with software changes. Even small structural changes can disrupt the overall structure of the city, which in turn corrupts the mental maps of its users. In this article we describe a systematic approach to utilize the city metaphor for the visualization of evolving software systems as growing software cities. The main contribution is a new layout approach which explicitly takes the development history of software systems into account. The approach has two important effects: first, it creates a stable gestalt of software cities even when the underlying software systems evolve;thus, by preserving its users' mental maps these cities are especially suitable for use during ongoing system development. Second, it makes history directly visible in the city layouts, which allows for supporting novel analysis scenarios. We illustrate such scenarios by presenting several thematic cities' maps, each capturing specific development history aspects.
Some software packages offer the user soft advice: recommendations that are intended to help the user create high-quality artifacts but which may turn out to be bad advice. It is left to the user to determine whether ...
详细信息
Some software packages offer the user soft advice: recommendations that are intended to help the user create high-quality artifacts but which may turn out to be bad advice. It is left to the user to determine whether the soft advice really will improve quality and to decide whether to adopt it. visualizations can help the user in making this decision, but we believe that conventional visualizations are less than ideal. In this article, we describe an interactive ambient visualization to help users identify, understand, and interpret soft advice. Our visualization was developed to help programmers interpret code smells, which are indications that a software project may be suffering from design problems. We describe a laboratory experiment with 12 programmers that tests several hypotheses about our visualization. The findings suggest that our tool helps programmers to identify smells more effectively and to make more informed judgments about the design of the program under development. We then describe an application of our visualization technique in another domain: an English style and grammar advisor. This second application suggests that our technique can be applied to several domains and also suggests how the technique must be varied to make it domain specific.
In this paper we present Heapviz, a tool for visualizing and exploring snapshots of the heap obtained from a running Java program. Unlike existing tools, such as traditional debuggers, Heapviz presents a global view o...
详细信息
In this paper we present Heapviz, a tool for visualizing and exploring snapshots of the heap obtained from a running Java program. Unlike existing tools, such as traditional debuggers, Heapviz presents a global view of the program state as a graph, together with powerful interactive capabilities for navigating it. Our tool employs several key techniques that help manage the scale of the data. First, we reduce the size and complexity of the graph by using algorithms inspired by static shape analysis to aggregate the nodes that make up a data structure. Second, we implement a powerful visualization component whose interactive interface provides extensive support for exploring the graph. The user can search for objects based on type, connectivity, and field values;group objects;and color or hide and show each group. The user may also inspect individual objects to see their field values and neighbors in the graph. These interactive abilities help the user manage the complexity of these huge graphs. By applying Heapviz to both constructed and real-world examples, we show that it provides programmers with a powerful and intuitive tool for exploring program behavior.
Visual representations of node-link diagrams are very important for the software development process. In many situations, large diagrams have to be explored, whereby diagram elements of interest are often clipped from...
详细信息
Visual representations of node-link diagrams are very important for the software development process. In many situations, large diagrams have to be explored, whereby diagram elements of interest are often clipped from the viewport and are therefore not visible. Thus, in state-of-the-art modeling tools, navigation is accompanied by time-consuming panning and zooming. One solution to this problem is offscreen visualization techniques. Usually, they indicate the existence and direction of clipped elements by overlays at the border of the viewport. In this article, we contribute the application of offscreen visualization techniques to the domain of node-link diagrams in general and to Unified Modeling Language class diagrams in particular. The basic idea of our approach is to represent offscreen nodes by proxy elements located within an interactive border region around the viewport. The proxies show information of the associated offscreen nodes and can be used to quickly navigate to the respective node. In addition, we contribute techniques that preserve the routing of edges during panning and zooming and present strategies to make our approach scalable to large diagrams. We conducted a formative pilot study of our first prototype. Based on the observations made during the evaluation, we suggest how particular techniques should be combined. Finally, we ran a user evaluation to compare our technique with a traditional zoom+pan interface. The results showed that our approach is significantly faster for exploring relationships within diagrams than state-of-the-art interfaces. We also found that the offscreen visualization combined with an additional overview window did not improve the orientation within an unknown diagram. However, an overview should be offered as a cognitive support.
The proceedings contain 32 papers. The topics discussed include: acm SIGSOFT distinguished paper award: an interactive ambient visualization for code smells;CodePad: interactive spaces for maintaining concentration in...
ISBN:
(纸本)9781450304948
The proceedings contain 32 papers. The topics discussed include: acm SIGSOFT distinguished paper award: an interactive ambient visualization for code smells;CodePad: interactive spaces for maintaining concentration in programming environments;user evaluation of polymetric views using a large visualization wall;software evolution storylines;a map of the heap: revealing design abstractions in runtime structures;dependence cluster visualization;towards anomaly comprehension: using structural compression to navigate profiling call-trees;embedding spatial softwarevisualization in the IDE: an exploratory study;visualizing windows system traces;understanding complex multithreaded software systems by using trace visualization;acm SIGSOFT distinguished paper award: off-screen visualization techniques for class diagrams;an automatic layout algorithm for BPEL processes;and visual comparison of software architectures.
Understanding legacy systems is one of the major tasks in software engineering. The relations between different entities, e.g., packages and classes in Java, are important for this understanding process. We propose a ...
详细信息
ISBN:
(纸本)9781450304948
Understanding legacy systems is one of the major tasks in software engineering. The relations between different entities, e.g., packages and classes in Java, are important for this understanding process. We propose a matrix based visualization of the relations between these software entities. We explore several design decisions and show what works and what does not work.
softwarevisualization research has typically focussed on domain specific tools and techniques. In this paper, we evaluate applying a general purpose visual analytics tool Jigsaw to visualize the JHotDraw open source ...
详细信息
ISBN:
(纸本)9781450304948
softwarevisualization research has typically focussed on domain specific tools and techniques. In this paper, we evaluate applying a general purpose visual analytics tool Jigsaw to visualize the JHotDraw open source software system. We describe how Jigsaw can be applied to visualize software, and show how it can support some program comprehension tasks.
暂无评论