ABSTRACT
Graphical documentation is often characterized as an effective aid in program understanding. However, it is an open question exactly which types of graphical documentation are most suitable for which types of program understanding tasks (and in which specific usage contexts). The Unified Modeling Language (UML) is the de facto standard for modeling modern software applications. This paper describes an experiment to assess the qualitative efficacy of UML diagrams in aiding program understanding. The experiment had participants analyze a series of UML diagrams and answer a detailed questionnaire concerning a hypothetical software system. Results from the experiment suggest that the UML's efficacy in support of program understanding is limited by factors such as ill-defined syntax and semantics, spatial layout, and domain knowledge.
- Ambler, S. The Elements of UML Style. Cambridge University Press, 2003. Google ScholarDigital Library
- Budgen, D.; Hoffnagle, G.; Muller, M.; Robert, F.; Sellami, A.; and Tilley, S. "Empirical Software Engineering: A Roadmap." Proceedings of the 10th International Conference on Software Technology and Engineering Practice (STEP 2002: Oct. 6-8, 2002; Montreal, Canada). IEEE Computer Society Press, 2003. Google ScholarDigital Library
- Chikofsy, E.; and Cross, J. "Reverse Engineering and Design Recovery: A Taxonomy." IEEE Software 7(1):13--17, January 1990. Google ScholarDigital Library
- Huang, S. and Tilley, S. "Workshop on Graphical Documentation for Programmers: Assessing the Efficacy of UML Diagrams for Program Understanding." Held in conjunction with The 11th International Conference on Program Comprehension (IWPC 2003: May 10-11, 2003; Portland, OR). Google ScholarDigital Library
- IBM Corp. "UML Resource Center". Online at http://www.rational.com/uml.Google Scholar
- IBM Corporation. "The Rational Unified Process (RUP)." Online at http://www.rational.com/products/rup/index.jsp.Google Scholar
- Knight, C.; Munro, M. "Comprehension with{in} Virtual Environment Visualizations". Proceedings of the 7th International Workshop on Program Comprehension (IWPC 1999: May 5-7, 1999; Pittsburgh, PA, USA), pp. 4--11. Los Alamitos, CA: IEEE Computer Society Press, 1999. Google ScholarDigital Library
- Koning, H.; Dormann, C.; and van Vliet, H. "Practical Guidelines for the Readability of IT-Architecture Diagrams." Proceedings of the 20th Annual International Conference on Systems Documentation (SIGDOC 2002: October 20-23, 2002; Toronto, Canada), pp. 90--99. ACM Press: New York, NY, 2002. Google ScholarDigital Library
- Kruchten, P. "Architectural Blueprints-The '4+1' View Model of Software Architecture." IEEE Software 12(6):42--50, November 1995. Google ScholarDigital Library
- Medvidovic, N.; Rosenblum, D.; Redmiles, D.; and Robbins, J. "Modeling Software Architecture in the Unified Modeling Language." ACM Transactions on Software Engineering Methodology 11(1):2--57, January 2002. Google ScholarDigital Library
- Muller, H.; Tilley, S.; Orgun, M.; Corrie, B.; and Madhavji, N. "A Reverse Engineering Environment Based on Spatial and Visual Software Interconnection Models." Proceedings of the 5th ACM SIGSOFT Symposium on Software Development Environments (SIGSOFT '92/SDE 5: Tyson's Corner, VA; December 9-11, 1992), pp. 88--98. New York, NY: ACM Press, 1992. Google ScholarDigital Library
- Object Management Group (OMG). "UML 2.0 Standard Officially Adopted at OMG Technical Meeting in Paris." June 12, 2003. Online at http://www.omg.org/news/releases/pr2003/6-12-032.htm.Google Scholar
- Object Management Group. Online at http://www.omg.org.Google Scholar
- Pierce, R. and Tilley, S. "Automatically Connecting Documentation to Code with Rose". Proceedings of the 20th Annual International Conference on Systems Documentation (SIGDOC 2002: October 20-23, 2002; Toronto, Canada), pp. 157-163. ACM Press: New York, NY, 2002. Google ScholarDigital Library
- Purchase, H.; Colpoys, L.; McGill, M.; and Carrington, D. "UML Collaboration Diagram Syntax: An Empirical Study of Comprehension." Proceedings of the First International Workshop on Visualizing Software for Understanding and Analysis (VISSOFT 2002: June 26-27, 2002; Paris, France). Google ScholarDigital Library
- Rational Software Corp. "PearlCircle." Online at http://rdatux.rational.com/auction/index.jsp.Google Scholar
- Tilley, S. "The Canonical Activities of Reverse Engineering." Annals of Software Engineering 9:249--271, 2000. Google ScholarDigital Library
- Tilley, S. and Huang, S. "Assessing the Efficacy of Software Architecture Visualization Techniques for Recovered Artifacts." Dagstuhl Seminar 03061: Software Architecture Recovery and Modeling (Feb. 2 - 7, 2003; Schloss Dagstuhl, Germany).Google Scholar
- Tilley, S. and Huang, S. "Documenting Software Systems with Views III: Towards a Task-Oriented Classification of Program Visualization Techniques". Proceedings of the 20th Annual International Conference on Systems Documentation (SIGDOC 2002: October 20-23, 2002; Toronto, Canada), pp. 226--233. ACM Press: New York, NY, 2002. Google ScholarDigital Library
- Tilley, S. and Huang, S. "On Selecting Software Visualization Tools for Program Understanding in an Industrial Context." Proceedings of the 10th International Workshop on Program Comprehension (IWPC 2002: June 26-29, 2002; Paris, France), pp. 285-288. Los Alamitos, CA: IEEE Computer Society Press, 2002. Google ScholarDigital Library
- Tilley, S. and Huang, S. "On the Emergence of the Renaissance Software Engineer." Proceedings of the 1st International Workshop on Web Site Evolution (WSE'99). Atlanta, GA: October 5, 1999.Google Scholar
- Tilley, S. and Wong, K. "Workshop on Graphical Documentation for Programmers." Held in conjunction with The 20th Annual International Conference on Systems Documentation (SIGDOC 2002: October 21, 2002; Toronto, Canada). Google ScholarDigital Library
- Tilley, S.; Smith, D.; and Thomas, B. "Documentation for Software Engineers: What is Needed to Aid System Understanding?" Held in conjunction with The 19th Annual International Conference on Systems Documentation (SIGDOC 2001: Santa Fe, NM; October 21-24, 2001). Google ScholarDigital Library
Index Terms
- A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding
Recommendations
Designing UML diagrams for technical documentation
SIGDOC '03: Proceedings of the 21st annual international conference on DocumentationThis paper presents a framework for improving the presentation of Unified Modeling Language (UML) diagrams, as applied in technical documentation produced at the IBM Toronto Software Laboratory. UML diagrams are a key part of program design. They can ...
Workshop on Graphical Documentation for Programmers: Assessing the Efficacy of UML Diagrams for Program Understanding
IWPC '03: Proceedings of the 11th IEEE International Workshop on Program ComprehensionProgrammers often use graphical forms of documentation that rely on software visualization techniques to make complicated information easier to understand. However, it is an open question exactly which types of graphical documentation are most suitable ...
Access to UML diagrams with the HUTN
ASSETS '12: Proceedings of the 14th international ACM SIGACCESS conference on Computers and accessibilityModern software development includes the usage of UML for (model-driven) analysis and design, customer communication etc. Since UML is a graphical notation, alternative forms of representation are needed to avoid barriers for developers and other users ...
Comments