Discussion questions from CS 7390 lecture
Date: 1/12/96
Presented by: John Stasko
Topic: Two taxonomies of software visualization
- "Intention Content" is a curious term. Can you explain it and its
importance in a bit more detail?
- Is there any way to have automation and high intention content at the same
time?
- Automation seems to be independent of what a software visualization system
does or is. ie. automation can be added a priori if a system is successfull.
Why make a distinction in this term?
- How does the description of automation by Stasko & Patterson differ from
the description of specification method by Roman & Cox?
- Is there a more objective formal definition of animation? What do the
terms "sufficient" and "transform continuously" mean in this context?
- How is animation a continuous dimension if, by definition, a visualization
is either animated or not animated.
- Couldn't "rapid display" of valid states imply animation without any
"in between" states, e.g. an accelerated animation of a thermometer?
- Do you know of any dangers in showing in-between states that might confuse
rather than help the user?
- In Stasko's paper, for the animation part, how is the in-between generated
using linear interpolation or some other techniques?
- Can annotation be done in such a way that it can easily withstand changes in
program code/structure?
- How does Stasko's & Peterson's taxonomy account for or deal with the user
and, in particular, user interaction with the visualization system? This seems
to be the main difference in the taxonimies in the 2 papers. If it doesn't
deal with user interaction, is there a reason why?
- Roman & Cox's paper and taxonomy is based on the mapping of a program to a
graphical representation. It discounts all other taxonomies because they are
not based on well-formulated models in software visualization. But, the authors
give no basis or support for their "model". In fact, they barely discuss their
mapping model. Is their mapping model a widely accepted model in software
visualization? Is this why there was no defense for their model campared to
other models?
- In Roman's paper, the author claims that the taxonomy is derived directly
from the formal model of program visualization as a mapping. How is the
taxonomy connected with the model?
- Roman & Cox lay out 5 criteria for evaluating software visualization
systems. To what extent are the other four limited or pre-defined by the choice
of scope?
- What benefits does software visualization provide for the end-users of
large software systems? In particular, how can software visualization be
used to assist end-users of database systems, on-line transaction processing
systems, or command, control, and communication (C3) systems where the end-
user must often wait while the software system performs some task?
- How might software visualization appropriateness be determined? What
information would be required about the goals/needs of the intended user
(programmer, student, end-user, etc.) and the capabilities of the software to
be visualized?
- What is meant by "analytical presentation"?
- What is declaration (in the specification method of Roman & Cox, pg. 19)
- When you start making these techniques interactive, doesn't (or shouldn't)
the boundary between visualization & visual programming become much less
definite? Should the programmer have to go back to his code to make changes
that come up in the visualization?
- What in software visualization is different from data or information
visualization? Is it a subclass, a mixing of both, or ....? And what in the
taxonomy is specific to software visualization (vs. data or info vis)?
- How do you relate/differentiate aspect, abstraction, and automation (of
Stasko and Patterson) with Scope, abstraction, and specification method (of
Roman and Cox)?
- What are the similarities/differences between the various taxonomy
classification dimensions mentioned in the papers? Why are some chosen over
others? Why is one better than another?
- Have any studies been performed to gauge the effectiveness of algorithm
animation as learning aids, and if so, what are the results?
- Are the four dimensions suggested by Stasko and Patterson adequate to
classify the exisiting software visualization systems, or are the five
dimensions suggested by Roman and Cox necessary?
- For non-imperative languages (functional, logic, etc.) what are the
important programming aspects and how are those visualized?