
AN ABSTRACT OF THE DISSERTATION OF David Piorkowski for the degree of Doctor of Philosophy in Computer Science pre- sented on August 10, 2016. Title: Information Foraging Theory as a Unifying Foundation for Software Engineer- ing Research: Connecting the Dots. Abstract approved: ______________________________________________________ Margaret M. Burnett Empirical studies have shown that programmers spend up to one-third of their time navigating through code during debugging. Although researchers have conducted empirical studies to understand programmers’ navigation difficulties and developed tools to address those difficulties, the resulting findings tend to be loosely connected to each other. To address this gap, we propose using theory to “connect the dots” be- tween software engineering (SE) research findings. Our theory of choice is Infor- mation Foraging Theory (IFT) which explains and predicts how people seek infor- mation in an environment. Thus, it is well-suited as a unifying foundation because navigating code is a fundamental aspect of software engineering. In this dissertation, we investigated IFT’s suitability as a unifying foundation for SE through a combina- tion of tool building and empirical user studies of programmers debugging. Our con- tributions show how IFT can help to unify SE research via cross-cutting insights spanning multiple software engineering subdisciplines. ©Copyright by David Piorkowski August 10, 2016 All Rights Reserved Information Foraging Theory as a Unifying Foundation for Software Engineering Research: Connecting the Dots by David Piorkowski A DISSERTATION submitted to Oregon State University in partial fulfillment of the requirements for the degree of Doctor of Philosophy Presented August 10, 2016 Commencement June 2017 Doctor of Philosophy dissertation of David Piorkowski presented on August 10, 2016 APPROVED: Major Professor, representing Computer Science Director of the School of Electrical Engineering and Computer Science Dean of the Graduate School I understand that my dissertation will become part of the permanent collection of Oregon State University libraries. My signature below authorizes release of my dis- sertation to any reader upon request. David Piorkowski, Author ACKNOWLEDGEMENTS First and foremost, I’d like to thank my advisor, Margaret Burnett, who had an un- canny knack for challenging me when I needed to be challenged, encouraging me when I needed encouragement and laughing with me on the occasions when every- thing felt as if it was falling apart. I truly believe that I was one of the lucky ones, who had an advisor who was just as invested (if not more so) in my success as I was. Thank you Margaret. Thank you also to the members of my committee for agreeing see me through this the seven-year long journey. Your influence resonates in this work and within me. Thank you Chris Scaffidi, Scott Fleming, Anita Sarma, Peri Tarr, and David Kling. Without external support, much of this research would not have been possible. These internships provided me not only experience, but also daily mentorship, finan- cial support, and necessary equipment (even replacing it when it died mid-internship). I'm especially thankful for the huge amount of flexibility that my mentors gave me to pursue my own interests, often even at the expense of their own. Towards that end, I'd like to especially thank those who guided me through my internships (presented al- phabetically by last name). From IBM: Rachel Bellamy, Pietro Ferrara, Bonnie John, Marco Pistoia, and Omer Tripp and from Oracle: Michael van de Vanter. Their guid- ance and expertise left a mark on me and this work. I would also like to thank the numerous additional collaborators over the years who given their time, energy and hours of lost sleep to help bring this work to frui- tion. They are: Irwin Kwan, Chris Bogart, Austin Henley, Tahmid Nabi, Charles Hill, Sruti Srinivasa Ragavan, Amber Horvath, Jamie MacBeth, Liza John, Cal Swart, and Josh Jordahl. It has been a joy to work with all of you. HCI research is often not possible without willing participants. Our research group thanks our study participants for their time. Our group would also like to thank IBM for support under an OCR grant and my PhD Fellowship, NSF for support under NSF-1314384 and NSF-1302113, AFOSR for support under FA9550-09-1-0213. The views and conclusions in this dissertation are those of the author and should not be interpreted as representing the official poli- cies, either expressed or implied, of AFOSR, IBM, or the U.S. Government. Finally, none of this would have possible without the support and sacrifices of my family and loved ones. Thank you Mom, Dad, Jess and Béatrice for always being there and always believing in my potential. TABLE OF CONTENTS Page Chapter 1 Introduction ....................................................................................... 1 Chapter 2 Background and Related Work ......................................................... 3 2.1 Information Foraging Theory Constructs and Propositions ................................. 3 2.2 Initial application of IFT: Document Collections ................................................ 6 2.3 IFT and Web Foraging ......................................................................................... 6 2.4 IFT and Software Engineering ............................................................................. 9 Chapter 3 Predictive Factors as Scent ............................................................. 13 3.1 Related Work ..................................................................................................... 14 3.2 Methodology ...................................................................................................... 15 3.3 Study Environment ............................................................................................ 16 3.3.1 Recommendation Algorithms .................................................................... 17 3.3.2 Participants ................................................................................................ 21 3.3.3 Procedure ................................................................................................... 22 3.3.4 Analysis Procedure .................................................................................... 22 3.4 Results ................................................................................................................ 24 3.4.1 Hit Rate ...................................................................................................... 24 3.4.2 Demonstrated Usefulness .......................................................................... 27 3.4.3 Opinion Questionnaire .............................................................................. 28 3.5 How Recommendations Were Used .................................................................. 29 3.5.1 Using Recommendations for Efficiency ................................................... 30 3.5.2 Using Recommendations for Discovery .................................................... 31 3.6 Discussion .......................................................................................................... 33 3.6.1 Sensitivity to Momentum .......................................................................... 33 3.6.2 Changes in Foraging Behavior over Time ................................................ 34 3.6.3 Beyond Word Cues ................................................................................... 34 3.6.4 Predictive Factors as Scent ........................................................................ 35 3.6.5 Scent as a Unifier for Software Engineering ............................................. 38 TABLE OF CONTENTS (Continued) Page 3.7 Summary of Results ........................................................................................... 38 Chapter 4 Foraging Diet: Unifying Prey and Foraging Strategies .................. 40 4.1 Background ........................................................................................................ 41 4.2 Methodology ...................................................................................................... 43 4.2.1 Study Data ................................................................................................. 43 4.3 Results ................................................................................................................ 49 4.3.1 Preliminaries: How Much Foraging Did Participants Do? ....................... 49 4.3.2 RQ1: The What’s of Programmers’ Diets ................................................. 49 4.3.3 RQ2: The How’s: Strategies during Foraging ........................................... 52 4.3.4 RQ3: What’s Meet How’s: Dietary Strategies .......................................... 54 4.4 Discussion .......................................................................................................... 61 4.4.1 The Long Tail of Diet What’s ................................................................... 61 4.4.2 Scent’s Role in Foraging Diets and Strategies .......................................... 62 4.4.3 Unifying Diet with Strategies .................................................................... 63 4.5 Summary of Results ........................................................................................... 63 Chapter 5 Motivations and IFT for Software Engineering .............................. 65 5.1 Background and Related Work .........................................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages173 Page
-
File Size-