Understanding and analyzing the execution of parallel and distributed
systems is both important and challenging. Researchers have developed
visualization tools to support users in confronting this challenge. Ho
wever, experience shows that these tools can mislead as well as inform
the viewer. This article discusses ways that visualization systems ca
n hinder the viewer's comprehension of a program's execution. It then
presents three characteristics that visualizations of concurrent syste
ms should exhibit to promote an understanding of concurrent computatio
ns. The authors reveal how visualizations with reorderable, synchronou
s, and independent displays support an accurate representation of conc
urrent computations. They also describe the implementation of these es
sential characteristics with their own visualization tool environment,
called Parade.