A system for teaching concurrent programming
SIGCSE '91 Proceedings of the twenty-second SIGCSE technical symposium on Computer science education
A study of common pitfalls in simple multi-threaded programs
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Concurrent reading and writing
Communications of the ACM
Graph drawing aesthetics and the comprehension of UML class diagrams: an empirical study
APVis '01 Proceedings of the 2001 Asia-Pacific symposium on Information visualisation - Volume 9
On the Concurrent Object Model of UML
Euro-Par '99 Proceedings of the 5th International Euro-Par Conference on Parallel Processing
Visualizing the Synchronization of Java-Threads with UML
VL '00 Proceedings of the 2000 IEEE International Symposium on Visual Languages (VL'00)
Visualization Techniques for Parallel Debugging and Performance Tuning Tools
Visualization Techniques for Parallel Debugging and Performance Tuning Tools
Proceedings of the 21st annual international conference on Documentation
JACOT: a tool to dynamically visualise the execution of concurrent Java programs
PPPJ '03 Proceedings of the 2nd international conference on Principles and practice of programming in Java
ThreadMentor: a pedagogical tool for multithreaded programming
Journal on Educational Resources in Computing (JERIC)
Learning concurrency: evolution of students' understanding of synchronization
International Journal of Human-Computer Studies
Unified Modeling Language Reference Manual, The (2nd Edition)
Unified Modeling Language Reference Manual, The (2nd Edition)
An Empirical Study on Using Stereotypes to Improve Understanding of UML Models
IWPC '04 Proceedings of the 12th IEEE International Workshop on Program Comprehension
Empirical Assessment of UML Static Object Diagrams
IWPC '04 Proceedings of the 12th IEEE International Workshop on Program Comprehension
Concurrency: State Models And Java Programs
Concurrency: State Models And Java Programs
Is abstraction the key to computing?
Communications of the ACM
The Impact of UML Documentation on Software Maintenance: An Experimental Evaluation
IEEE Transactions on Software Engineering
Design and Evaluation of a Diagrammatic Notation to Aid in the Understanding of Concurrency Concepts
ICSE '07 Proceedings of the 29th international conference on Software Engineering
ICPC '07 Proceedings of the 15th IEEE International Conference on Program Comprehension
A study of student strategies for the corrective maintenance of concurrent software
Proceedings of the 30th international conference on Software engineering
ASM'03 Proceedings of the abstract state machines 10th international conference on Advances in theory and practice
Design and evaluation of extensions to UML sequence diagrams for modeling multithreaded interactions
Information Visualization
Beat: a tool for visualizing the execution of object orientated concurrent programs
Proceedings of the 5th international symposium on Software visualization
Hi-index | 0.00 |
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