The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Visualization of Data Structures in Software

Does anyone of any software that will via static analysis of C/C++ or Java source code provide a visual representation of the data strucrtures? I've tried googling it but with no success so far.
matthew Send private email
Friday, March 04, 2005
Well, doxygen coupled with Graphviz will create UML-ish diagrams for you.

I've used it specifically to help me unwind some of our developers' finest spaghetti inheritance.
hoser Send private email
Friday, March 04, 2005
It's not possible. Diagramming an arbitrarily large structure like a binary tree or a linked list by static analysis reduces to the halting problem.
Anomalous Blowhard
Friday, March 04, 2005
Understand for C++ ( will ingest large quantities of C++ source code (1.5 million SLOC, 20,000 files, no problem), and provide graphical analyses of the results.  A Java version is available.  A Perl API to the resulting database is also supplied.

The graphical displays include class diagrams of class declarations, and structure charts of call sequences.  The above poster does have a point -- for arbitrary code, the structure chart can be quite large.

It also incorporates a code navigator, so you can right-click on any declaration and immediatly go to the file where it is defined.  Highly recommended.

UMLStudio ( is not as capable a source-browser as Understand for C++, but will generate class diagrams from existing code quite well.  A single copy works for Ada, C++, or Java.  Again, for arbitrarily large code, you'll have to edit the resulting class diagram yourself for spacing and meaningful connections between classes -- but it's a really good start.

Both tools are around $500 each, and well worth the investement.
Friday, March 04, 2005
Enterprise Architect by Sparx can reverse-engineer your source code and create UML diagrams from your classes. Only US$149, too...
Chris Nahr Send private email
Saturday, March 05, 2005
Thanks for the advice folks, Understand looks like a good bet, all I have to do is convince my line manager!

Sunday, March 06, 2005

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz