Adding Control-Flow to a Visual Data-Flow Representation

  • Authors:
  • David Dearman;Anthony Cox;Maryanne Fisher

  • Affiliations:
  • Dalhousie University, Canada;Dalhousie University, Canada;Saint Mary's University, Canada

  • Venue:
  • IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Previous studies have shown that novices do not tend to extract or use data-flow information during program comprehension. However, for impact analysis and similar tasks, data-flow information is necessary and highly relevant. Visual data-flow programming languages, such as Prograph/CPX, have been commercially successful, suggesting that they provide effective data-flow representations. To explore data-flow representations for program comprehension, we augment Prograph data-flow programs with control-flow features to determine the effects on comprehension. We hypothesize that combined control/data-flow representations will aide comprehension better than data-flow alone. To validate this hypothesis, we present the results of an experiment comparing three combined representations against a data-flow only representation. While the addition of control-flow was found to be beneficial, the complexity of the representations plays an important role. Complex and highly detailed control-flow, although perceived as useful, is less effective when combined with data-flow, than less detailed and less complex control-flow descriptions. This finding suggests a tradeoff exists between a representation's content and complexity. We found a nested representation describing inter-method control-flow to be the most effective for supporting program comprehension.