Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Joseph Lawrance

dblp:65/2271 · DBLP profile ↗
← Back
11ranked-venue papers
9as first author
0since 2021 · last 2013
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Human-computer interaction and ubiquitous computing · 9 · 8 first-authorSoftware engineering, systems software and programming languages · 2 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
4 papers
Software maintenance and evolution · 60% Empirical software engineering · 40%
Human-computer interaction and pervasive computing
3 papers
Collaborative and social computing · 66% Usability and user experience research · 34%

Topics — the 9 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Empirical software engineering
developer studies
0.322013
How Programmers Debug, Revisited: An Information Foraging Theory Perspective · IEEE Trans. Software Eng. 2013
An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks · ACM Trans. Softw. Eng. Methodol. 2013
Collaborative and social computing › information seeking
information foraging
0.222010
Reactive information foraging for evolving goals · CHI 2010
Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks · CHI 2008
Software maintenance and evolution › program comprehension
code navigation
0.222010
Reactive information foraging for evolving goals · CHI 2010
Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks · CHI 2008
Software maintenance and evolution
refactoring
0.212013
An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks · ACM Trans. Softw. Eng. Methodol. 2013
Software maintenance and evolution › refactoring
refactoring tool support
0.212013
An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks · ACM Trans. Softw. Eng. Methodol. 2013
Usability and user experience research › individual differences
gender differences
0.112006
Tinkering and gender in end-user programmers' debugging · CHI 2006
Empirical software engineering › user behavior analysis
information foraging theory
0.012013
How Programmers Debug, Revisited: An Information Foraging Theory Perspective · IEEE Trans. Software Eng. 2013
Software maintenance and evolution
software reuse
0.012013
An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks · ACM Trans. Softw. Eng. Methodol. 2013
Usability and user experience research › individual differences
self-efficacy
0.012006
Tinkering and gender in end-user programmers' debugging · CHI 2006

Methods — techniques the papers use, named apart from their topics

information foraging theory · 0.7field study · 0.2empirical study · 0.2controlled experiment · 0.2
YearPublicationVenuePosition
2013 Git on the cloud in the classroom
abstract
Numerous CS faculty have demonstrated the benefits of using version control in courses other than software engineering. However, they maintained their own servers, and to the best of our knowledge, none published experiences with version control in CS1 courses for non-CS engineering majors. As a result, even faculty experienced with version control may hesitate to adopt it in some classes, fearing that it is too difficult, time consuming or distracting. In this paper, we describe how we adopted version control in a CS1 course for non-CS engineering majors, and how software hosting services facilitated its use. Our experience indicates that undergraduate engineering majors in CS courses can gain competence in version control, and software hosting services simplify class administration.
Joseph Lawrance, Seikyung Jung, Charlie Wiseman
SIGCSE1
2013 An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks
abstract
Theories of human behavior are an important but largely untapped resource for software engineering research. They facilitate understanding of human developers’ needs and activities, and thus can serve as a valuable resource to researchers designing software engineering tools. Furthermore, theories abstract beyond specific methods and tools to fundamental principles that can be applied to new situations. Toward filling this gap, we investigate the applicability and utility of Information Foraging Theory (IFT) for understanding information-intensive software engineering tasks, drawing upon literature in three areas: debugging, refactoring, and reuse. In particular, we focus on software engineering tools that aim to support information-intensive activities, that is, activities in which developers spend time seeking information. Regarding applicability, we consider whether and how the mathematical equations within IFT can be used to explain why certain existing tools have proven empirically successful at helping software engineers. Regarding utility, we applied an IFT perspective to identify recurring design patterns in these successful tools, and consider what opportunities for future research are revealed by our IFT perspective.
Scott D. Fleming, Christopher Scaffidi, David Piorkowski, Margaret M. Burnett, Rachel K. E. Bellamy, Joseph Lawrance, Irwin Kwan
ACM Trans. Softw. Eng. Methodol.6
2013 How Programmers Debug, Revisited: An Information Foraging Theory Perspective
abstract
Many theories of human debugging rely on complex mental constructs that offer little practical advice to builders of software engineering tools. Although hypotheses are important in debugging, a theory of navigation adds more practical value to our understanding of how programmers debug. Therefore, in this paper, we reconsider how people go about debugging in large collections of source code using a modern programming environment. We present an information foraging theory of debugging that treats programmer navigation during debugging as being analogous to a predator following scent to find prey in the wild. The theory proposes that constructs of scent and topology provide enough information to describe and predict programmer navigation during debugging, without reference to mental states such as hypotheses. We investigate the scope of our theory through an empirical study of 10 professional programmers debugging a real-world open source program. We found that the programmers' verbalizations far more often concerned scent-following than hypotheses. To evaluate the predictiveness of our theory, we created an executable model that predicted programmer navigation behavior more accurately than comparable models that did not consider information scent. Finally, we discuss the implications of our results for enhancing software engineering tools.
Joseph Lawrance, Christopher Bogart, Margaret M. Burnett, Rachel K. E. Bellamy, Kyle Rector, Scott D. Fleming
IEEE Trans. Software Eng.1
2010 Reactive information foraging for evolving goals
abstract
Information foraging models have predicted the navigation paths of people browsing the web and (more recently) of programmers while debugging, but these models do not explicitly model users' goals evolving over time. We present a new information foraging model called PFIS2 that does model information seeking with potentially evolving goals. We then evaluated variants of this model in a field study that analyzed programmers' daily navigations over a seven-month period. Our results were that PFIS2 predicted users' navigation remarkably well, even though the goals of navigation, and even the information landscape itself, were changing markedly during the pursuit of information.
Joseph Lawrance, Margaret M. Burnett, Rachel K. E. Bellamy, Christopher Bogart, Calvin Swart
CHI1
2008 Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks
abstract
In recent years, the software engineering community has begun to study program navigation and tools to support it. Some of these navigation tools are very useful, but they lack a theoretical basis that could reduce the need for ad hoc tool building approaches by explaining what is fundamentally necessary in such tools. In this paper, we present PFIS (Programmer Flow by Information Scent), a model and algorithm of programmer navigation during software maintenance. We also describe an experimental study of expert programmers debugging real bugs described in real bug reports for a real Java application. We found that PFIS' performance was close to aggregated human decisions as to where to navigate, and was significantly better than individual programmers' decisions.
Joseph Lawrance, Rachel K. E. Bellamy, Margaret M. Burnett, Kyle Rector
CHI1
2008 Can information foraging pick the fix? A field study
abstract
Previous findings have revealed the ability of information foraging to model or predict where developers will navigate within source code. However, the previous investigation did not consider whether the places developers went were the right places to go. In this paper, we present afield study in which we investigated over 200 open source bug reports and feature requests. We analyzed the textual similarity of these issues in relation to the source code, and determined what files developers had changed to fix these issues. Our results demonstrate that information scent can narrow down quite well where developers should make fixes, implying that future software navigation tools can predict the appropriate places to make fixes based solely on the contents of the issue and the source code.
Joseph Lawrance, Rachel K. E. Bellamy, Margaret Bumett, Kyle Rector
VL/HCC1
2007 Scents in Programs: Does Information Foraging Theory Apply to Program Maintenance?
abstract
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.
Joseph Lawrance, Rachel K. E. Bellamy, Margaret M. Burnett
VL/HCC1
2006 Tinkering and gender in end-user programmers' debugging
abstract
Earlier research on gender effects with software features intended to help problem-solvers in end-user debugging environments has shown that females are less likely to use unfamiliar software features. This poses a serious problem because these features may be key to helping them with debugging problems. Contrasting this with research documenting males' inclination for tinkering in unfamiliar environments, the question arises as to whether encouraging tinkering with new features would help females overcome the factors, such as low self-efficacy, that led to the earlier results. In this paper, we present an experiment with males and females in an end-user debugging setting, and investigate how tinkering behavior impacts several measures of their debugging success. Our results show that the factors of tinkering, reflection, and self-efficacy, can combine in multiple ways to impact debugging effectiveness differently for males than for females.
Laura Beckwith, Cory Kissinger, Margaret M. Burnett, Susan Wiedenbeck, Joseph Lawrance, Alan F. Blackwell, Curtis R. Cook
CHI5
2006 Using Programming by Demonstration to Reorganize User Interfaces
abstract
In this paper, we explore the possibility of applying the techniques of programming by demonstration to reorganize the disparate elements of a user interface into cohesive units that correspond to the higher-level tasks that users perform
Joseph Lawrance
VL/HCC1
2006 Sharing reasoning about faults in spreadsheets: An empirical study
abstract
Although researchers have developed several ways to reason about the location of faults in spreadsheets, no single form of reasoning is without limitations. Multiple types of errors can appear in spreadsheets, and various fault localization techniques differ in the kinds of errors that they are effective in locating. In this paper, we report empirical results from an emerging system that attempts to improve fault localization for end-user programmers by sharing the results of the reasoning systems found in WYSIWYT and UCheck. By evaluating the visual feedback from each fault localization system, we shed light on where these different forms of reasoning and combinations of them complement - and contradict - one another, and which heuristics can be used to generate the best advice from a combination of these systems
Joseph Lawrance, Robin Abraham, Margaret M. Burnett, Martin Erwig
VL/HCC1
2005 How Well Do Professional Developers Test with Code Coverage Visualizations? An Empirical Study
abstract
Despite years of availability of testing tools, professional software developers still seem to need better support to determine the effectiveness of their tests. Without improvements in this area, inadequate testing of software seems likely to remain a major problem. To address this problem, industry and researchers have proposed systems that visualize "testedness" for end-user and professional developers. Empirical studies of such systems for end-user programmers have begun to show success at helping end users write more effective tests. Encouraged by this research, we examined the effect that code coverage visualizations have on the effectiveness of test cases that professional software developers write. This paper presents the results of an empirical study conducted using code coverage visualizations found in a commercially available programming environment. Our results reveal how this kind of code coverage visualization impacts test effectiveness, and provide insights into the strategies developers use to test code.
Joseph Lawrance, Steven Clarke, Margaret M. Burnett, Gregg Rothermel
VL/HCC1