Different levels and abstractions: systems, programs, algorithms
Different types of elements: code, control, data, ...
Several taxonomies and studies
Implementations are usually object-oriented
Program Visualization is not Visual Programming
(and Visual C++ or Visual Basic neither!)