Title :
How effective developers investigate source code: an exploratory study
Author :
Robillard, Martin P. ; Coelho, Wesley ; Murphy, Gail C.
Author_Institution :
Sch. of Comput. Sci., McGill Univ., Montreal, Que., Canada
Abstract :
Prior to performing a software change task, developers must discover and understand the subset of the system relevant to the task. Since the behavior exhibited by individual developers when investigating a software system is influenced by intuition, experience, and skill, there is often significant variability in developer effectiveness. To understand the factors that contribute to effective program investigation behavior, we conducted a study of five developers performing a change task on a medium-size open source system. We isolated the factors related to effective program investigation behavior by performing a detailed qualitative analysis of the program investigation behavior of successful and unsuccessful developers. We report on these factors as a set of detailed observations, such as evidence of the phenomenon of inattention blindness by developers skimming source code. In general, our results support the intuitive notion that a methodical and structured approach to program investigation is the most effective.
Keywords :
open systems; programming environments; public domain software; reverse engineering; software prototyping; empirical software engineering; medium-size open source system; program investigation behavior; program understanding; software evolution; software system investigation; source code; Blindness; Computer Society; Inspection; Performance analysis; Programming; Scattering; Software engineering; Software performance; Software systems; Software tools;
Journal_Title :
Software Engineering, IEEE Transactions on
DOI :
10.1109/TSE.2004.101