Programmers need tools to help explore large software systems when performing software evolution tasks. A va- riety of tools have been created to improve the effective- ness of such exploration. The usefulness of these tools has been argued largely on the basis of case studies, small narrowly-focussed experiments, or non-human-based ex- periments. In this paper, we report on a more rigorously controlled study of three specialized software exploration tools in which professional programmers used the tools to plan complex change tasks to a medium-sized code base. We found that the tools had little apparent effect; the ef- fects observed instead appear to be dominated by individ- ual styles and strategies of the programmers and character- istics of the tasks. In addition to presenting the results of the study, this paper introduces the use of two experimental evaluation aids: the NASA Task Load Index (TLX) for as- sessing task difficulty and distance profiles for assessing the degree to which programmers remain on-track.
Citation:
Brian de Alwis, Gail C. Murphy, Martin P. Robillard, "A Comparative Study of Three Program Exploration Tools," icpc, pp.103-112, 15th IEEE International Conference on Program Comprehension (ICPC '07), 2007