Title
Developers' code context models for change tasks
Abstract
To complete a change task, software developers spend a substantial amount of time navigating code to understand the relevant parts. During this investigation phase, they implicitly build context models of the elements and relations that are relevant to the task. Through an exploratory study with twelve developers completing change tasks in three open source systems, we identified important characteristics of these context models and how they are created. In a second empirical analysis, we further examined our findings on data collected from eighty developers working on a variety of change tasks on open and closed source projects. Our studies uncovered, amongst other results, that code context models are highly connected, structurally and lexically, that developers start tasks using a combination of search and navigation and that code navigation varies substantially across developers. Based on these findings we identify and discuss design requirements to better support developers in the initial creation of code context models. We believe this work represents a substantial step in better understanding developers' code navigation and providing better tool support that will reduce time and effort needed for change tasks.
Year
DOI
Venue
2014
10.1145/2635868.2635905
SIGSOFT FSE
Keywords
Field
DocType
change task,context models,user study,programming environments,navigation,search
Code navigation,Software engineering,Computer science,Knowledge management,Theoretical computer science,Software,Exploratory research
Conference
Citations 
PageRank 
References 
27
0.72
27
Authors
5
Name
Order
Citations
PageRank
Thomas Fritz193067.66
David Shepherd220415.43
Katja Kevic31155.93
Will Snipes436218.48
Christoph Bräunlich5331.15