1 |
Investigating Software Reconnaissance as a Technique to Support Feature Location and Program Analysis Tasks using Sequence DiagramsStevenson, Sean 23 December 2013 (has links)
Software reconnaissance is a very useful technique for locating features in software systems that are unfamiliar to a developer. The technique was, however, limited by the need to execute multiple test cases and record the components used in each one. Tools that recorded the execution traces of a program made it more practical to use the software reconnaissance technique. Diver was developed as an execution trace visualization tool using sequence diagrams to display the dynamic behaviour of a program. The addition of software reconnaissance to Diver and its trace-focused user interface feature improved the filtering of the Eclipse environment based on the contents of execution traces and led to a very powerful program comprehension tool. Myers' work on Diver was grounded in cognitive support theory research into how to build tools. He conducted a user study to validate the work done on Diver, but the study's findings were limited due to a number of issues. In this thesis, we expand on the study run by Myers, improve on its design, and investigate if software reconnaissance improves Diver's effectiveness and efficiency for program comprehension tasks. We also analyze the influence of software reconnaissance on the interactions of Diver's users, which allows us to identify successful usage patterns for completing program comprehension and feature location tasks. We research the connection between cognitive support theory and the design of Diver and use the study to attempt to validate the cognitive support offered by Diver. Finally, we present the results of a survey of the study participants to determine the usefulness, ease of use, and ease of learning of the tool. / Graduate / 0984
|
Page generated in 0.072 seconds