CSD (Control Structure Diagram)
---------------------------------------

The CSD is an algorithmic-level diagram intended to improve the comprehensibility of source code by clearly depicting control constructs, control paths, and the overall structure of each program unit.  The CSD was created as an alternative to flowcharts and other graphical representations for algorithms.  The major goal was an intuitive and compact graphical notation that was easy to use manually and relatively straightforward to automate.  The CSD, with its new program unit symbols, is a natural extension to architectural diagrams such as data flow diagrams, structure charts, module diagrams, and object diagrams.

The emphasis in the GRASP research project has been to provide automatic generation of the CSD from Ada95, C, C++, Java, and VHDL source code to support software development, maintenance, and re-engineering.  With this automated support, the CSD has the potential to replace traditional pretty-printed source code.  Future versions of GRASP will include CSD gneration for C++.

The CSD was created by James H. Cross II.


