TY - JOUR
T1 - Like, dislike, or just do it? How developers approach software development tasks
AU - Masood, Zainab
AU - Hoda, Rashina
AU - Blincoe, Kelly
AU - Damian, Daniela
N1 - Funding Information:
We thank all participants who contributed to this study. We would also like to thank our anonymous reviewers for their feedback that helped to improve the quality of this work. This study was conducted under approval from the Human Participants Ethics Committee at the University of Auckland. This research was partially funded by the Natural Sciences and Engineering Research Council (NSERC), Canada and Google Research Faculty Award .
Funding Information:
We thank all participants who contributed to this study. We would also like to thank our anonymous reviewers for their feedback that helped to improve the quality of this work. This study was conducted under approval from the Human Participants Ethics Committee at the University of Auckland. This research was partially funded by the Natural Sciences and Engineering Research Council (NSERC), Canada and Google Research Faculty Award.
Publisher Copyright:
© 2022 Elsevier B.V.
PY - 2022/10
Y1 - 2022/10
N2 - Context: Software developers work on various tasks and activities that contribute towards creating and maintaining software applications, frameworks, or other software components. These include technical (e.g., writing code and fixing bugs) and non-technical activities (e.g., communicating within or outside teams to understand, clarify, and resolve issues) as part of their day-to-day responsibilities. Interestingly, there is an aspect of desirability associated with these tasks and activities. Objective: However, not all of these tasks are desirable to developers, and yet they still need to be done. This study explores desirability and undesirability of developers for software development tasks. Method: Based on semi-structured interviews from 32 software developers and applying a grounded theory research approach, the study investigates what tasks are desirable and undesirable for developers, what makes tasks desirable and undesirable for them, what are the perceived consequences of working on these tasks, and how do they deal with such tasks. Results: We identified a set of underlying factors that make tasks (un)desirable for developers, categorised as personal, social, organisational, technical, and operational factors. We also found that working on desirable tasks has positive consequences while working on undesirable tasks has negative consequences. We reported different standard, assisted, and mitigation strategies that aid software practitioners manage developers’ likes and dislikes. Conclusion: Understanding these likes and dislikes, contributing factors, and strategies can help the managers and teams ensure balanced work distribution, developers’ happiness, and productivity, ultimately increasing the value developers add to software products.
AB - Context: Software developers work on various tasks and activities that contribute towards creating and maintaining software applications, frameworks, or other software components. These include technical (e.g., writing code and fixing bugs) and non-technical activities (e.g., communicating within or outside teams to understand, clarify, and resolve issues) as part of their day-to-day responsibilities. Interestingly, there is an aspect of desirability associated with these tasks and activities. Objective: However, not all of these tasks are desirable to developers, and yet they still need to be done. This study explores desirability and undesirability of developers for software development tasks. Method: Based on semi-structured interviews from 32 software developers and applying a grounded theory research approach, the study investigates what tasks are desirable and undesirable for developers, what makes tasks desirable and undesirable for them, what are the perceived consequences of working on these tasks, and how do they deal with such tasks. Results: We identified a set of underlying factors that make tasks (un)desirable for developers, categorised as personal, social, organisational, technical, and operational factors. We also found that working on desirable tasks has positive consequences while working on undesirable tasks has negative consequences. We reported different standard, assisted, and mitigation strategies that aid software practitioners manage developers’ likes and dislikes. Conclusion: Understanding these likes and dislikes, contributing factors, and strategies can help the managers and teams ensure balanced work distribution, developers’ happiness, and productivity, ultimately increasing the value developers add to software products.
KW - Contributing factors
KW - Desirability
KW - Software tasks
KW - Undesirability
UR - http://www.scopus.com/inward/record.url?scp=85131460830&partnerID=8YFLogxK
U2 - 10.1016/j.infsof.2022.106963
DO - 10.1016/j.infsof.2022.106963
M3 - Article
AN - SCOPUS:85131460830
SN - 0950-5849
VL - 150
JO - Information and Software Technology
JF - Information and Software Technology
M1 - 106963
ER -