Information foraging as a foundation for code navigation: NIER track

A major software engineering challenge is to understand the fundamental mechanisms that underlie the developer's code navigation behavior. We propose a novel and unified theory based on the premise that we can study developer's information seeking strategies in light of the foraging principles that evolved to help our animal ancestors to find food. Our preliminary study on code navigation graphs suggests that the tenets of information foraging provide valuable insight into software maintenance. Our research opens the avenue towards the development of ecologically valid tool support to augment developers' code search skills.

[1]  Gail C. Murphy,et al.  Hipikat: recommending pertinent software development artifacts , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[2]  Brad A. Myers,et al.  Finding causes of program output with the Java Whyline , 2009, CHI.

[3]  Rachel K. E. Bellamy,et al.  Scents in Programs:Does Information Foraging Theory Apply to Program Maintenance? , 2007, IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2007).

[4]  Martin P. Robillard,et al.  How effective developers investigate source code: an exploratory study , 2004, IEEE Transactions on Software Engineering.

[5]  J. Nielsen Information foraging : Why google makes people leave your site faster , 2003 .

[6]  Robert DeLine,et al.  Building an Ecologically valid, Large-scale Diagram to Help Developers Stay Oriented in Their Code , 2007, IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2007).

[7]  Joseph Lawrance,et al.  IBM Research Report How People Debug, Revisited: An Information Foraging Theory Perspective , 2009 .

[8]  Nancy G. Leveson Intent Specifications: An Approach to Building Human-Centered Specifications , 2000, IEEE Trans. Software Eng..

[10]  Pamela Effrein Sandstrom,et al.  Information Foraging Theory: Adaptive Interaction with Information , 2010, J. Assoc. Inf. Sci. Technol..

[11]  Rachel K. E. Bellamy,et al.  Reactive information foraging for evolving goals , 2010, CHI.

[12]  Robert DeLine,et al.  Building an Ecologically valid, Large-scale Diagram to Help Developers Stay Oriented in Their Code , 2007 .

[13]  Brad A. Myers,et al.  An Exploratory Study of How Developers Seek, Relate, and Collect Relevant Information during Software Maintenance Tasks , 2006, IEEE Transactions on Software Engineering.