Beacons: a knowledge structure in program comprehension
Proceedings of the third international conference on human-computer interaction on Designing and using human-computer interfaces and knowledge based systems (2nd ed.)
Computational models of information scent-following in a very large browsable text collection
Proceedings of the ACM SIGCHI Conference on Human factors in computing systems
Program understanding behavior during corrective maintenance of large-scale software
International Journal of Human-Computer Studies - Best of empirical studies of programmers 7
Towards a theory of the cognitive processes in computer programming
International Journal of Human-Computer Studies - Special issue: 1969-1999, the 30th anniversary
Software design---cognitive aspects
Software design---cognitive aspects
Modern Information Retrieval
The bloodhound project: automating discovery of web usability issues using the InfoScentπ simulator
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
First Steps in Programming: A Rationale for Attention Investment Models
HCC '02 Proceedings of the IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02)
Hipikat: A Project Memory for Software Development
IEEE Transactions on Software Engineering
Easing Program Comprehension by Sharing Navigation Data
VLHCC '05 Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing
A Linguistic Analysis of How People Describe Software Problems
VLHCC '06 Proceedings of the Visual Languages and Human-Centric Computing
IEEE Transactions on Software Engineering
Information Foraging Theory: Adaptive Interaction with Information
Information Foraging Theory: Adaptive Interaction with Information
A framework and methodology for studying the causes of software errors in programming systems
Journal of Visual Languages and Computing
SNIF-ACT: a model of information foraging on the world wide web
UM'03 Proceedings of the 9th international conference on User modeling
Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
The implications of method placement on API learnability
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Using CogTool to model programming tasks
Evaluation and Usability of Programming Languages and Tools
Information foraging as a foundation for code navigation (NIER track)
Proceedings of the 33rd International Conference on Software Engineering
Empirical Software Engineering
Dynamic visualisation of software state
ACSC '11 Proceedings of the Thirty-Fourth Australasian Computer Science Conference - Volume 113
Goal attainment on long tail web sites: An information foraging approach
Decision Support Systems
Dual ecological measures of focus in software development
Proceedings of the 2013 International Conference on Software Engineering
Proceedings of the 2013 International Conference on Software Engineering
Portfolio: Searching for relevant functions and their usages in millions of lines of code
ACM Transactions on Software Engineering and Methodology (TOSEM) - Testing, debugging, and error handling, formal methods, lifecycle concerns, evolution and maintenance
Hi-index | 0.00 |
During maintenance, professional developers generate and test many hypotheses about program behavior, but they also spend much of their time navigating among classes and methods. Little is known, however, about how professional developers navigate source code and the extent to which their hypotheses relate to their navigation. A lack of understanding of these issues is a barrier to tools aiming to reduce the large fraction of time developers spend navigating source code. In this paper, we report on a study that makes use of information foraging theory to investigate how professional developers navigate source code during maintenance. Our results showed that information foraging theory was a significant predictor of the developers' maintenance behavior, and suggest how tools used during maintenance can build upon this result, simply by adding word analysis to their reasoning systems.