The Role of Empathy in Software Engineering

The limited attention given to empathy in SE literature highlights a significant gap in understanding its role in developer-stakeholder interactions and its impact on their effectiveness. While empathy has been extensively studied in other disciplines, only two studies have specifically examined its effects in SE. Addressing this gap, our study builds on existing work by offering a more in-depth empirical investigation through direct engagement with practitioners. This approach enables us to examine how empathy manifests in real-world software development contexts and how it shapes developer-stakeholder relationships, contributing to a more comprehensive understanding of its influence.

We conducted a socio-technical grounded theory study involving 22 semi-structured interviews with software developers and their stakeholders to explore the role of empathy in SE, focusing on interactions between these groups.

We developed a comprehensive theory of empathy in SE, framed by the 6Cs model. Our findings address the context, conditions, causes, and consequences of empathy, as well as its absence. We also identified strategies (contingencies) for enhancing empathy and explored the relationships (covariances) between these categories. Our findings highlight that empathy is a key factor influencing both the personal well-being of software practitioners and the success of software development processes. Our theory on the role of empathy in interactions between developers and stakeholders in SE provides insights into: (a) the context, which provides key background information about the participants, including their work locations, team dynamics, and organisational settings; (b) the conditions, which describe the factors necessary for empathy to manifest as a central phenomenon; (c) the causes, which identify the drivers of empathy as well as its absence; (d) the consequences, which outline the outcomes of both the presence and absence of empathy; (e) the contingencies, which include strategies to foster empathy or address barriers to it; (f) the covariances, which represent the relationships between these categories.

Based on our findings, we propose several future research directions for the SE community to deepen the understanding of empathy in SE. We recommend further exploration of factors influencing empathy, such as cultural differences, personality traits, and team composition. Additionally, we suggest in-depth studies on the dynamics of empathy across different SE roles, as interactions vary depending on the nature of each role. For example, developers and testers often experience friction, while testers and product owners typically have more collaborative relationships. Further, we advocate for research into empathy training frameworks, which are widely employed in medical education to enhance patient-clinician empathy to evaluate their potential applicability and benefits within the SE context.