Social inclusion is a fundamental feature of thriving societies. This paper first investigates barriers for social inclusion in online Software Engineering (SE) communities, by identifying a set of attributes and organising them as a taxonomy. Second, by applying the taxonomy and analysing language used in the comments posted by members in 189 Gitter projects (with > 3 million comments), it presents evidence for the presence of the social exclusion problem. Third, it presents a framework for improving social inclusion in SE communities.
Understanding self-efficacy in the context of Software Engineering: A qualitative study in the Industry.
CONTEXT:Self-efficacy is a concept researched in various areas of knowledge that impacts various factors such as performance, satisfaction, and motivation. In Software Engineering, it has mainly been studied in the academic context, presenting results similar to other areas of knowledge. However, it is also important to understand its impact in the industrial context. OBJECTIVE: Therefore, this study aims to understand the impact on the software development context with a focus on understanding the behavioral signs of self-efficacy in software engineers and how self-efficacy can impact the work-day of software engineers. METHOD: A qualitative research was conducted using semi-structured questionnaires with 32 interviewees from a software development company located in Brazil. The interviewees participated in a Bootcamp and were later assigned to software development teams. Thematic analysis was used to analyze the data. RESULTS: In the perception of the interviewees, 27 signs were found that are related to people with high and low self-efficacy. These signs were divided into three dimensions: social, cognitive, and performance. Also, 30 situations were found that can lead to an increase or decrease of self-efficacy of software engineers. Finally, 14 factors were mentioned that can impact software development teams. CONCLUSION: From this work, it is possible to understand even more the importance of self-efficacy in the industrial context. It presents a set of signs that can help team leaders to better perceive the self-efficacy of their members. In addition, it also presents a set of situations that both leaders and individuals can use to improve their self-efficacy in the development context, and finally, factors that can be impacted by self-efficacy in the software development context are also presented. This work emphasizes the importance of understanding self-efficacy in the industrial context.
Barriers for Social Inclusion in Online Software Engineering Communities - A Study of Offensive Language Use in Gitter Projects
Short Paper
Social inclusion is a fundamental feature of thriving societies. This paper first investigates barriers for social inclusion in online Software Engineering (SE) communities, by identifying a set of attributes and organising them as a taxonomy. Second, by applying the taxonomy and analysing language used in the comments posted by members in 189 Gitter projects (with > 3 million comments), it presents evidence for the presence of the social exclusion problem. Third, it presents a framework for improving social inclusion in SE communities.
Developers' Perception of GitHub Actions: A Survey Analysis
GitHub Actions were introduced in 2019 to increase workflow velocity and add customized automation to the repositories. In addition, GitHub introduced its own marketplace for promoting, commercializing, and sharing these automation tools, which currently hosts 16,730 Actions. Further, there are numerous Actions that are developed and distributed in local repositories and outside the marketplace. So far, the research community conducted mining studies to understand GitHub Actions with a significant focus on CI/CD. We performed a survey study with 90 Action developers and users of GitHub Actions to understand the motivations and best practices in using, developing, and debugging Actions, and the challenges associated with these tasks. We found that developers prefer Actions with verified creators and more stars when choosing between similar Actions, and often switch to a different Action when an Action has bugs, is not properly documented, or another Action of better quality is available. Developers choose to develop new Actions rather than using the existing ones mainly when there is no existing Action for their task or the existing Actions are limited in functionality. 60.87% of the developers consider the composition of YAML files challenging and error-prone and mostly check Q/A forums to fix issues with these YAML files. Finally, developers tend to avoid using Actions to reduce complexity, and security risk, or when the benefits of Actions are not worth the cost/effort of setting up Actions for automation.
Exploring the UK Cyber Skills Gap through a mapping of active job listings to the Cyber Security Body of Knowledge (CyBOK)
Background: The UK cyber skills gap/shortage amplifies the broader impact of cyber-attacks, which inflict harms such as privacy and economic loss on wider society. The demand is greatest (and growing fastest) in cyber-enabled disciplines, such as software engineering.
Objectives: In this paper, we create a term frequency-inverse document frequency representation of the Cyber Security Body of Knowledge (CyBOK). We then evaluate the potential of this representation by using it to automatically map job descriptions to the different areas of the CyBOK.
Method: We generate two representations of the CyBOK. The representations are mapped to a corpus of 454 job descriptions using TF-IDF. Comparing the similarity scores across these mappings allows us to identify relevant knowledge areas/groups.
Results: The results are preliminary, but suggest that the approach warrants further investigation. Certain job descriptions are mapped to certain knowledge areas/groups in a way that makes intuitive sense to the authors. However, there is a degree homogeneity to the scores returned for certain knowledge areas/groups. There are several threats to validity, most notably the low number of job descriptions that have been studied.
Conclusions: Our work shows that it is possible to automatically map job descriptions to the CyBOK in a meaningful way. Further research is required to address threats and to explore alternative mapping approaches. The authors intend to undertake this research culminating with a Grey Literature Informed Model of Practice in Secure Software Engineering.
Measuring User Experience of Adaptive User Interfaces using EEG: A Replication Study
Background: Adaptive user interfaces have the advantage of being able to dynamically change their aspect and/or behaviour depending on the characteristics of the context of use, i.e. to improve user experience. User experience is an important quality factor that has been primarily evaluated with classical measures (e.g. effectiveness, efficiency, satisfaction), but to a lesser extent with physiological measures, such as emotion recognition, skin response, or brain activity. Aim: In a previous exploratory experiment involving users with different profiles and a wide range of ages, we analysed user experience in terms of cognitive load, engagement, attraction and memorisation when employing twenty graphical adaptive menus through the use of an Electroencephalogram (EEG) device. The results indicated that there were statistically significant differences for these four variables. However, we considered that it was necessary to confirm or reject these findings using a more homogeneous group of users. Method: We conducted a strict internal replication study with 40 participants. We also investigated the potential correlation between EEG signals and the participants’ user experience ratings, such as their preferences. Results: The results of this experiment confirm that there are statistically significant differences between the EEG variables when the participants interact with the different adaptive menus. Moreover, there is a high correlation among the participants’ user experience ratings and the EEG signals, and a trend regarding performance has emerged from our analysis. Conclusions: These findings suggest that EEG signals could be used to evaluate user experience. With regard to the menus studied, our results suggest that graphical menus with different structures and font types produce more differences in users’ brain responses, while menus which use colours produce more similarities in users’ brain responses. Several insights with which to improve users’ experience of graphical adaptive menus are outlined.
Replication and Extension of Schnappinger’s Study on Human-level Ordinal Maintainability Prediction Based on Static Code Metrics
Short Paper
As a part of a research project concerning software maintainability assessment in collaboration with the development team, we replicated a study from Schnappinger et al. on human-level ordinal maintainability prediction. Our goal was to validate that we could obtain the same results with the open-source dataset and the open-source tool Javanalyser. Moreover, we extended the setup to predict continuous maintainability and evaluated the overall influence of the size of the class over the predictions. Our approach consisted of nearly $20,000$ experimental shots to replicate and extend the original study. All our datasets, code, and results are released publicly available to allow for further analysis by the community. In the end, we successfully replicated the original study. Moreover, we showed that continuous maintainability leverage better prediction than an ordinal scale. Finally, we have shown that metrics other than size contain information that is essential for a fine-grained maintainability prediction. This study shows that it is necessary to explore the nature of what is measured by code metrics, and is also the first step in the construction of a maintainability model.