979 research outputs found

    Individual differences limit predicting well-being and productivity using software repositories : a longitudinal industrial study

    Get PDF
    Reports of poor work well-being and fluctuating productivity in software engineering have been reported in both academic and popular sources. Understanding and predicting these issues through repository analysis might help manage software developers' well-being. Our objective is to link data from software repositories, that is commit activity, communication, expressed sentiments, and job events, with measures of well-being obtained with a daily experience sampling questionnaire. To achieve our objective, we studied a single software project team for eight months in the software industry. Additionally, we performed semi-structured interviews to explain our results. The acquired quantitative data are analyzed with generalized linear mixed-effects models with autocorrelation structure. We find that individual variance accounts for most of the R-2 values in models predicting developers' experienced well-being and productivity. In other words, using software repository variables to predict developers' well-being or productivity is challenging due to individual differences. Prediction models developed for each developer individually work better, with fixed effects R-2 value of up to 0.24. The semi-structured interviews give insights into the well-being of software developers and the benefits of chat interaction. Our study suggests that individualized prediction models are needed for well-being and productivity prediction in software development.Peer reviewe

    How diverse is your team? Investigating gender and nationality diversity in GitHub teams

    Get PDF
    Open Access: This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.Background Building an effective team of developers is a complex task faced by both software companies and open source communities. The problem of forming a “dream” team involves many variables, including consideration of human factors and it is not a dilemma solvable in a mathematical way. Empirical studies might provide interesting insights to explain which factors need to be taken into account in building a team of developers and which levers act to optimise productivity among developers. Aim In this paper, we present the results of an empirical study aimed at investigating the link between team diversity (i.e., gender, nationality) and productivity (issue fixing time). Method We consider issues solved from the GHTorrent dataset inferring gender and nationality of each team’s members. We also evaluate the politeness of all comments involved in issue resolution. Results Results show that higher gender diversity is linked with a lower team average issue fixing time (higher productivity), that nationality diversity is linked with lower team politeness and that gender diversity is linked with higher sentiment.Peer reviewedFinal Published versio

    Moody Man: Improving creative teamwork through dynamic affective recognition

    Get PDF
    While a significant part of communication in the workplace is now happening online, current platforms don’t fully support socio-cognitive nonverbal communication, which hampers the shared understanding and creativity of virtual teams. Given text-based communication being the main channel for virtual collaboration, we propose a novel solution leveraging an AI-based, dynamic affective recognition system. The app provides live feedback about the affective content of the communication in Slack, in the form of a visual representation and percentage breakdown of the ‘sentiment’ (tone, emoji) and main ‘emotion states’ (e.g. joy, anger). We tested the usability of the app in a quasi-experiment with 30 participants from diverse backgrounds, linguistic analysis and user interviews. The findings show that the app significantly increases shared understanding and creativity within virtual teams. Emerged themes included impression formation assisted by affective recognition, supporting long-term relationships development; identified challenges related to transparency and emotional complexity detected by AI

    “You’re trolling because…” – A Corpus-based Study of Perceived Trolling and Motive Attribution in the Comment Threads of Three British Political Blogs

    Get PDF
    This paper investigates the linguistically marked motives that participants attribute to those they call trolls in 991 comment threads of three British political blogs. The study is concerned with how these motives affect the discursive construction of trolling and trolls. Another goal of the paper is to examine whether the mainly emotional motives ascribed to trolls in the academic literature correspond with those that the participants attribute to the alleged trolls in the analysed threads. The paper identifies five broad motives ascribed to trolls: emotional/mental health-related/social reasons, financial gain, political beliefs, being employed by a political body, and unspecified political affiliation. It also points out that depending on these motives, trolling and trolls are constructed in various ways. Finally, the study argues that participants attribute motives to trolls not only to explain their behaviour but also to insult them

    On the Impact of Affect in Software Engineering

    Get PDF
    RÉSUMÉ Selon les études scientifiques, l’une des meilleures façons d’améliorer la performance des développeurs de logiciels peut être réalisée en se concentrant sur les individus. Par exemple,Agile Manifesto a évalué les individus et leurs interactions sur les processus et les outils,tout en mettant l’accent sur le fait de fournir un environnement favorable et souhaitable aux employés. En outre, les recherches menées dans les autres domaines comme la psychologie, le comportement économique et organisationnel révèlent que le bien-être émotionnel des gens agit comme une force causale de leur productivité. Les affects d’individus, c’est-à-dire leurs émotions, leurs sentiments et leur humeur influencent sur leur comportement et leurs interactions et, par conséquent, le développement de logiciels en tant qu’activité collaborative des développeurs peuvent également être influencé par ces affects. Surtout sachant que le développement logiciel est un processus complexe, cognitif et intellectuel, ces affects peuvent avoir un impact significatif sur son succès. Jusqu’à présent, très peu d’études ont été menées dans un contexte de génie logiciel pour étudier comment les affects des développeurs pourraient influencer le processus de développement logiciel et quelles conséquences ils peuvent apporter. Cette thèse vise à étudier le lien entre les affects des développeurs et les aspects cruciaux du processus d’ingénierie logicielle, il s’agit de la qualité du travail en résultat et le temps nécessaire pour y parvenir. À cette fin, nous avons effectué plusieurs études empiriques sur des projets "open source" populaires. Dans un premier temps, nous avons essayé d’analyser la présence d’affects dans des artefacts de génie logiciel/ de l’ingénierie du logiciel, d’inspecter leurs significations dans ce contexte et de vérifier la faisabilité du support automatique d’outil pour la détection de l’affect dans le domaine du génie logiciel/ de l’ingénierie du logiciel grâce à ces études empiriques. Ensuite, deux grandes études de cas empiriques ont été réalisées pour analyser l’impact des systèmes métriques liés affectifs. Dans la première étude, nous avons examiné l’impact de divers facteurs, y compris le sentiment de l’issue et les commentaires sur la défectuosité-pronostic d’un correctif. Ensuite, les commentaires ont laissé dans le repérage de la sortie et des dépôts utilisés comme proxy pour les discussions humaines. Les modèles explicatifs ont montré une précision et un rappel significatif, en particulier en raison de l’impact des facteurs humains de la discussion humaine, tandis que les paramètres liés au sentiment y jouent également un rôle. Dans notre deuxième étude, nous nous sommes concentrés sur la durée de l’examen du code et la résolution des problèmes, qui sont deux activités principales dans le développement de logiciels. Bien que cette étude utilise les mêmes données que l’étude précédente, les facteurs analysés l’ont plus largement été sélectionnés, par exemple, pour les facteurs liés à l’affect, les mesures, y compris le sentiment, l’émotion et la politesse des commentaires ont été calculés. Les facteurs liés à l’affect sont apparus parmi les 10 principaux éléments influents des modèles proposés. Tandis que, des modèles explicatifs forts ont été obtenus avec une haute précision et un rappel élevé, c’est-à-dire plus de 75% pour aussi bien la précision que pour le rappel. Les découvertes de ces deux études ont révélé que des facteurs concernant l’affect ont un impact sur de principales mesures du processus de développement de logiciels, incluant la qualité et le temps pris pour mettre fin aux activités principales, il s’agit de l’examen de code et la résolution des problèmes (publication). Cela est encore plus important pour les projets "open source", car récemment, de nombreux projets "open source" populaires et même des référentiels de code comme Github ont commencé à chercher une solution possible pour traiter des conflits, sous forme de codes de conduite. De grands projets logiciels, comme des projets "open source", sont construits et entretenus en collaboration par des équipes de développeurs et de testeurs, qui sont typiquement et géographiquement dispersés. Cette dispersion crée une distance entre des membres de l’équipe, cachant des entiments de détresse ou (un)bonheur de leur gestionnaire, ce qui les empêche d’utiliser des techniques de remédiation de ces sentiments. La mesure automatique de l’incidence des artefacts du génie logiciel peut aider des gestionnaires à contrôler leurs environnements d’équipe en fonction de leurs besoins et à augmenter leur conscience émotionnelle. Cela pourrait finalement conduire à une meilleure prise de décision pour ces directeurs au moment désiré à stimuler l’ambiance de leur équipe et de traiter des conflits ou des obstacles avant qu’ils deviennent perplexes et insolubles. Nous avons conduit une étude empirique pour comprendre des codes de conduite et leur rôle dans des projets "open source". Nous espérons que cette évaluation de codes de conduite et nos résultats avec des mesures d’affect automatisées pourront permettre aux praticiens de non seulement remarquer des problèmes, mais également d’évaluer des contre-mesures éventuelles à prendre.----------ABSTRACT According to scientific studies, one of the best ways to improve software developers’ performance is by focusing on people. For instance, Agile manifesto valued individuals and their interactions over processes and tools, while emphasizing a supportive and desirable environment for employees. Moreover, research in other fields like psychology, economic and organizational behaviour reveals that emotional well-being of people acts as a causal force for their productivity. Affects of individuals, i.e. their emotions, feelings, and mood influence human behaviour and interactions, and therefore, software development as a collaborative activity of developers can be influenced by affect too. Especially knowing that software development is a complex, cognitive, and intellectual process, affect might have a significant impact on its success. So far, very few studies have been conducted in a software engineering context to investigate how developer affect may influence the software development process and what consequences they can bring about. This PhD dissertation aims to investigate the link between affect of developers and important aspects of software engineering process, i.e., quality of the resulting work and the time taken to achieve it. For this purpose, we conducted several empirical studies on popular open source projects. First, we tried to analyze the presence of affects in software engineering artifacts, inspect their meanings in this context and verify the feasibility of automatic tool support for affect detection in the software engineering domain through empirical studies. Next, two large empirical case studies were done to analyze the impact of affective-related metrics. In the first study, comments left in the issue tracking and review repositories were considered as proxy for human discussions. Then, we investigated the impact of various factors including sentiment of issue and review comments on defect-proneness of a patch. Explanatory models showed significant precision and recall, especially due to the impact of human discussion factors while sentiment-related metrics play a role in them too. In our third study, we focused on the duration of code reviewing and issue resolution, which are two major activities in software development. While this study used the same data as the previous study, the analyzed factors were selected more widely, for instance, for affectrelated factors, measurements including sentiment, emotion and politeness of comments were computed. Affect-related factors appeared among the top 10 influential factors of proposed models. While, strong explanatory models were obtained with high precision and recall, i.e., mostly higher than 75% for both precision and recall. Findings of these last two studies revealed that affect-related factors impact major metrics in software development process including quality and time taken to finish main activities, i.e., code reviewing and issue resolution. This is even more important for open source projects, since recently, many popular open source projects and even code repository like Github started to look for a possible solution to deal with conflicts, in the form of codes of conduct. Large software projects like open source projects, are constructed and maintained collaboratively by teams of developers and testers, who are typically geographically dispersed. This dispersion creates a distance between team members, hiding feelings of distress or (un)happiness from their manager, which prevents him or her from using remediation techniques for those feelings. Automatic affect measurement from software engineering artifacts can help managers to monitor their team environments affect-wise and increase their emotional-awareness. This finally may lead to better decision making for managers at the appropriate time to boost the atmosphere of their team and to deal with conflicts or obstacles before they are getting perplexing and insoluble. We conducted an empirical study to understand codes of conduct and their role in open source projects. We hope that this evaluation of codes of conduct and our results with automated affect measurements will be able to enable practitioners to not only notice problems, but also evaluate possible countermeasures to take

    Large Language Models for Software Engineering: A Systematic Literature Review

    Full text link
    Large Language Models (LLMs) have significantly impacted numerous domains, notably including Software Engineering (SE). Nevertheless, a well-rounded understanding of the application, effects, and possible limitations of LLMs within SE is still in its early stages. To bridge this gap, our systematic literature review takes a deep dive into the intersection of LLMs and SE, with a particular focus on understanding how LLMs can be exploited in SE to optimize processes and outcomes. Through a comprehensive review approach, we collect and analyze a total of 229 research papers from 2017 to 2023 to answer four key research questions (RQs). In RQ1, we categorize and provide a comparative analysis of different LLMs that have been employed in SE tasks, laying out their distinctive features and uses. For RQ2, we detail the methods involved in data collection, preprocessing, and application in this realm, shedding light on the critical role of robust, well-curated datasets for successful LLM implementation. RQ3 allows us to examine the specific SE tasks where LLMs have shown remarkable success, illuminating their practical contributions to the field. Finally, RQ4 investigates the strategies employed to optimize and evaluate the performance of LLMs in SE, as well as the common techniques related to prompt optimization. Armed with insights drawn from addressing the aforementioned RQs, we sketch a picture of the current state-of-the-art, pinpointing trends, identifying gaps in existing research, and flagging promising areas for future study

    Sensing Depression

    Get PDF
    The hallmark indicator of depressive disorders is a presence of sad, empty, or irritable mood, accompanied by somatic and cognitive changes that significantly affect the individuals capacity to function. The overall goal of our project is to provide a tool for doctors to effortlessly detect depression, and in effect achieve greater coverage in detecting depression over the general population. We use machine learning techniques to create a mobile application that infers a smartphone users severity of depression from data scraped off their phone and social media websites. Through our study, we have demonstrated the feasibility of this approach to diagnosing depression, achieving an average testset RMSE of 5.67 across all modalities in the task of PHQ-9 score predictions

    Methods of small group research

    Get PDF

    Effects of Personality Traits and Emotional Factors in Pull Request Acceptance.

    Get PDF
    Social interactions in the form of discussion are an indispensable part of collaborative software development. The discussions are essential for developers to share their views and to form a strong relationship with other teammates. These discussions invoke both positive and negative emotions such as joy, love, aggression, and disgust. Additionally, developers also exhibit hidden behaviours that dictate their personality. Some developers can be supportive and open to new ideas, whereas others can be conservative. Past research has shown that the personality of the developers has a significant role in determining the success of the task they collaboratively perform. Additionally, previous research has also shown that in online collaborative environments, the developers use signals from comments such as rudeness to determine if they are compatible to work together. Most of these studies use traditional small-scale surveys for their experiments. The transparent nature of online collaborative environments makes it easier to conduct empirical experiments by mining pull request comments. In this thesis, first, we investigate the effect of different personality traits on pull request acceptance. The results of this experiment will provide us with a valuable understanding of the personality traits of developers and help us develop tools to assist developers. We follow it with a second experiment to understand the influence of different emotional factors on pull request decisions. The emotion expressed by a developer on their teammates can be influenced by social statuses, such as the number of followers. Moreover, the teammate's team status, such as team member or outside contributor too, can influence the emotional effect. To understand moderation, we investigate different interaction effects. We start the experiment by replicating Tsay et al.'s work that examined the influence of social factors (e.g., `social distance') and technical factors (e.g., test file inclusion) for evaluating contributions. We extend their work by augmenting it with personality traits of developers and examining the influence of on the pull request evaluation process in GitHub. In particular, we extract the `Big Five' personality traits (Openness, Conscientiousness, Extraversion, Agreeableness, and Neuroticism) of developers from their online digital footprints, such as pull request comments. We analyze the personality traits of 16,935 active developers from 1,860 projects and compare their relative importance to other non-personality factors from past research, in the pull request evaluation process. We find that pull requests from authors (requesters) who are more open and conscientious, but less extroverted, have a higher chance of approval. Furthermore, pull requests that are closed by developers (closers) who are more conscientious, extroverted, and neurotic, have a higher likelihood of acceptance. The larger the difference in personality traits between the requester and the closer, the more positive effect it has on pull request acceptance. Although the effect of personality traits is significant and comparable to technical factors, we find that social factors are still more influential when it comes to the effect in the likelihood of pull request acceptance. We perform a second experiment to analyze the effect of emotions on pull request decisions. To predict emotions in the comments, we develop a generalised, software engineering specific language model that outperforms previous machine learning algorithms on four different standard datasets. We find that the percentage of positive comments from both requester and closer has a positive association with pull request acceptance, whereas the percentage of negative comments has a negative association. Also, the polarity of the emotion associated with the first comment of both requester and closer had a positive association with pull request acceptance, i.e., more positive the emotion, the higher the likelihood of acceptance. Finally, we find that social factors moderate the effects of emotions
    corecore