usenix conference policies
Dagger: A Tool to Generate Program Graphs
Yih-Farn (Robin) Chen, AT&T Bell Laboratories
Dagger is a tool that generates program graphs to selectively visualize a software structure. The design of dagger achieves a strong degree of language independence by exploiting the duality between a class of entity-relationship databases and attributed directed graphs. This paper describes the C and C++ versions of dagger, which map a selected subset of relationships stored in a program database to a graph specification, decorate the graph with display attributes, and then pass it to layout tools or interactive graph browsers. Dagger takes output from database queries to generate a large variety of interesting program graphs, including header file hierarchy, module binding, and type inheritance graphs. This paper describes the graph generation process surrounding dagger and a sample of tools involved in the process. In particular, we describe how a closure operator works in tandem with dagger to control graph complexity by generating reachability graphs where sub-structures are selectively ignored or expanded. Our experience in applying dagger to several software projects has demonstrated its capability in abstracting and visualizing complex software structures without much overhead. All program graphs presented in this paper are tagged with timing statistics.
author = {Yih-Farn (Robin) Chen},
title = {Dagger: A Tool to Generate Program Graphs},
booktitle = {USENIX 1994 UNIX Applications Development Symposium (USENIX 1994 UNIX Applications Development Symposium)},
year = {1994},
address = {Toronto, Ontario},
url = {https://www.usenix.org/conference/usenix-1994-unix-applications-development-symposium/dagger-tool-generate-program-graphs},
publisher = {USENIX Association},
month = apr
}
connect with us