Plenary Lecture
Visualizing Programs

Professor Harald Wertz
Department of Computer Science
Laboratoire d' Informatique Avancee de Saint- Denis (LIASD)
2, Rue de la Liberte
93526 Saint-Denis Cedex, France
E-mail: hw@ai.univ-paris8.fr
Abstract: During their live cycle,
programs have a tendency to grow and, by the way, to increase their
complexity, thus becoming harder and harder to read, to understand and to
maintain. But understanding programs is necessary for their continuous
evolution, their maintenance and debugging.
Various tools, such as metrics, abstract interpretation, model checking,
code coverage, program slicing, data-flow analysis, pointer analysis, call
graphs, data-flow graphs and dependency graphs (to name but a few), have
been developed to help programmers in their understanding of the structure
and functioning of programs. In this lecture we will present various ways of
displaying graphs and focus on the impact of visualization of such static
and dynamic data dependencies in the context of program maintenance. We will
examine several prototypes we have developed in our laboratory, detailing
especially the different visualizations we propose, which are aimed to
minimize the conceptual overload in order to allow users to deal with hard
to understand or buggy programs.
Brief Biography of the Speaker:
Harald Wertz was born in 1947 in Friedrichshafen, Germany, and is living in
France since 1971. He is Professor of Computer Science at the Universite
Paris 8, France, since 1978, and he is a founding member of the
Franco-Georgian Institute. He loves to teach introductory programming
classes, artificial intelligence and software engineering. His research
focuses mainly on the intersection between artificial intelligence and
software engineering: finding computational methods helping to understand,
debug and meaningfully represent programs. His doctoral thesis, at the
University of Paris 6, described a Lisp-system able to automatically debug
programs written by novice programmers. His ‘these d’etat es science’, at
the Universite de Vincennes, described the structure, implementation and use
of an integrated and incremental programming environment, which included
(then) novel features such as automatic documentation, automatic
construction of outstanding task lists, on the fly correction, reverse
execution and executable program annotation. He is the author of three
books, several book chapters and some seventy papers.