  For more than thirty years, it has been claimed that a way to improve
software developers' productivity and software quality is to focus on people.
The underlying assumption seems to be that "happy and satisfied software
developers perform better". More specifically, affects-emotions and moods-have
an impact on cognitive activities and the working performance of individuals.
Development tasks are undertaken heavily through cognitive processes, yet
software engineering research (SE) lacks theory on affects and their impact on
software development activities. This PhD dissertation supports the advocates
of studying the human and social aspects of SE and the psychology of
programming. This dissertation aims to theorize on the link between affects and
software development performance. A mixed method approach was employed, which
comprises studies of the literature in psychology and SE, quantitative
experiments, and a qualitative study, for constructing a multifaceted theory of
the link between affects and programming performance. The theory explicates the
linkage between affects and analytical problem-solving performance of
developers, their software development task productivity, and the process
behind the linkage. The results are novel in the domains of SE and psychology,
and they fill an important lack that had been raised by both previous research
and by practitioners. The implications of this PhD lie in setting out the basic
building blocks for researching and understanding the affect of software
developers, and how it is related to software development performance. Overall,
the evidence hints that happy software developers perform better in analytic
problem solving, are more productive while developing software, are prone to
share their feelings in order to let researchers and managers understand them,
and are susceptible to interventions for enhancing their affects on the job.
