The Use of Program Dependence Graphs in Software Engineering
Susan Horwitz and Thomas Reps
This paper describes a language-independent program
representation --- the program dependence graph --- and discusses
how program dependence graphs, together with operations such as
program slicing, can provide the basis for powerful programming tools
that address important software-engineering problems, such as
understanding what an existing program does and how it works,
understanding the differences between several versions of a program,
and creating new programs by combining pieces of old programs.
The paper primarily surveys work in this area that has been carried
out at the University of Wisconsin during the past five years.
(Click here to access the paper:
PostScript,
PDF.)
University of Wisconsin