DocumentCode :
3077537
Title :
Debugging Concurrent Software: A Study Using Multithreaded Sequence Diagrams
Author :
Fleming, Scott D. ; Kraemer, Eileen ; Stirewalt, R.E.K. ; Dillon, Laura K.
fYear :
2010
fDate :
21-25 Sept. 2010
Firstpage :
33
Lastpage :
40
Abstract :
Concurrent software is notoriously difficult to debug. We investigate the use of UML sequence diagrams to help developers correctly reason about the potential behaviors of buggy concurrent software. We conducted a controlled experiment that compared internal (i.e., "in the head") and external representations for reasoning about multithreaded software. For external representations, participants created multithreaded sequence diagrams. The results of the experiment demonstrate a strong positive effect associated with using external representations. Participants who drew diagrams were significantly more successful at reasoning about the potential behavior of concurrent software. Moreover, participants who produced diagrams with higher levels of detail and with fewer errors tended to achieve greater levels of success. Additionally, this paper contributes an extension to the UML sequence diagram notation for showing behavior of multithreaded software and formal metrics for assessing the complexity of thread interactions.
Keywords :
Unified Modeling Language; concurrency control; multi-threading; program debugging; software metrics; UML sequence diagram; concurrent software debugging; formal metrics; multithreaded sequence diagram; multithreaded software; thread interactions complexity; Complexity theory; Context; Instruction sets; Measurement; Unified modeling language; Visualization; UML sequence diagrams; concurrent software; empirical software engineering;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Visual Languages and Human-Centric Computing (VL/HCC), 2010 IEEE Symposium on
Conference_Location :
Leganes
ISSN :
1943-6092
Print_ISBN :
978-1-4244-8485-0
Type :
conf
DOI :
10.1109/VLHCC.2010.14
Filename :
5635186
Link To Document :
بازگشت