Research Overview
My research falls in the area of human-computer interaction, with two main themes: improving working through software and data, and human factors in software engineering (the study of the people and processes involved in the creation of software). I seek to facilitate the exchange of knowledge between practitioners and researchers, and also align my work with empirical software engineering.
Research Area I: Improving Working through Software and Data
There are three main areas of focus within this topic: using natural language processing to improve qualitative data analysis and requirements engineering, software engineering research methods, and software engineering education.
Using natural language processing to improve qualitative data analysis and requirements engineering
Research in this area is concerned with improving the process of analyzing textual data, and with improving the quality of the results. Important work in this area has dealt with exploring natural language processing to improve the consistency of qualitative data analysis (Kaufmann, Barcomb and Riehle, 2020) and and using qualitative data analysis in requirements engineering (Kaufmann, Krause, Harutyunyan, Barcomb and Riehle, 2021). Current research in this area is supported by an NSERC Discovery grant.
Software engineering research methods
This research area focuses on examining how researchers in software engineering area performing qualitative research, and how it might be improved. Initial work involved technical reports on using qualitative data analysis techniques to add rigor to the development of patterns (Riehle, Harutyunyan and Barcomb, 2020) and on using a distributed team for inter-rater agreement in qualitative data analysis (Kaufmann, Barcomb and Riehle, 2016).
Software engineering education
This topic concerns how to conduct and improve software engineering education. A key paper in this area concerned industry collaboration to improve the content of courses (Marasco, Barcomb, Dwomoh, Eguia, Jaffary, Johnson, Leonard and Shupe, 2022).
Research Area II: Human Factors in Software Development
This line of research focuses on the people and processes involved in the creation of software. There are three main areas of research under this theme, in addition to single papers exploring other ideas. The main areas are: open source software contributors and communities, diversity and inclusion, and component and tool selection.
Open source software contributors and communities
Much of the work in this area has focused on episodic participation, including why people participate episodically, how their episodic participation relates to their participation in other projects, and how communities or organizations can support and make use of episodic participants. The most important work in this area consists of three papers which were part of my doctoral dissertation; the papers examined the presence of episodic participation in free/libre and open source software development (Barcomb, Kaufmann, Riehle, Stol and Fitzgerald, 2018), retention of episodic participants in free/libre and open source software (Barcomb, Stol, Riehle and Fitzgerald, 2019), and practices for managing episodic participation in free/libre and open source software (Barcomb, Stol, Fitzgerald and Riehle, 2020). My work on episodic participation has also been the focus of my outreach activities. I published two practitioner articles and presented at five practitioner conferences between 2017 and 2020, and one of my graduate students presented a talk in 2023. Recent work in this area has also considered company participation in free/libre and open source software (Yenişen Yavuz, Barcomb and Riehle, 2022).
Diversity and inclusion
Work in this area has focused on ageism and sexism experienced by software
developers. A key paper in this area is "STILL AROUND": Experiences and Survival Strategies of Veteran Women Software Developers (van Breukelen, Barcomb, Baltes and Serebrenik, 2023), which received an ACM SIGSOFT Distinguished Paper award.
Component and tool selection
This area of research focuses on decisions concerning developer's choices in
component and tool selection. Preliminary work in this area, which also relates to the open source software category, looked at the consistency of licensing on GitHub and existing tools for identifying licenses (Wolter, Barcomb, Riehle and Harutyunyan, 2022).
Other work
Other work related to human factors has included examining how software
developers acquire skills (Barcomb, Grottke, Stauffert, Riehle and Jahn, 2015), ordering managerial preferences for developers' skills (Barcomb, Jullien, Meyer and Olteanu, 2019) and the effect of autonomy on motivation in software development (Noll, Beecham, Razzak, Richardson, Barcomb and Richardson, 2017).