skip to main content
10.1145/1409720.1409723acmconferencesArticle/Chapter ViewAbstractPublication PagessoftvisConference Proceedingsconference-collections
research-article

Assessing the benefits of synchronization-adorned sequence diagrams: two controlled experiments

Published: 16 September 2008 Publication History

Abstract

Learning about concurrency and synchronization is difficult for novices. In prior work, we developed saUML, a refinement of UML sequence diagrams, to address these difficulties and found them to be beneficial when compared to text-only presentations. This paper compares saUML to standard UML sequence diagrams to judge their relative effectiveness in enhancing a novice programmer's understanding of programs with different levels of synchronization complexity. One experiment compared the two notations when used to understand programs of low synchronization complexity, as judged by their use of only simple synchronization primitives, such as mutex locks. Here, a beneficial trend was observed, but it did not rise to the level of statistical significance. A second experiment compared the two notations on similar tasks but on programs with more complex synchronization constructs, in this case condition synchronization using primitives, such as wait and signal. Here, a significant benefit (p < 0.05) was found to exist.

References

[1]
Arisholm, E., Briand, L. C., Hove, S. E., and Labiche, Y. 2006. The impact of UML documentation on software maintenance: An experimental evaluation. IEEE Transactions on Software Engineering 32, 6, 365--381.
[2]
Bloom, B. S. 1956. Taxonomy of Educational Objectives, Handbook I: Cognitive Domain. McKay, New York.
[3]
Carr, S., Mayo, J., and Shene, C.-K. 2003. ThreadMentor: a pedagogical tool for multithreaded programming. J. Educ. Resour. Comput. 3, 1, 1.
[4]
Choi, S.-E., and Lewis, E. C. 2000. A study of common pitfalls in simple multi-threaded programs. In Proc. 31st SIGCSE Tech. Symp. Comput. Sci. Educ. (SIGCSE 2000), ACM, New York, NY, USA, 325--329.
[5]
Fleming, S. D., et al. 2008. A study of student strategies for the corrective maintenance of concurrent software. In Proc. IEEE/ACM Int. Conf. Software Eng. (ICSE 2008).
[6]
Higginbotham, C. W., and Morelli, R. 1991. A system for teaching concurrent programming. In Proc. 22nd SIGCSE Tech. Symp. Comput. Sci. Educ. (SIGCSE 1991), ACM, New York, NY, USA, 309--316.
[7]
Kolikant, Y. B.-D. 2004. Learning concurrency: evolution of students' understanding of synchronization. Int. J. Hum.-Comput. Stud. 60, 2, 243--268.
[8]
Kramer, J. 2007. Is abstraction the key to computing? Commun. ACM 50, 4, 36--42.
[9]
Kutar, M., Britton, C., and Barker, T. 2002. A comparison of empirical study and cognitive dimensions analysis in the evaluation of UML diagrams. In Proc. 14th Psychology of Programming Interest Group.
[10]
Kuzniarz, L., Staron, M., and Wohlin, C. 2004. An empirical study on using stereotype to improve understanding of UML models. In Proc. 12th IEEE International Workshop on Program Comprehension, IEEE Computer Society, Los Alamitos, CA, USA, 14--23.
[11]
Lamport, L. 1977. Concurrent reading and writing. Commun. ACM 20, 11, 806--811.
[12]
Leroux, H., and Exton, C. 2001. Visualising the execution of concurrent object-oriented programs dynamically using UML. In Proc. 9th Int. Conf. Central Europe Comput. Graph., Visualization and Comput. Vision (WSCG 2001).
[13]
Leroux, H., Réquilé-Romanczuk, A., and Mingins, C. 2003. Jacot: a tool to dynamically visualise the execution of concurrent java programs. In PPPJ '03: Proceedings of the 2nd international conference on Principles and practice of programming in Java, Computer Science Press, Inc., New York, NY, USA, 201--206.
[14]
Magee, J., and Kramer, J. 2007. Concurrency: State Models and Java Programs, second ed. Wiley.
[15]
Mehner, K., and Wagner, A. 2000. Visualizing the synchronization of Java-threads with UML. In Proc. 2000 IEEE Int. Symp. Visual Languages (VL 2000), IEEE Computer Society, Washington, DC, USA, 199.
[16]
Ober, I., and Stan, I. 1999. On the concurrent object model of UML. In Proc. 5th Int. Euro-Par Conf. Parallel Process. (Euro-Par 1999), Springer-Verlag, London, UK, 1377--1384.
[17]
Pancake, C. M. 1994. Visualization techniques for parallel debugging and performance tuning tools. Tech. rep., Corvallis, OR, USA.
[18]
Purchase, H. C., McGill, M., Colpoys, L., and Carrington, D. 2001. Graph drawing aesthetics and the comprehension of UML class diagrams: An empirical study. In Proceedings, 2001 Asia-Pacific Symposium on Information Visualization, vol. 9, 129--137.
[19]
Rumbaugh, J., Jacobson, I., and Booch, G. 2004. The Unified Modeling Language Reference Manual, second ed. Addison--Wesley.
[20]
Schader, M., and Korthaus, A. 1998. Modeling Java threads in UML. In The Unified Modeling Language -- Technical Aspects and Applications, Physica-Verlag, Heidelberg, M. Schader and A. Korthaus, Eds., 122--143.
[21]
Stevens, P. 2003. UML and concurrency. In Abstract State Machines, 151--165.
[22]
Swan, J., Barker, T., Britton, C., and Kutar, M. 2005. An empirical study of factors that affect user performance when using uml interaction diagrams. In Proceedings, 2005 International Symposium on Empirical Software Engineering, 10.
[23]
Tilley, S., and Huang, S. 2003. A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding. In Proceedings of the 21st Annual International Conference on Documentation, 184--191.
[24]
Torchiano, M. 2004. Empirical assessment of UML static object diagrams. In Proc. 12th IEEE International Workshop on Program Comprehension, IEEE Computer Society, Los Alamitos, CA, USA, 226--230.
[25]
Xie, S., Kraemer, E., and Stirewalt, R. E. K. 2007. Design and evaluation of a diagrammatic notation to aid in the understanding of concurrency concepts. In Proc. 29th Int. Conf. Software Eng. (ICSE 2007), IEEE Computer Society, Washington, DC, USA, 727--731.
[26]
Xie, S., Kraemer, E., and Stirewalt, R. E. K. 2007. Empirical evaluation of a UML sequence diagram with adornments to support understanding of thread interactions. In Proc. 15th IEEE Int. Conf. Program Comprehension (ICPC 2007), IEEE Computer Society, Washington, DC, USA, 123--134.

Cited By

View all
  • (2020)Enhanced Visualization of Method Invocations by Extending Reverse-engineered Sequence Diagrams2020 Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT51673.2020.00010(49-60)Online publication date: Sep-2020
  • (2018)Program comprehension through reverse‐engineered sequence diagramsJournal of Software: Evolution and Process10.1002/smr.196530:11Online publication date: 14-Nov-2018
  • (2010)BeatProceedings of the 5th international symposium on Software visualization10.1145/1879211.1879253(225-226)Online publication date: 25-Oct-2010
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SoftVis '08: Proceedings of the 4th ACM symposium on Software visualization
September 2008
228 pages
ISBN:9781605581125
DOI:10.1145/1409720
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 September 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. UML
  2. concurrency and synchronization
  3. empirical evaluation

Qualifiers

  • Research-article

Funding Sources

Conference

Softvis '08

Acceptance Rates

Overall Acceptance Rate 20 of 65 submissions, 31%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2020)Enhanced Visualization of Method Invocations by Extending Reverse-engineered Sequence Diagrams2020 Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT51673.2020.00010(49-60)Online publication date: Sep-2020
  • (2018)Program comprehension through reverse‐engineered sequence diagramsJournal of Software: Evolution and Process10.1002/smr.196530:11Online publication date: 14-Nov-2018
  • (2010)BeatProceedings of the 5th international symposium on Software visualization10.1145/1879211.1879253(225-226)Online publication date: 25-Oct-2010
  • (2009)Design and Evaluation of Extensions to UML Sequence Diagrams for Modeling Multithreaded InteractionsInformation Visualization10.1057/ivs.2009.68:2(120-136)Online publication date: 22-Jan-2009

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media