The Star Diagram Project

The function of a useful software system quickly evolves beyond the strengths of its original design, making the software structure unnatural and difficult to comprehend. A related problem is that most changes to software are performed in the fastest manner, degrading the software structure further. As a consequence, a ``single'' change to the software tends to be distributed over the entire system, rather than localized in a module.

The Star Diagram is a graphical visualization of both how such a change is distributed throughout a system, and how the various code fragments to be changed are related to each other. As a consequence, it can help a programmer plan out a change with respect to how the change is distributed and how the fragments are related to each other. Tools based on the star diagram have been developed for C, Ada, and Tcl/Tk.

Available at the StarTool site