{"title":"Collecting cognitive strategies applied by students during test case design","authors":"Felix Cammaerts, M. Snoeck, Ana Paiva","doi":"10.1145/3593434.3593954","DOIUrl":"https://doi.org/10.1145/3593434.3593954","url":null,"abstract":"It is important to properly test developed software because this may contribute to fewer bugs going unreported in deployed software. Often, little attention is spent on the topic of software testing in curricula, yielding graduate students without adequate preparation to deal with the quality standards required by the industry. This problem could be tackled by introducing bite-sized software testing education capsules that allow teachers to introduce software testing to their students in a less time-consuming manner and with a hands-on component that will facilitate learning. In order to design appropriate software testing educational tools, it is necessary to consider both the software testing needs of the industry and the cognitive models of students. This work-in-progress paper proposes an experimental design to gain an understanding of the cognitive strategies used by students during test case design based on real-life cases. Ultimately, the results of the experiment will be used to develop educational support for teaching software testing.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"124 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125627901","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Prioritization of DevOps Maturity models using Fuzzy TOPSIS","authors":"Ankur Kumar, M. Nadeem, Mohammad Shameem","doi":"10.1145/3593434.3594241","DOIUrl":"https://doi.org/10.1145/3593434.3594241","url":null,"abstract":"DevOps has become an increasingly popular approach to software development and operations. DevOps has evolved rapidly in recent years, with numerous maturity models being proposed to help organizations assess their level of adoption and identify improvement areas. However, there is no consensus on which model is the most effective, as different models may be more suited to different organizational contexts. This paper compares six popular DevOps maturity models using the Fuzzy TOPSIS Multiple Criteria Decision Making (MCDM) methods. Fuzzy TOPSIS is a popular MCDM technique that can handle imprecise and uncertain information. We analyze each model based on seven criteria: Culture, Automation, Continuous Integration/Continuous Delivery, Monitoring and Feedback, Security, Metrics and Measurement, and Continuous Learning and Improvement, and determine which model is the most suitable according to industry standards. The analysis revealed that Radstaak's DevOps maturity model outperforms the others when evaluated through seven standard criteria for assessing maturity models.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126153098","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An Intelligent Automation of Power Transformer using PLC and SCADA at Substation","authors":"Asma Shamshad, M. Riaz, Ali Raza, M. A. Khan","doi":"10.1145/3593434.3594242","DOIUrl":"https://doi.org/10.1145/3593434.3594242","url":null,"abstract":"In this paper, SCADA, and PLC (programmable logic controller) are used in the substation to automate the control of transformers. The substation is where the power for the generator and the primary supply comes from the generating station to the distributor or the end user via the transmission line. Each substation has its own set of activities, such as switching transmission lines, measuring parameters, detecting faults, and storing historical data. All these tasks were performed by one person, as the system becomes more advanced it moves to automation. Monitoring, controlling, and acquiring of data can be performed by SCADA and a PLC (Programmable Logic Controller) in an automated substation. In the case of a low voltage, a transformer set at the substation is quickly turned on by the power management system using SCADA. A PLC, or \"programmed logic controller,\" regulates the voltage in a substation. Substation automation has three categories, First RTU data is sent to controllers for system monitoring or management. The second PLC generates control commands based on system parameters, and the third SCADA allows for human-machine interaction.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128830504","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Ali Ouni, Islem Saidani, E. Alomar, Mohamed Wiem Mkaouer
{"title":"An Empirical Study on Continuous Integration Trends, Topics and Challenges in Stack Overflow","authors":"Ali Ouni, Islem Saidani, E. Alomar, Mohamed Wiem Mkaouer","doi":"10.1145/3593434.3593485","DOIUrl":"https://doi.org/10.1145/3593434.3593485","url":null,"abstract":"During the last few years, Continuous Integration (CI) has become a common practice in open-source and industrial environments to reduce the scope for errors and increase the speed to market through the automated build and test processes. However, despite this wide adoption throughout the years, little is known about the challenges developers discuss. Analyzing the discussions of developers is required to understand what researchers, educators and practitioners should focus on, and how discussion communities can be helpful to shed the light on CI challenges. In this study, we examine Stack Overflow (SO), the most popular crowd-sourced forum, to understand the challenges developers face in the CI context. We collect a corpus of 27,728 CI-related developers posts from SO and analyze those posts through a mixed method with quantitative and qualitative analyzes. To study the trends of CI discussions, we investigated the metadata of CI questions, users and tags. Then, we extract the CI main topics using Latent Dirichlet Allocation (LDA) tuned with Genetic Algorithm (GA). Finally, we investigate the most popular and difficult topics faced by developers based on unanswered questions to get further insights into CI challenges. The LDA clustering reveals that developers face challenges with six main topics namely Build, Testing, Version Control, Configuration, Deployment, and CI Culture. Particularly, we found that the build topic is the most popular among the studied topics and that version control and testing topics are the most difficult for the SO community. Our study uncovers insights about CI challenges and adds evidence to existing knowledge about CI issues related especially to software build.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130693942","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Classification-based Static Collection Selection for Java: Effectiveness and Adaptability","authors":"N. Couderc, Christoph Reichenbach, Emma Söderberg","doi":"10.1145/3593434.3593469","DOIUrl":"https://doi.org/10.1145/3593434.3593469","url":null,"abstract":"Carefully selecting the right collection datastructure can significantly improve the performance of a Java program. Unfortunately, the performance impact of a certain collection selection can be hard to estimate. To assist developers, there exist tools that recommend collections to use based on static and/or dynamic information about a program. The majority of existing collection selection tools for Java pick their selections dynamically, which means that they must trade off sophistication in their selection algorithm against its run time overhead. For static collection selection, the Brainy tool has demonstrated that complex, machine-dependent models can produce substantial performance improvements, albeit only for C++ so far. In this paper, we port Brainy from C++ to Java, and evaluate its effectiveness for 5 benchmarks from the DaCapo benchmark suite. We compare it against the original program, but also to a ground truth, which we estimate using a variant of a brute-force approach to collection selection. Our results show that in four benchmarks out of five, our ground truth and the original program are similar. In one case, the ground truth shows an optimization yielding 20% speedup was available, but our port did not find this substantial optimization. We find that the port is more efficient but less effective than the ground truth, can easily adapt to new hardware architectures, and incorporate new datastructures with at most a few hours of human effort. We detail challenges that we encountered porting the Brainy approach to Java, and list a number of insights and directions for future research.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114280623","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Exploring the UK Cyber Skills Gap through a mapping of active job listings to the Cyber Security Body of Knowledge (CyBOK)","authors":"Sam Attwood, Ashley Williams","doi":"10.1145/3593434.3593459","DOIUrl":"https://doi.org/10.1145/3593434.3593459","url":null,"abstract":"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.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"197 Pt A 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115977412","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Artifact Traceability in DevOps: An Industrial Experience Report","authors":"Zaki Pauzi, Rajvir Thind, A. Capiluppi","doi":"10.1145/3593434.3593451","DOIUrl":"https://doi.org/10.1145/3593434.3593451","url":null,"abstract":"In DevOps, the traceability of software artifacts is critical to the successful development and operation of project delivery to stakeholders. Before the introduction of end-to-end traceability in DevOps at a Data Analytics team at bp (BP plc), an international integrated energy company, the tracing of artifacts throughout a project life cycle was manual and time-consuming. This changed when traceability become more automated with end-to-end traceability capability as an offering on the platform. This paper reports on the ways of working and the experience of developers implementing DevOps for developing and putting in production a Javascript React web application, with a focus on traceability management of artifacts produced throughout the life cycle. This report highlights key opportunities and challenges in traceability management from the development stage to production.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122382068","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Syed Muhammad Faaiz, Saif-Ur-Rehman Khan, S. Hussain, Wen Wang, Naseem Ibrahim
{"title":"A Study on Management Challenges and Practices in DevOps","authors":"Syed Muhammad Faaiz, Saif-Ur-Rehman Khan, S. Hussain, Wen Wang, Naseem Ibrahim","doi":"10.1145/3593434.3594240","DOIUrl":"https://doi.org/10.1145/3593434.3594240","url":null,"abstract":"DevOps is a widely adopted practice to consistently develop and upgrade a system that is already in use. Between software development and operations, DevOps presupposes cross-functional cooperation and automation. The adoption and execution of DevOps in businesses are complicated since it necessitates adjustments to organizational, technical, and cultural factors. The implementation of DevOps in practice is thoroughly described in this systemic literature review (SLR). The study focuses on the identification of the manager's challenges in the DevOps environment and also intends to find the mitigation practices. In this article, SLR has been performed to identify the manager's challenges and the state-of-the-art mitigation strategies. This study identifies twenty challenges from the manager's perspective and the applied mitigation strategies to overcome the challenges. The findings of the current work would be beneficial in comprehending the DevOps idea, methods, and perceived impacts, particularly among managers while adopting DevOps in the organization.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116225489","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Feedback as a process in a large semi-capstone software engineering course","authors":"Marius Mikalsen, Torgeir Dingsøyr","doi":"10.1145/3593434.3593961","DOIUrl":"https://doi.org/10.1145/3593434.3593961","url":null,"abstract":"Feedback involves dialogic processes whereby learners make sense of information from various sources and use it to enhance their work or learning strategies. This is an essential catalyst for learning. However, it takes work to achieve, particularly in large-scale courses. In this research-in-progress paper, we critically reflect on our approach to achieving feedback as a process in a large-scale semi-capstone software engineering course. We describe the steps taken over three years to improve feedback and critically reflect on how feedback is done using critical evaluation perspectives of peers, own reflections, students’ perspectives, and theory. Based on these reflections, we discuss four action items planned for this year, including strengthening the community of practice amongst teaching assistants, using relative assessments, improving rubrics, and using technology for feedback. We also discuss how we plan to evaluate these action items.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127496800","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Team Composition in Software Engineering Education","authors":"S. I. Hashmi, Jouni Markkula","doi":"10.1145/3593434.3593464","DOIUrl":"https://doi.org/10.1145/3593434.3593464","url":null,"abstract":"One of the objectives of software engineering education is to make students to learn essential teamwork skills. This is done by having the students work in groups for course assignments. Student team composition plays a vital role in this, as it significantly affects learning outcomes, what is learned, and how. The study presented in this paper aims to better understand the student team composition in software engineering education and investigate the factors affecting it in the international software engineering education context. Those factors should be taken into consideration by software engineering teachers when they design group work assignments in their courses. In this paper, the initial findings of the ongoing Action research study are presented. The results give some identified principles that should be considered when designing student team composition in software engineering courses.","PeriodicalId":178596,"journal":{"name":"Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125409604","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}