I am recently working on some long and obscure codes written by some other smart guys. I'm thinking of generating the Data Flow Diagrams and the Flowcharts to facilitate my work. Is there any kinds of software that can do this job automatically? P.S. Most of the codes are in C and Fortran.
-
Can you elaborate a bit on where the data for the diagrams is supposed to come from? Do you expect the program to do a static analysis of your code before to extract the data? – lothar May 01 '09 at 18:02
-
Actually what I need to do is to better understand the original source codes so as to modify, improve & upgrade them, e.g., to add extra new features and remove obsolescences. I hope I can track the data flow among functions, procedures, data sources/sinks. Kinda static code analysis. – Zatuch May 01 '09 at 19:09
4 Answers
Dataflow diagrams are harder because they require most of a compiler front end to derive the basic information needed to draw them. But you can get call and caller graphs as well as some kinds of entity relationship diagrams out of Doxygen with Graphviz.
Also, Graphviz is generally useful for drawing all kinds of graphs with readable layouts from raw data. It is easy to walk a tree structure and output a description in the DOT language for Graphviz to draw, for example.
Set Doxygen up with the right options, and turn it loose on the legacy code and you will get the beginnings of an internals document to help find your way around too.

- 41,948
- 7
- 88
- 128
Dia is a program that resembles Microsoft Visio. It isn't as smooth, but it gets the job done. I always use this professionally when Visio isn't available. This is mainly for UML and Flowcharts, exports to png, and vectors, and I think PDF's as well.

- 2,740
- 3
- 22
- 44
-
1The user (as I) is looking for a way to automatically convert source code into a flow chart. I looked at the Dia documentation and didn't see anything that says it supports automated source to flow charts. – yamex5 Aug 06 '18 at 00:59