Happy software developers solve problems better: psychological measurements in empirical software engineering
arXiv:1505.00922 · doi:10.7717/peerj.289
Abstract
For more than 30 years, it has been claimed that a way to improve software developers' productivity and software quality is to focus on people and to provide incentives to make developers satisfied and happy. This claim has rarely been verified in software engineering research, which faces an additional challenge in comparison to more traditional engineering fields: software development is an intellectual activity and is dominated by often-neglected human aspects. Among the skills required for software development, developers must possess high analytical problem-solving skills and creativity for the software construction process. According to psychology research, affects-emotions and moods-deeply influence the cognitive processing abilities and performance of workers, including creativity and analytical problem solving. Nonetheless, little research has investigated the correlation between the affective states, creativity, and analytical problem-solving performance of programmers. This article echoes the call to employ psychological measurements in software engineering research. We report a study with 42 participants to investigate the relationship between the affective states, creativity, and analytical problem-solving skills of software developers. The results offer support for the claim that happy developers are indeed better problem solvers in terms of their analytical abilities. The following contributions are made by this study: (1) providing a better understanding of the impact of affective states on the creativity and analytical problem-solving capacities of developers, (2) introducing and validating psychological measurements, theories, and concepts of affective states, creativity, and analytical-problem-solving skills in empirical software engineering, and (3) raising the need for studying the human factors of software engineering by employing a multidisciplinary viewpoint.
33 pages, 11 figures, published at PeerJ
References in corpus (1)
Cited by in corpus (27)
- What happens when software developers are (un)happy
- On the Unhappiness of Software Developers
- Software developers, moods, emotions, and performance
- Do feelings matter? On the correlation of affects and the self-assessed productivity in software engineering
- How Do You Feel, Developer? An Explanatory Theory of the Impact of Affects on Programming Performance
- Recognizing Developers' Emotions while Programming
- Sentiment Analysis Tools in Software Engineering: A Systematic Mapping Study
- Unhappy Developers: Bad for Themselves, Bad for Process, and Bad for Software Product
- Consequences of Unhappiness While Developing Software
- A Call to Promote Soft Skills in Software Engineering
- Understanding the Affect of Developers: Theoretical Background and Guidelines for Psychoempirical Software Engineering
- Development and Application of Sentiment Analysis Tools in Software Engineering: A Systematic Literature Review
- The Mind Is a Powerful Place: How Showing Code Comprehensibility Metrics Influences Code Understanding
- Using Students as Experimental Subjects in Software Engineering Research -- A Review and Discussion of the Evidence
- Chat activity is a better predictor than chat sentiment on software developers productivity
- Features that Predict the Acceptability of Java and JavaScript Answers on Stack Overflow
- How (Un)Happiness Impacts on Software Engineers in Agile Teams?
- Happiness and the productivity of software engineers
- Students' and Professionals' Perceived Creativity In Software Engineering: A Comparative Study
- What Makes Programmers Laugh? Exploring the Submissions of the Subreddit r/ProgrammerHumor
- Predicting Community Smells' Occurrence on Individual Developers by Sentiments
- Towards a Theory of Affect and Software Developers' Performance
- Emotimonitor: A Trello Power-Up to Capture Emotions of Agile Teams
- Measuring Affectiveness and Effectiveness in Software Systems
- Developing a Suitability Assessment Criteria for Software Developers: Behavioral Assessment Using Psychometric Test
- Toward a Better Understanding of How to Develop Software Under Stress - Drafting the Lines for Future Research
- Measurement of Interpersonal Trust in Global Software Development: SLR Protocol