Source-linked AI summary
Developer Experience: Concept and Definition
Fabian Fagerholm, Jürgen Münch
TL;DR
Distributed development makes it important to understand developers’ perceptions, feelings, motivations, and identification with their work. The paper proposes developer experience (DEx), informed by UX, and describes empirical studies intended to refine its understanding; initial interview analysis yielded qualitative understanding of DEx.
Problem
Distributed development heightens the need to understand developers’ perceptions, feelings, motivations, and identification with project goals amid human coordination challenges.
Source: §I · p. 2Method
The paper proposes DEx as a concept for capturing how developers think and feel about their work environments and describes student-project and practitioner-interview studies.
Source: §I · p. 2, §III · p. 4, §IV · p. 5Results
An initial analysis of interviews provided a rich qualitative understanding of DEx, and the paper presents its initial definition and model.
Source: §III · p. 4, §IV · p. 5Takeaways & Limitations
DEx may help practitioners analyze and adjust processes, align project goals with developers’ motivation, and understand factors affecting sustainable teamwork.
Source: §III · p. 5
Abstract
from arXiv · showhide
New ways of working such as globally distributed development or the integration of self-motivated external developers into software ecosystems will require a better and more comprehensive understanding of developers' feelings, perceptions, motivations and identification with their tasks in their respective project environments. User experience is a concept that captures how persons feel about products, systems and services. It evolved from disciplines such as interaction design and usability to a much richer scope that includes feelings, motivations, and satisfaction. Similarly, developer experience could be defined as a means for capturing how developers think and feel about their activities within their working environments, with the assumption that an improvement of the developer experience has positive impacts on characteristics such as sustained team and project performance. This article motivates the importance of developer experience, sketches related approaches from other domains, proposes a definition of developer experience that is derived from similar concepts in other domains, describes an ongoing empirical study to better understand developer experience, and finally gives an outlook on planned future research activities.
DOI: 10.1109/ICSSP.2012.6225984! !
The paper is by Fabian Fagerholm and Jürgen Münch and was published in the ICSSP 2012 proceedings.
Bibliographic information
- The paper is titled “Developer Experience: Concept and Definition.”The authors are Fabian Fagerholm and Jürgen Münch.Source: DOI: 10.1109/ICSSP.2012.6225984! ! · p. 1
- It appeared in the Proceedings of the International Conference on Software and System Process (ICSSP 2012), pages 73–77.The conference took place in Zurich, Switzerland, June 2–3, 2012.Source: DOI: 10.1109/ICSSP.2012.6225984! ! · p. 1
I. INTRODUCTION
The introduction argues that software development depends heavily on human factors, whose importance is sharpened by distributed work and its coordination demands. It proposes developer experience (DEx) as a way to help practitioners understand and improve project environments in light of developers’ perceptions and feelings.
I. INTRODUCTION
- Human factors strongly affect software development performance and quality, while tools and methods amplify skilled, coordinated teams,,,,,.The authors characterize software development as inherently human-based and intellectual.Source: §I · p. 2
- Distributed development increases the need to understand human factors, including communication across cultural, geographical, and temporal distances,,.The passage warns that communication and coordination flaws can lead to failure [12].Source: §I · p. 2
- Lack of trust, communication difficulties, and weak identification with project goals negatively affect project success, especially across collaborating organizations,,.Source: §I · p. 2
- Hundreds or thousands of factors may influence developer productivity, and most ways to influence it are non-technical,.The introduction cautions that overemphasis on productivity can undermine it.Source: §I · p. 2
- DEx captures how developers think and feel about their activities at work, aiming to help practitioners understand, analyze, design, and improve project environments.The concept is intended to abstract across many human characteristics without ignoring them and assumes improved DEx can positively affect project outcomes.Source: §I · p. 2
II. RELATED APPROACHES
Related approaches treat experience as subjective and spanning both immediate encounters and their remembered interpretation. The paper connects these ideas to UX, customer and brand experience, human factors in teams and simulations, and approaches that deliberately create experience.
II. RELATED APPROACHES
- Experience includes perceived events, memories, and knowledge gained through reflection, and is necessarily subjective [15], [16], [17].Source: §II · p. 3
- UX covers perceptions and responses to using or anticipating a product, system, or service, including episodic, ongoing, and socially shared experiences,,.Source: §II · p. 3
- Customer experience spans interactions over time or a single transaction, while brand experience concerns subjective and behavioral responses evoked by brand-related stimuli,.Source: §II · p. 3
- Team-performance approaches consider individual needs and moderators alongside group dynamics, context, communication, feedback, trust, and shared vision,,,,,.Source: §II · p. 3
- Software-process simulations can support decision-making and risk reduction and may include human variables, but existing models are often insufficiently detailed to capture human characteristics,.Source: §II · pp. 3–4
- Experience-design approaches prioritize user-experience quality and culturally relevant solutions, while Dewey’s account treats the artistic process itself as important,.The paper also notes that software creation can be considered an experience shaped by the methods governing it.Source: §II · p. 4
III. DEVELOPER EXPERIENCE
Developer experience (DEx) concerns developers’ involvement in software development, extending beyond feelings to cognitive, affective, conative, and social aspects. The concept may also inform process improvement, project management, team performance, and development environments.
III. DEVELOPER EXPERIENCE
- DEx refers to involvement in software development, not simply being experienced, and draws on the broader scope of user experience.Source: §III · p. 4
- DEx includes cognitive, affective, conative, and social aspects, reflecting how developers think, feel, and turn intentions into action.Source: §III · p. 4
- Its experiences span development infrastructure, feelings about work, and the perceived value of one’s contribution.Infrastructure includes tools, languages, platforms, processes, and methods; contribution value includes alignment between personal and project goals.Source: §III · p. 4
- DEx may inform process improvement, project plans and goals, sustainable teamwork, and the design of developer-facing platforms and ecosystems.Source: §III · p. 5
IV. ONGOING AND FUTURE WORK
The authors describe an ongoing empirical effort to understand how practitioners characterize developer experience and its relevant impact factors. Planned work includes refining and evaluating the model, developing measures, and examining links to project performance.
IV. ONGOING AND FUTURE WORK
- The first study asks how practitioners characterize developer experience in a specific environment and which factors they consider relevant.It also seeks commonalities and variation in practitioners’ conceptions, including possible differences by role, project setting, or culture.Source: §IV · p. 5
- The empirical work spans close-to-industry student projects and interviews with practitioners in five companies.Methods include questionnaires, video analysis, focus groups, thematic interviews, and affinity-diagram analysis.Source: §IV · p. 5
- Planned research will refine and evaluate the model, study selected DEx areas and their impact factors, and examine effects on project performance.The authors also plan measurement instruments, practitioner guidelines, and analysis tools.Source: §IV · p. 5