|
ABSTRACT
Hierarchical graphs are widely used as models of the structure of software systems. A central problem in the visualization of hierarchical graphs is the computation of layouts, i.e. of positions of the nodes in two- or three-dimensional space. We derive requirements for graph layouts from various software analysis questions, and classify the required layouts along three dimensions: layouts with meaningful distances between single nodes vs. layouts with meaningful distances between groups of nodes, layouts reflecting adjacency vs. layouts reflecting hierarchy, and layouts that faithfully reflect the size of subgraphs vs. layouts where certain subgraphs are magnified. We present a fairly simple and theoretically validated energy model for computing such layouts.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Balzer, M., Noack, A., Deussen, O., and Lewerentz, C. 2004. Software landscapes: Visualizing the structure of large software systems. In Proc. Symposium on Visualization (VisSym 2004), 261--266.
|
| |
2
|
Barnes, J., and Hut, P. 1986. A hierarchical O(N log N) force-calculation algorithm. Nature 324, 446--449.
|
 |
3
|
Lyn Bartram , Albert Ho , John Dill , Frank Henigman, The continuous zoom: a constrained fisheye technique for viewing and navigating large information spaces, Proceedings of the 8th annual ACM symposium on User interface and software technology, p.207-215, November 15-17, 1995, Pittsburgh, Pennsylvania, United States
[doi> 10.1145/215585.215977]
|
| |
4
|
|
| |
5
|
|
| |
6
|
|
 |
7
|
Christian Collberg , Stephen Kobourov , Jasvir Nagra , Jacob Pitts , Kevin Wampler, A system for graph-based visualization of the evolution of software, Proceedings of the 2003 ACM symposium on Software visualization, June 11-13, 2003, San Diego, California
[doi> 10.1145/774833.774844]
|
 |
8
|
|
| |
9
|
|
| |
10
|
|
| |
11
|
Eades, P., and Huang, M. L. 2000. Navigating clustered graphs using force-directed methods. Journal of Graph Algorithms and Applications 4, 3, 157--181.
|
| |
12
|
Eades, P. 1984. A heuristic for graph drawing. Congressus Numerantium 42, 149--160.
|
| |
13
|
P. J. Finnigan , R. C. Holt , I. Kalas , S. Kerr , K. Kontogiannis , H. A. Müller , J. Mylopoulos , S. G. Perelgut , M. Stanley , K. Wong, The software bookshelf, IBM Systems Journal, v.36 n.4, p.564-593, 1997
|
| |
14
|
|
| |
15
|
|
| |
16
|
|
 |
17
|
|
| |
18
|
Huang, M. L. 1999. Online Information Visualization of Huge Data Spaces. PhD thesis, Department of Computer Science and Software Engineering, University of Newcastle.
|
| |
19
|
|
| |
20
|
Koschke, R. 2000. Atomic Architectural Component Recovery for Program Understanding and Evolution. PhD thesis, Institut für Informatik, Universität. Stuttgart.
|
 |
21
|
|
| |
22
|
Misue, K., Eades, P., Lai, W., and Sugiyama, K. 1995. Layout adjustment and the mental map. Journal of Visual Languages and Computing 6, 2, 183--210.
|
| |
23
|
Müller, H. A., Orgun, M. A., Tilley, S. R., and Uhl, J. S. 1993. A reverse engineering approach to subsystem structure identification. Journal of Software Maintenance: Research and Practice 5, 4, 181--204.
|
| |
24
|
|
| |
25
|
Noack, A. 2004. An energy model for visual graph clustering. In Proc. 11th International Symposium on Graph Drawing (GD 2003), Springer-Verlag, LNCS 2912, 425--436.
|
| |
26
|
Noack, A. 2004. Visual clustering of graphs with nonuniform degrees. Tech. Rep. 02/04, Institute of Computer Science, Brandenburg University of Technology at Cottbus.
|
| |
27
|
Noik, E. G. 1993. Layout-independent fisheye views of nested graphs. In Proc. IEEE Workshop on Visual Languages (VL 1993), 336--341.
|
| |
28
|
|
| |
29
|
Parker, G., Franck, G., and Ware, C. 1998. Visualization of large nested graphs in 3d: Navigation and interaction. Journal of Visual Languages and Computing 9, 3, 299--317.
|
| |
30
|
|
| |
31
|
|
| |
32
|
Reiss, S. P. 1995. An engine for the 3d visualization of program information. Journal of Visual Languages and Computing 6, 3, 299--323.
|
 |
33
|
|
 |
34
|
Doug Schaffer , Zhengping Zuo , Saul Greenberg , Lyn Bartram , John Dill , Shelli Dubs , Mark Roseman, Navigating hierarchically clustered networks through fisheye and full-zoom methods, ACM Transactions on Computer-Human Interaction (TOCHI), v.3 n.2, p.162-188, June 1996
[doi> 10.1145/230562.230577]
|
 |
35
|
|
| |
36
|
Storey, M.-A. D., Fracchia, F. D., and Müller, H. A. 1999. Customizing a fisheye view algorithm to preserve the mental map. Journal of Visual Languages and Computing 10, 3, 245--267.
|
| |
37
|
Sugiyama, K., and Misue, K. 1991. Visualization of structural information: Automatic drawing of compound digraphs. IEEE Transactions on Systems, Man, and Cybernetics 21, 4, 876--892.
|
| |
38
|
Sugiyama, K., and Misue, K. 1995. Graph drawing by the magnetic spring model. Journal of Visual Languages and Computing 6, 3, 217--231.
|
| |
39
|
|
| |
40
|
|
| |
41
|
|
| |
42
|
Ware, C., Franck, G., Parkhi, M., and Dudley, T. 1997. Layout for visualizing large software structures in 3d. In Proc. 2nd International Conference on Visual Information Systems (VISUAL 1997), 215--223.
|
INDEX TERMS
Primary Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.7
Distribution, Maintenance, and Enhancement
Additional Classification:
I.
Computing Methodologies
I.3
COMPUTER GRAPHICS
I.3.8
Applications
I.5
PATTERN RECOGNITION
I.5.3
Clustering
Keywords:
clustering,
focus + context,
force-directed methods,
graph drawing,
information visualization,
program understanding,
refactoring,
reverse engineering,
software visualization
|