In a reverse engineering course, we learned to use a series of tools to produce a high level organization of software using Module Dependency Graphs (MDG) based on relationships of interest between classes. After applying a clustering algorithm (using a tool called bunch) on large graphs for simplification, we would view simplified MDG's using Dotty. Here are some relavant links for those interested:
www.mcs.drexel.edu/~bmitchel/research/tooldemo.pdf
http://flourish.org/cinclude2dot/http://tarind.com/depgraph.html
In a reverse engineering course, we learned to use a series of tools to produce a high level organization of software using Module Dependency Graphs (MDG) based on relationships of interest between classes. After applying a clustering algorithm (using a tool called bunch) on large graphs for simplification, we would view simplified MDG's using Dotty. Here are some relavant links for those interested: www.mcs.drexel.edu/~bmitchel/research/tooldemo.pdf http://flourish.org/cinclude2dot/ http://tarind.com/depgraph.html