Analysis of Visual Languages for Parallel Programming

  • Nenad Stankovic
Part of the The Springer International Series in Engineering and Computer Science book series (SECS, volume 734)


Software engineering is a complex process that typically follows a number of distinct phases such as requirements engineering, system analysis and design, implementation and testing. Throughout the process different skills, business aspects, and levels of detail are required to complete each phase, and the form of presenting and conveying information changes to improve understanding. This is a dynamic process that often crosses phase boundaries, and requires that people of different background or skills communicate effectively and unambiguously. Writing as visible speech transforms our thoughts into nonperishable media, and any reader trained in the conventions can reconstruct the meaning. It has been proven that visual structures and relationships are easier to reason about than similar linguistically described structures [18]. The diagram became indispensable as a medium of knowledge representation and exchange of ideas and concepts among interested parties, even when they do not speak the same language. It can be grasped quickly, and navigated easily by following the visual clues between the information vortices.


Data Flow Parallel Programming Software Visualization Visual Language Control Flow Graph 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A.L. Beguelin (1990) Deterministic Parallel Programming in Phred, PhD Thesis, University of Colorado, at Boulder.Google Scholar
  2. 2.
    A. Beguelin, J.J. Dongarra, G.A. Geist, R. Manchek and V.S. Sunderam (1992) HeNCE: Graphical Development Tools for Network-Based Concurrent Computing, SHPCC-92 Proceedings on Scalable High Performance Computing Conference, Williamsburg, VA, 129–136.Google Scholar
  3. 3.
    J.C. Browne, S.I. Hyder, J.J. Dongarra, K. Moore and P.W. Newton (1995) Visual Programming and Debugging for Parallel Computing, IEEE Parallel and Distributed Technology, 75–83.Google Scholar
  4. 4.
    M.M. Burnett and H.J. Gottfried (1998) Graphical Definitions: Expanding Spreadsheets Languages Through Direct Manipulation and Gesture, ACM Transactions on Computer-Human Interaction, 5(1), 1–33.CrossRefGoogle Scholar
  5. 5.
    M. Campione and K. Walrath (1998) The Java Tutorial Second Edition: Object-Oriented Programming for the Internet, Addison-Wesley.Google Scholar
  6. 6.
    M.D. Coe (1999) Breaking the Maya Code, Revised Edition, Thames and Hudson, New York, NY.Google Scholar
  7. 7.
  8. I.T. Foster (1995) Designing and Building Parallel Programs: Concepts and Tools for Parallel Software Engineering, Addison-Wesley Publishing Company.Google Scholar
  9. 9.
    A.G. Geist, A. Beguelin, J.J. Dongarra, W. Jiang, R. Manchek and V.S. Sunderam (1993) PVM 3 User’s Guide and Reference Manual, Technical Report ORNL/TM-12187, Oak Ridge National Laboratory.Google Scholar
  10. 10.
    J. Good (1999) Programming Paradigms, Information Types and Graphical Representations: Empirical Investigations of Novice Program Comprehension. Ph.D. Thesis, University of Edinburgh.Google Scholar
  11. 11.
    J. Gosling, B. Joy, and G. Steele (1996) The Java Language Specification. Addison-Wesley.Google Scholar
  12. 12.
    T.R.G. Green, M. Petre and R.K.E. Bellamy (1991) Comprehensibility of Visual and Textual Programs: A Test of Superlativism Against the ‘Match-Mismatch’ Conjecture, Empirical Studies of Programmers: 4 th Workshop, Norwood, NJ: Ablex, 121–146.Google Scholar
  13. 13.
    T.R.G. Green and M. Petre (1996) Usability Analysis of Visual Programming Environments: A ‘Cognitive Dimensions’ Framework, Journal of Visual Languages and Computing, 7(2), 131–174.CrossRefGoogle Scholar
  14. 14.
    T.R.G. Green (2000) Instructions and Descriptions: Some Cognitive Aspects of Programming and Similar Activities, Proceedings of Working Conference on Advanced Visual Interfaces AVI 2000, New York, ACM Press, pp.21–28.Google Scholar
  15. 15.
    W Gropp, E. Lusk and A. Skjellum (1994) Using MPI, Portable Parallel Programming with the Message-Passing Interface, The MIT Press.Google Scholar
  16. 16.
    D. Kranzlmüller, S. Grabner and J. Volkert (1996) Event Graph Visualization for Debugging Large Applications, Proceedings of SPDT′96, ACM SIGMETRICS Symposium on Parallel and Distributed Tools, Philadelphia, PA, 108–117.Google Scholar
  17. 17.
    L. Lamport (1978) Time, Clocks, and the Ordering of Events in a Distributed System, Communication of the ACM, 21(7), 558–565.MATHCrossRefGoogle Scholar
  18. 18.
    J. Larkin and H. Simon (1987) Why a Diagram is (Sometimes) Worth 10,000 Words. Cognitive Science, 11, 65–100.CrossRefGoogle Scholar
  19. 19.
    J. Mackinlay and M.R. Genesereth (1985) Expressiveness and Language Choice. Data Knowledge Engineering, 1(1), 17–29.CrossRefGoogle Scholar
  20. 20.
    B. P. Miller (1993) What To Draw? When To Draw? An essay on Parallel Program Visualization. Journal of Parallel and Distributed Computing, 18, 265–269.CrossRefGoogle Scholar
  21. 21.
    MPI Forum (1996) MPI: A Message Passing Interface Standard. Message Passing Interface Forum, University of Tennessee, Knoxwille, TN.Google Scholar
  22. 22.
    P.W. Newton and J.C. Browne (1992) The CODE 2.0 Graphical Parallel Programming Language, Proceedings of the ACM International Conference on Supercomputing.Google Scholar
  23. 23.
    P.W. Newton (1993) A Graphical Retargetable Parallel Programming Environment and Its Efficient Implementation, PhD Dissertation, The University of Texas at Austin.Google Scholar
  24. 24.
    R. Pandey and M. Burnett (1993) Is it Easier to Write Matrix Manipulation Programs Visually or Textually? An Empirical Study, Proceedings of the 1993 IEEE Symposium On Visual Languages, Bergen, Norway, 344–351.Google Scholar
  25. 25.
    M. Petre (1995) Why Looking Isn’t Always Seeing: Readership Skills and Graphical Programming. Communications of the ACM, 38(6), 33–44.CrossRefGoogle Scholar
  26. 26.
    G. Rohr (1986) Using Visual Concepts, In S-K. Chang, T. Ichikawa and P.A. Ligomenides, (eds.). Visual Languages, Plenum Press, 325–348.Google Scholar
  27. 27.
    D.A. Scanlan (1989) Structured Flowcharts Outperform Pseudocode: An Experimental Comparison, IEEE Software, 6(5), 28–36.CrossRefGoogle Scholar
  28. 28.
    L. Snyder (1984) Parallel Programming and the Poker Programming Environment, IEEE Computer, 27–36.Google Scholar
  29. 29.
    M. Stacey and C. Eckert (1999) CAD System Bias in Engineering Design, Proceedings of ICED ′99, the 12 th International Conference on Engineering Design, Munich, Germany, 1413–1418.Google Scholar
  30. 30.
    N. Stankovic and K. Zhang (1999) A Parallel Programming Environment for Networks, Proceedings of ISHPC′99 — the 2 nd International Symposium, Kyoto, Japan, LNCS 1615, Springer Verlag, 381–390.Google Scholar
  31. 31.
    N. Stankovic and K. Zhang (1999) Visual Programming for Message-Passing Systems, International Journal of Software Engineering and Knowledge Engineering, 9(4), 397–423.CrossRefGoogle Scholar
  32. 32.
    J.M Stone (1988) Debugging Concurrent Processes: A Case Study. Proceedings of the ACM SIGPLAN 1988 on Programming Language Design and Implementation, 145–153.Google Scholar
  33. 33.
    R. Virzi (1992) Refining the Test Phase of Usability Evaluation: How Many Subjects Is Enough? Human Factors, 34(4), 457–468.Google Scholar
  34. 34.
    K.N. Whitley (1997) Visual programming languages and the empirical evidence for and against, Journal of Visual Languages and Computing, 8(1), 109–142.CrossRefGoogle Scholar
  35. 35.
    K. Zhang, X. Ma and T. Hintz (1999) The Role of Graphics in Parallel Program Development, Journal of Visual Languages and Computing, 10(3), 215–243.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2003

Authors and Affiliations

  • Nenad Stankovic
    • 1
  1. 1.NokiaBurlingtonUSA

Personalised recommendations