首页 > 最新文献

软件产业与工程最新文献

英文 中文
Open Source Software Onboarding as a University Course: An Experience Report 作为大学课程的开源软件入门:一份经验报告
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00037
Hao He, Minghui Zhou, Qingye Wang, Jingyue Li
Without newcomers, open source software (OSS) projects are hardly sustainable. Yet, newcomers face a steep learning curve during OSS onboarding in which they must overcome a multitude of technical, social, and knowledge barriers. To ease the onboarding process, OSS communities are utilizing mentoring, task recommendation (e.g., “good first issues”), and engagement programs (e.g., Google Summer of Code). However, newcomers must first cultivate their motivation for OSS contribution and learn the necessary preliminaries before they can take advantage of these mechanisms. We believe this gap can be filled by a dedicated, practice-oriented OSS onboarding course. In this paper, we present our experience of teaching an OSS onboarding course at Peking University. The course contains a series of lectures, labs, and invited talks to prepare students with the required skills and motivate them to contribute to OSS. In addition, students are required to complete a semester-long course project in which they plan and make actual contributions to OSS projects. They can either contribute to some recommended OSS projects with dedicated mentors, or contribute to any OSS project they prefer. Finally, 16 out of the 19 enrolled students have successfully contributed to OSS projects, and five have retained. However, the onboarding trajectories, final contributions, and retention outcomes differ vastly between the two groups of students with different course project choices, yielding lessons for software engineering education.
没有新来者,开源软件(OSS)项目很难持续下去。然而,新手在OSS入门期间面临着陡峭的学习曲线,他们必须克服大量的技术、社会和知识障碍。为了简化入职过程,OSS社区正在利用指导、任务推荐(例如,“好的第一个问题”)和参与计划(例如,Google代码之夏)。然而,新手必须首先培养他们对OSS贡献的动机,并在他们能够利用这些机制之前学习必要的基础知识。我们相信这一差距可以通过专门的、面向实践的OSS入门课程来填补。在本文中,我们介绍了我们在北京大学教授OSS入职课程的经验。该课程包含一系列讲座、实验和邀请的谈话,为学生提供所需的技能,并激励他们为OSS做出贡献。此外,学生需要完成一个学期的课程项目,在这个项目中,他们计划并对OSS项目做出实际贡献。他们可以与专门的导师一起为一些推荐的OSS项目做出贡献,或者为他们喜欢的任何OSS项目做出贡献。最后,19名注册学生中有16名成功地为OSS项目做出了贡献,5名保留了下来。然而,在两组具有不同课程项目选择的学生之间,入职轨迹、最终贡献和保留结果差异很大,为软件工程教育提供了经验教训。
{"title":"Open Source Software Onboarding as a University Course: An Experience Report","authors":"Hao He, Minghui Zhou, Qingye Wang, Jingyue Li","doi":"10.1109/ICSE-SEET58685.2023.00037","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00037","url":null,"abstract":"Without newcomers, open source software (OSS) projects are hardly sustainable. Yet, newcomers face a steep learning curve during OSS onboarding in which they must overcome a multitude of technical, social, and knowledge barriers. To ease the onboarding process, OSS communities are utilizing mentoring, task recommendation (e.g., “good first issues”), and engagement programs (e.g., Google Summer of Code). However, newcomers must first cultivate their motivation for OSS contribution and learn the necessary preliminaries before they can take advantage of these mechanisms. We believe this gap can be filled by a dedicated, practice-oriented OSS onboarding course. In this paper, we present our experience of teaching an OSS onboarding course at Peking University. The course contains a series of lectures, labs, and invited talks to prepare students with the required skills and motivate them to contribute to OSS. In addition, students are required to complete a semester-long course project in which they plan and make actual contributions to OSS projects. They can either contribute to some recommended OSS projects with dedicated mentors, or contribute to any OSS project they prefer. Finally, 16 out of the 19 enrolled students have successfully contributed to OSS projects, and five have retained. However, the onboarding trajectories, final contributions, and retention outcomes differ vastly between the two groups of students with different course project choices, yielding lessons for software engineering education.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"32 1","pages":"324-336"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82394234","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}
引用次数: 2
REFERENT: Transformer-based Feedback Generation using Assignment Information for Programming Course 参考文献:利用作业信息生成基于变压器的反馈
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00035
Jinseok Heo, Hohyeon Jeong, Dongwook Choi, Eunseok Lee
Students require feedback on programming assignments to improve their programming skills. An Automated feedback generation (AFG) technique proposes to provide feedback-corrected submissions for incorrect student programming submissions in programming courses. However, these techniques are limited as they rely on the availability of correct submissions as a reference to generate feedback. In situations where correct submissions are not available, they resort to using mutation operators, which can lead to a search space explosion problem. In this work, we propose REFERENT, Transformer-based feedback generation using assignment information. REFERENT uses transfer learning on a pre-trained model with data from students’ submission history from the past assignment. To generate assignment-related feedback, we use a title, tag, assignment description, and test case as assignment information. REFERENT can generate feedback without a reference program in limited resources. We conducted a preliminary study to confirm the effectiveness of REFERENT and the feasibility of using assignment information. REFERENT generated feedback for 32.7% of incorrect submissions without reference programs and that its performance increased up to 50.7% when reference programs were used. We also check whether the submission history, assignment information, and repair knowledge of open-source software help generate feedback.
学生需要对编程作业的反馈来提高他们的编程技能。一种自动反馈生成(AFG)技术建议为编程课程中不正确的学生提交的编程提供反馈更正的提交。然而,这些技术是有限的,因为它们依赖于正确提交的可用性作为参考来生成反馈。在无法获得正确提交的情况下,它们求助于使用突变操作符,这可能导致搜索空间爆炸问题。在这项工作中,我们提出了REFERENT,基于变压器的反馈生成使用分配信息。REFERENT在预先训练的模型上使用迁移学习,该模型的数据来自学生过去作业的提交历史。为了生成与分配相关的反馈,我们使用标题、标签、分配描述和测试用例作为分配信息。在有限的资源中,REFERENT可以在没有参考程序的情况下生成反馈。我们进行了初步的研究,以确认REFERENT的有效性和使用分配信息的可行性。在没有参考程序的情况下,REFERENT对32.7%的错误提交产生了反馈,而在使用参考程序的情况下,REFERENT的性能提高了50.7%。我们还检查提交历史、分配信息和开源软件的修复知识是否有助于生成反馈。
{"title":"REFERENT: Transformer-based Feedback Generation using Assignment Information for Programming Course","authors":"Jinseok Heo, Hohyeon Jeong, Dongwook Choi, Eunseok Lee","doi":"10.1109/ICSE-SEET58685.2023.00035","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00035","url":null,"abstract":"Students require feedback on programming assignments to improve their programming skills. An Automated feedback generation (AFG) technique proposes to provide feedback-corrected submissions for incorrect student programming submissions in programming courses. However, these techniques are limited as they rely on the availability of correct submissions as a reference to generate feedback. In situations where correct submissions are not available, they resort to using mutation operators, which can lead to a search space explosion problem. In this work, we propose REFERENT, Transformer-based feedback generation using assignment information. REFERENT uses transfer learning on a pre-trained model with data from students’ submission history from the past assignment. To generate assignment-related feedback, we use a title, tag, assignment description, and test case as assignment information. REFERENT can generate feedback without a reference program in limited resources. We conducted a preliminary study to confirm the effectiveness of REFERENT and the feasibility of using assignment information. REFERENT generated feedback for 32.7% of incorrect submissions without reference programs and that its performance increased up to 50.7% when reference programs were used. We also check whether the submission history, assignment information, and repair knowledge of open-source software help generate feedback.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"4 1","pages":"101-106"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"85519637","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}
引用次数: 0
Training for Security: Planning the Use of a SAT in the Development Pipeline of Web Apps 安全培训:计划在Web应用程序的开发管道中使用SAT
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00010
Sabato Nocera, Simone Romano, R. Francese, G. Scanniello
We designed a prospective empirical investigation to study our STW (Software Technologies for the Web) course with respect to the training of bachelor students in the context of software security when developing e-commerce Web apps. To that end, we devised the following steps: (i) studying the state of the students enrolled in the STW course in the a.y. (academic year) 2021-22; (ii) defining a training plan for the a.y. 2022-23; and (iii) acting the plan and measuring the differences (if any) between the students of the a.y. 2021-22 and 2022-23. In this idea paper, we present the results of the former two steps, as well as the evaluation strategy of the proposed training plan. We observed that security concerns are widespread in the code of the Web apps the students of the STW course (a.y. 2021-22) developed. Therefore, we plan (second step) to ask the students of the STW course (a.y. 2022-23) to use in their development pipeline a Static Analysis Tool (SAT) to detect security concerns.
我们设计了一项前瞻性实证调查来研究我们的STW (Web软件技术)课程在开发电子商务Web应用程序时对本科学生在软件安全背景下的培训。为此,我们设计了以下步骤:(i)研究在2021-22学年注册的STW课程学生的状态;(ii)确定2022-23年度的培训计划;(iii)执行计划并衡量2021-22学年和2022-23学年学生之间的差异(如果有的话)。在本文中,我们介绍了前两步的结果,以及所提出的培训计划的评估策略。我们观察到,在STW课程(2021-22年)的学生开发的Web应用程序代码中,安全问题很普遍。因此,我们计划(第二步)要求STW课程的学生(2022-23年)在他们的开发管道中使用静态分析工具(SAT)来检测安全问题。
{"title":"Training for Security: Planning the Use of a SAT in the Development Pipeline of Web Apps","authors":"Sabato Nocera, Simone Romano, R. Francese, G. Scanniello","doi":"10.1109/ICSE-SEET58685.2023.00010","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00010","url":null,"abstract":"We designed a prospective empirical investigation to study our STW (Software Technologies for the Web) course with respect to the training of bachelor students in the context of software security when developing e-commerce Web apps. To that end, we devised the following steps: (i) studying the state of the students enrolled in the STW course in the a.y. (academic year) 2021-22; (ii) defining a training plan for the a.y. 2022-23; and (iii) acting the plan and measuring the differences (if any) between the students of the a.y. 2021-22 and 2022-23. In this idea paper, we present the results of the former two steps, as well as the evaluation strategy of the proposed training plan. We observed that security concerns are widespread in the code of the Web apps the students of the STW course (a.y. 2021-22) developed. Therefore, we plan (second step) to ask the students of the STW course (a.y. 2022-23) to use in their development pipeline a Static Analysis Tool (SAT) to detect security concerns.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"16 1","pages":"40-45"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"84869784","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}
引用次数: 0
Engaging Girls in Computer Science: Do Single-Gender Interdisciplinary Classes Help? 吸引女孩参与计算机科学:单性别跨学科课程有帮助吗?
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00019
Kairos M. Marquardt, Ingo Wagner, Lucia Happe
Computing-driven innovation cannot reach its full potential if only a fraction of the population is involved. Without girls and their non-stereotypical contribution, the innovation potential is severely limited. In computer science (CS) and software engineering (SE), the gender gap persists without any positive trend. Many girls find it challenging to identify with the subject of CS. However, we can capitalize on their interests and create environments for girls through interdisciplinary subcultures to spark and foster enthusiasm for CS. This paper presents and discusses the results of an intervention in which we applied a novel interdisciplinary online course in data science to get girls excited about CS and programming by contributing to the grand goal of solving colony collapse disorder from biology and geoecology. The results show the potential of such programs to get girls excited about programming, but also important implications in terms of the learning environment. The startling results show that girls from single-gender classes (SGCs) are significantly more open to CS-related topics and that the intervention evoked significantly more positive feelings in them than in girls from mixed-gender classes (MGCs). The findings highlight the importance of how CS-related topics are introduced in school and the crucial impact of the learning environment to meet the requirements of truly gender-inclusive education.
如果只有一小部分人参与其中,计算机驱动的创新就无法充分发挥其潜力。没有女孩和她们非陈规定型的贡献,创新潜力就会受到严重限制。在计算机科学(CS)和软件工程(SE)中,性别差距仍然存在,没有任何积极的趋势。许多女孩发现很难认同计算机科学这门学科。然而,我们可以利用她们的兴趣,通过跨学科的亚文化为女孩创造环境,激发和培养她们对计算机科学的热情。本文介绍并讨论了一项干预的结果,我们应用了一门新的跨学科数据科学在线课程,通过从生物学和地理生态学的角度解决群体崩溃失调的宏伟目标,让女孩们对CS和编程感到兴奋。研究结果表明,这类项目不仅能让女孩对编程产生兴趣,还能对学习环境产生重要影响。令人吃惊的结果显示,单性别班(SGCs)的女生对cs相关话题的态度明显更开放,干预在她们中引起的积极感受明显多于混合性别班(MGCs)的女生。研究结果强调了如何在学校引入cs相关主题的重要性,以及学习环境对满足真正的性别包容性教育要求的关键影响。
{"title":"Engaging Girls in Computer Science: Do Single-Gender Interdisciplinary Classes Help?","authors":"Kairos M. Marquardt, Ingo Wagner, Lucia Happe","doi":"10.1109/ICSE-SEET58685.2023.00019","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00019","url":null,"abstract":"Computing-driven innovation cannot reach its full potential if only a fraction of the population is involved. Without girls and their non-stereotypical contribution, the innovation potential is severely limited. In computer science (CS) and software engineering (SE), the gender gap persists without any positive trend. Many girls find it challenging to identify with the subject of CS. However, we can capitalize on their interests and create environments for girls through interdisciplinary subcultures to spark and foster enthusiasm for CS. This paper presents and discusses the results of an intervention in which we applied a novel interdisciplinary online course in data science to get girls excited about CS and programming by contributing to the grand goal of solving colony collapse disorder from biology and geoecology. The results show the potential of such programs to get girls excited about programming, but also important implications in terms of the learning environment. The startling results show that girls from single-gender classes (SGCs) are significantly more open to CS-related topics and that the intervention evoked significantly more positive feelings in them than in girls from mixed-gender classes (MGCs). The findings highlight the importance of how CS-related topics are introduced in school and the crucial impact of the learning environment to meet the requirements of truly gender-inclusive education.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"19 1","pages":"128-140"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"81804599","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}
引用次数: 5
Using Focus to Personalise Learning and Feedback in Software Engineering Education 在软件工程教育中使用焦点个性化学习和反馈
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00033
Bansri Amish Modi, A. Cain, G. Wood-Bradley, J. Renzella
Learning can be greatly enhanced by effective feedback. Traditional assessment approaches in higher education often result in feedback being used to justify marks awarded, which is often disregarded once the assessment is complete. In this paper, we explore the idea of incorporating a focus mechanism to connect feedback between assessment tasks and units, discuss how this can be applied to enhance software engineering education, and present results from several staff focus groups exploring the idea. The focus groups discussed the model, its application within software engineering units, and its limitations, with staff helping co-create the enhancements to the model through discussing experiences/sharing opinions/providing insights on assessment within their units. Results indicate that staff believe that the changes will benefit their teaching and highlighted several opportunities for this initiative to encourage students to have a more holistic view of their studies. The main challenges identified were staff workload and complexity for students which must be addressed in implementing this idea.
有效的反馈可以极大地促进学习。在高等教育中,传统的评估方法往往导致反馈被用来证明分数的合理性,一旦评估完成,反馈往往被忽视。在本文中,我们探讨了合并焦点机制来连接评估任务和单元之间的反馈的想法,讨论了如何将其应用于增强软件工程教育,并展示了几个员工焦点小组探索该想法的结果。焦点小组讨论了模型,它在软件工程单元中的应用,以及它的局限性,工作人员通过讨论经验/分享意见/提供对其单元内评估的见解来帮助共同创建模型的增强。结果表明,教师们相信这些变化将有利于他们的教学,并强调了这一举措的几个机会,以鼓励学生对他们的学习有一个更全面的看法。确定的主要挑战是工作人员的工作量和学生的复杂性,必须在实施这一想法时加以解决。
{"title":"Using Focus to Personalise Learning and Feedback in Software Engineering Education","authors":"Bansri Amish Modi, A. Cain, G. Wood-Bradley, J. Renzella","doi":"10.1109/ICSE-SEET58685.2023.00033","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00033","url":null,"abstract":"Learning can be greatly enhanced by effective feedback. Traditional assessment approaches in higher education often result in feedback being used to justify marks awarded, which is often disregarded once the assessment is complete. In this paper, we explore the idea of incorporating a focus mechanism to connect feedback between assessment tasks and units, discuss how this can be applied to enhance software engineering education, and present results from several staff focus groups exploring the idea. The focus groups discussed the model, its application within software engineering units, and its limitations, with staff helping co-create the enhancements to the model through discussing experiences/sharing opinions/providing insights on assessment within their units. Results indicate that staff believe that the changes will benefit their teaching and highlighted several opportunities for this initiative to encourage students to have a more holistic view of their studies. The main challenges identified were staff workload and complexity for students which must be addressed in implementing this idea.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"130 1","pages":"296-301"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79141375","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}
引用次数: 0
Improving Grading Outcomes in Software Engineering Projects Through Automated Contributions Summaries 通过自动贡献摘要改进软件工程项目的评分结果
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00030
Kai Presler-Marshall, S. Heckman, Kathryn T. Stolee
Teaming is a key aspect of most professional software engineering positions, and consequently, team-based learning (TBL) features heavily in many undergraduate computer science (CS) and software engineering programs. However, while TBL offers many pedagogical benefits, it is not without challenges. One such challenge is assessment, as the course teaching staff must be able to accurately identify individual students’ contributions to both encourage and reward participation. In this paper, we study improvements to grading practises in the context of a CS1.5 introductory software engineering course, where assessing individual students’ contributions to weekly lab assignments is done manually by teaching assistants (TAs). We explore the impact of presenting TAs with automated summaries of individual student contributions to their team’s GitHub repository. To do so, we propose a novel algorithm, and implement a tool based off of it, AutoVCS. We measure the impact on grading metrics in terms of grading speed, grading consistency, and TA satisfaction. We evaluate our algorithm, as implemented in AutoVCS, in a controlled experimental study on Java-based lab assignments from a recent offering of NC State University’s CS1.5 course. We find our automated summaries help TAs grade more consistently and provides students with more actionable feedback. Although TAs grade no faster using automated summaries, they nonetheless strongly prefer grading with the support of them than without. We conclude with recommendations for future work to explore improving consistency in contribution grading for student software engineering teams.
团队合作是大多数专业软件工程职位的一个关键方面,因此,基于团队的学习(TBL)在许多本科计算机科学(CS)和软件工程课程中占有重要地位。然而,尽管TBL提供了许多教学上的好处,但它并非没有挑战。其中一个挑战是评估,因为课程教学人员必须能够准确地识别每个学生的贡献,以鼓励和奖励他们的参与。在本文中,我们研究了CS1.5软件工程入门课程背景下评分实践的改进,在该课程中,助教(助教)手动评估每个学生对每周实验作业的贡献。我们探讨了向助教展示学生个人贡献到团队GitHub存储库的自动摘要的影响。为此,我们提出了一种新的算法,并在此基础上实现了一个工具,AutoVCS。我们根据评分速度、评分一致性和助教满意度来衡量对评分指标的影响。我们对AutoVCS中实现的算法进行了评估,该算法是在北卡罗来纳州立大学CS1.5课程最近提供的基于java的实验室作业的对照实验研究中实现的。我们发现我们的自动总结帮助助教评分更加一致,并为学生提供更多可操作的反馈。尽管助教们使用自动摘要评分并不会更快,但他们还是强烈倾向于在自动摘要的支持下评分。最后,我们对未来的工作提出建议,以探索提高学生软件工程团队贡献评分的一致性。
{"title":"Improving Grading Outcomes in Software Engineering Projects Through Automated Contributions Summaries","authors":"Kai Presler-Marshall, S. Heckman, Kathryn T. Stolee","doi":"10.1109/ICSE-SEET58685.2023.00030","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00030","url":null,"abstract":"Teaming is a key aspect of most professional software engineering positions, and consequently, team-based learning (TBL) features heavily in many undergraduate computer science (CS) and software engineering programs. However, while TBL offers many pedagogical benefits, it is not without challenges. One such challenge is assessment, as the course teaching staff must be able to accurately identify individual students’ contributions to both encourage and reward participation. In this paper, we study improvements to grading practises in the context of a CS1.5 introductory software engineering course, where assessing individual students’ contributions to weekly lab assignments is done manually by teaching assistants (TAs). We explore the impact of presenting TAs with automated summaries of individual student contributions to their team’s GitHub repository. To do so, we propose a novel algorithm, and implement a tool based off of it, AutoVCS. We measure the impact on grading metrics in terms of grading speed, grading consistency, and TA satisfaction. We evaluate our algorithm, as implemented in AutoVCS, in a controlled experimental study on Java-based lab assignments from a recent offering of NC State University’s CS1.5 course. We find our automated summaries help TAs grade more consistently and provides students with more actionable feedback. Although TAs grade no faster using automated summaries, they nonetheless strongly prefer grading with the support of them than without. We conclude with recommendations for future work to explore improving consistency in contribution grading for student software engineering teams.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"54 1","pages":"259-270"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75803069","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}
引用次数: 0
Speak, Memory! Analyzing Historical Accidents to Sensitize Software Testing Novices 说话,记忆!分析历史事故,提高软件测试新手的敏感度
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00013
N. Silvis-Cividjian, Fritz Hager
Accidents tend to be traumatic events that one would rather forget than remember. Software testing novices at the Vrije Universiteit in Amsterdam, on the contrary, rewind the past and learn how to safeguard the future.In this paper we will present FAIL, a rather unconventional assignment that methodically investigate 13 historical software-related accidents, varying from the Ariane-5 rocket explosion to the Knight Capital trading glitch. Innovative is that software testing students use STAMP, a modern systems-theory-based accident causality model and have the possibility to interview a witness of the famous Therac-25 radiation overexposures.A recent deployment to 96 CS graduates received positive evaluations. We learned that even a lightweight, yet systematic investigation of failures (1) motivates students, by sensitizing them to the consequences of suboptimal testing, and (2) reveals key soft-skills testers need to prevent disasters, such as defensive pessimism and a strong backbone. Other, more subtle benefits of the proposed approach include (3) really-happened, instead of artificial case-studies that increase a teacher’s credibility, and (4) extraordinary test scenarios students will always remember.These results invite software engineering educators to include safety assessment elements in their curricula, and call on witnesses of software-related accidents to break the silence and share memories. Future work includes crafting a repository of heritage artifacts (narratives, videos, witness testimonies and physical replicas) to reproduce historical software-related accidents, and make it available to interested educators. Our hope is that motivated professionals will emerge, better prepared to engineer the safe software-intensive systems we all can rely on.
事故往往是人们宁愿忘记也不愿记住的创伤性事件。阿姆斯特丹自由大学的软件测试新手则相反,他们回顾过去,学习如何保障未来。在本文中,我们将介绍FAIL,这是一个相当非常规的任务,系统地调查13个历史上与软件相关的事故,从阿丽亚娜-5火箭爆炸到骑士资本交易故障。创新之处在于,软件测试学生使用STAMP,这是一种基于现代系统理论的事故因果关系模型,并且有可能采访著名的Therac-25辐射过度暴露的证人。最近部署到96名计算机科学系毕业生的工作得到了积极评价。我们了解到,即使是一个轻量级的,但是系统的失败调查(1)也可以激励学生,通过使他们对次优测试的后果敏感,并且(2)揭示了测试人员需要防止灾难的关键软技能,例如防御性悲观主义和坚强的脊梁。此外,该方法的其他更微妙的好处包括:(3)真实发生的事情,而不是人为的案例研究,增加了教师的可信度;(4)学生永远记住的特殊考试场景。这些结果邀请软件工程教育者在他们的课程中加入安全评估元素,并呼吁软件相关事故的目击者打破沉默,分享记忆。未来的工作包括制作一个遗产文物库(叙述、视频、证人证词和实物复制品),以重现与软件相关的历史事故,并将其提供给感兴趣的教育工作者。我们的希望是,有动力的专业人士会出现,更好地准备设计我们都可以依赖的安全软件密集型系统。
{"title":"Speak, Memory! Analyzing Historical Accidents to Sensitize Software Testing Novices","authors":"N. Silvis-Cividjian, Fritz Hager","doi":"10.1109/ICSE-SEET58685.2023.00013","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00013","url":null,"abstract":"Accidents tend to be traumatic events that one would rather forget than remember. Software testing novices at the Vrije Universiteit in Amsterdam, on the contrary, rewind the past and learn how to safeguard the future.In this paper we will present FAIL, a rather unconventional assignment that methodically investigate 13 historical software-related accidents, varying from the Ariane-5 rocket explosion to the Knight Capital trading glitch. Innovative is that software testing students use STAMP, a modern systems-theory-based accident causality model and have the possibility to interview a witness of the famous Therac-25 radiation overexposures.A recent deployment to 96 CS graduates received positive evaluations. We learned that even a lightweight, yet systematic investigation of failures (1) motivates students, by sensitizing them to the consequences of suboptimal testing, and (2) reveals key soft-skills testers need to prevent disasters, such as defensive pessimism and a strong backbone. Other, more subtle benefits of the proposed approach include (3) really-happened, instead of artificial case-studies that increase a teacher’s credibility, and (4) extraordinary test scenarios students will always remember.These results invite software engineering educators to include safety assessment elements in their curricula, and call on witnesses of software-related accidents to break the silence and share memories. Future work includes crafting a repository of heritage artifacts (narratives, videos, witness testimonies and physical replicas) to reproduce historical software-related accidents, and make it available to interested educators. Our hope is that motivated professionals will emerge, better prepared to engineer the safe software-intensive systems we all can rely on.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"57 1","pages":"70-81"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"84270621","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}
引用次数: 0
GRADESTYLE: GitHub-Integrated and Automated Assessment of Java Code Style gradstyle: github -集成和自动评估Java代码风格
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00024
Callum Iddon, Nasser Giacaman, Valerio Terragni
Every programming language has its own style conventions and best practices, which help developers to write readable and maintainable code. Learning code style is an essential skill that every professional software engineer should master. As such, students should develop good habits for code style early on, when they start learning how to program. Unfortunately, manually assessing students’ code with timely and detailed feedback is often infeasible, and professional static analysis tools are unsuitable for educational contexts. This paper presents GRADESTYLE, a tool for automatically assessing the code style of Java assignments. GRADESTYLE automatically checks for violations of some of the most important Google Java Style conventions, and Java best practices. Students receive a report with a code style mark, a list of violations, and their source code locations. GRADESTYLE nicely integrates with GitHub and GitHub Classroom, and can be configured to provide continuous feedback every time a student pushes new code. We adopted our tool in a second-year software engineering programming course with 327 students and observed consistent improvements in the code style of their assignments.
每种编程语言都有自己的风格约定和最佳实践,这有助于开发人员编写可读且可维护的代码。学习代码风格是每个专业软件工程师都应该掌握的基本技能。因此,当学生开始学习如何编程时,他们应该尽早养成良好的代码风格习惯。不幸的是,用及时和详细的反馈手动评估学生的代码通常是不可行的,并且专业的静态分析工具不适合教育环境。本文介绍了GRADESTYLE,一个用于自动评估Java分配的代码风格的工具。gradstyle自动检查是否违反了一些最重要的Google Java风格约定和Java最佳实践。学生将收到一份带有代码样式标记、违规列表和源代码位置的报告。gradstyle很好地集成了GitHub和GitHub Classroom,并且可以配置为每次学生推送新代码时提供持续的反馈。我们在一个有327名学生的二年级软件工程编程课程中采用了我们的工具,并观察到他们的作业在代码风格上的一致改进。
{"title":"GRADESTYLE: GitHub-Integrated and Automated Assessment of Java Code Style","authors":"Callum Iddon, Nasser Giacaman, Valerio Terragni","doi":"10.1109/ICSE-SEET58685.2023.00024","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00024","url":null,"abstract":"Every programming language has its own style conventions and best practices, which help developers to write readable and maintainable code. Learning code style is an essential skill that every professional software engineer should master. As such, students should develop good habits for code style early on, when they start learning how to program. Unfortunately, manually assessing students’ code with timely and detailed feedback is often infeasible, and professional static analysis tools are unsuitable for educational contexts. This paper presents GRADESTYLE, a tool for automatically assessing the code style of Java assignments. GRADESTYLE automatically checks for violations of some of the most important Google Java Style conventions, and Java best practices. Students receive a report with a code style mark, a list of violations, and their source code locations. GRADESTYLE nicely integrates with GitHub and GitHub Classroom, and can be configured to provide continuous feedback every time a student pushes new code. We adopted our tool in a second-year software engineering programming course with 327 students and observed consistent improvements in the code style of their assignments.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"17 1","pages":"192-197"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77359830","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}
引用次数: 2
Shaping a Tool for Developing Computing Students’ Professional Identity - Industry Perspectives 塑造一个培养计算机学生职业认同的工具——行业视角
Pub Date : 2023-05-01 DOI: 10.1109/ICSE-SEET58685.2023.00034
Laura Tubino, Kerri Morgan, G. Wood-Bradley, A. Cain
Obtaining employment is a major aim for many students completing a computing degree. However, students often fail to develop a comprehensive plan to achieve this goal as they have insufficient awareness of what is required to become a professional. In addition, computing degrees and curriculum generally focus on the necessary computing knowledge and skills, often ignoring development around identity, belonging to a community of practice, and connecting with professional role models - components necessary to build a viable professional identity. This paper explores ideas on how to broaden the perspective of students undertaking computing degrees, helping them understand the broader picture of their education, beyond coursework units, that is needed to ensure their successful transition to industry. Literature on professional identity is used to inform the initial design concepts for a tool, DreamBig, that aims to support the development of an emerging professional identity for students undertaking computing degrees. A focus group with industry representatives was used to test the concept. Findings of this study highlight the value of this initiative and indicate the importance of a big picture, holistic view of professional development with a particular focus on the social dimension for computing students and graduates.
就业是许多完成计算机学位的学生的主要目标。然而,学生们往往没有制定一个全面的计划来实现这一目标,因为他们对成为一名专业人士所需要的东西认识不足。此外,计算机学位和课程通常侧重于必要的计算机知识和技能,往往忽略了围绕身份的发展,属于实践社区,并与专业角色榜样联系-建立可行的专业身份所必需的组成部分。本文探讨了如何拓宽学生从事计算机学位的观点,帮助他们了解他们的教育的更广泛的画面,超越课程单位,这是需要确保他们成功过渡到行业。关于职业身份的文献被用来为DreamBig工具的初始设计概念提供信息,该工具旨在支持攻读计算机学位的学生发展新兴的职业身份。一个由行业代表组成的焦点小组被用来测试这一概念。这项研究的结果强调了这一举措的价值,并指出了一个大的画面,专业发展的整体观点,特别关注计算机学生和毕业生的社会维度的重要性。
{"title":"Shaping a Tool for Developing Computing Students’ Professional Identity - Industry Perspectives","authors":"Laura Tubino, Kerri Morgan, G. Wood-Bradley, A. Cain","doi":"10.1109/ICSE-SEET58685.2023.00034","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00034","url":null,"abstract":"Obtaining employment is a major aim for many students completing a computing degree. However, students often fail to develop a comprehensive plan to achieve this goal as they have insufficient awareness of what is required to become a professional. In addition, computing degrees and curriculum generally focus on the necessary computing knowledge and skills, often ignoring development around identity, belonging to a community of practice, and connecting with professional role models - components necessary to build a viable professional identity. This paper explores ideas on how to broaden the perspective of students undertaking computing degrees, helping them understand the broader picture of their education, beyond coursework units, that is needed to ensure their successful transition to industry. Literature on professional identity is used to inform the initial design concepts for a tool, DreamBig, that aims to support the development of an emerging professional identity for students undertaking computing degrees. A focus group with industry representatives was used to test the concept. Findings of this study highlight the value of this initiative and indicate the importance of a big picture, holistic view of professional development with a particular focus on the social dimension for computing students and graduates.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"73 1","pages":"302-307"},"PeriodicalIF":0.0,"publicationDate":"2023-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"84940658","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}
引用次数: 0
Exposing Software Engineering Students to Stressful Projects: Does Diversity Matter? 让软件工程专业的学生接触有压力的项目:多样性重要吗?
Pub Date : 2023-04-18 DOI: 10.1109/ICSE-SEET58685.2023.00026
Isabella Graßl, G. Fraser, Stefan Trieflinger, M. Kuhrmann
Software development teams have to face stress caused by deadlines, staff turnover, or individual differences in commitment, expertise, and time zones. While students are typically taught the theory of software project management, their exposure to such stress factors is usually limited. However, preparing students for the stress they will have to endure once they work in project teams is important for their own sake, as well as for the sake of team performance in the face of stress. Team performance has been linked to the diversity of software development teams, but little is known about how diversity influences the stress experienced in teams. In order to shed light on this aspect, we provided students with the opportunity to self-experience the basics of project management in self-organizing teams, and studied the impact of six diversity dimensions on team performance, coping with stressors, and positive perceived learning effects. Three controlled experiments at two universities with a total of 65 participants suggest that the social background impacts the perceived stressors the most, while age and work experience have the highest impact on perceived learnings. Most diversity dimensions have a medium correlation with the quality of work, yet no significant relation to the team performance. This lays the foundation to improve students’ training for software engineering teamwork based on their diversity-related needs and to create diversity-sensitive awareness among educators, employers and researchers.
软件开发团队必须面对由截止日期、人员流动、或者在承诺、专业知识和时区方面的个体差异所引起的压力。虽然学生通常被教授软件项目管理的理论,但他们对这些压力因素的暴露通常是有限的。然而,让学生为他们在项目团队中工作后将不得不忍受的压力做好准备,这对他们自己以及面对压力时的团队表现都很重要。团队绩效与软件开发团队的多样性有关,但是很少有人知道多样性是如何影响团队所经历的压力的。为了阐明这一观点,我们为学生提供了自我体验自组织团队项目管理基础的机会,并研究了六个多样性维度对团队绩效、应对压力源和积极感知学习效应的影响。在两所大学共65名参与者的三个对照实验中,社会背景对感知压力源的影响最大,而年龄和工作经验对感知学习的影响最大。大多数多样性维度与工作质量有中等相关性,而与团队绩效无显著相关性。这为根据学生的多样性相关需求,提高学生的软件工程团队合作能力,并在教育工作者、雇主和研究人员中建立多样性敏感意识奠定了基础。
{"title":"Exposing Software Engineering Students to Stressful Projects: Does Diversity Matter?","authors":"Isabella Graßl, G. Fraser, Stefan Trieflinger, M. Kuhrmann","doi":"10.1109/ICSE-SEET58685.2023.00026","DOIUrl":"https://doi.org/10.1109/ICSE-SEET58685.2023.00026","url":null,"abstract":"Software development teams have to face stress caused by deadlines, staff turnover, or individual differences in commitment, expertise, and time zones. While students are typically taught the theory of software project management, their exposure to such stress factors is usually limited. However, preparing students for the stress they will have to endure once they work in project teams is important for their own sake, as well as for the sake of team performance in the face of stress. Team performance has been linked to the diversity of software development teams, but little is known about how diversity influences the stress experienced in teams. In order to shed light on this aspect, we provided students with the opportunity to self-experience the basics of project management in self-organizing teams, and studied the impact of six diversity dimensions on team performance, coping with stressors, and positive perceived learning effects. Three controlled experiments at two universities with a total of 65 participants suggest that the social background impacts the perceived stressors the most, while age and work experience have the highest impact on perceived learnings. Most diversity dimensions have a medium correlation with the quality of work, yet no significant relation to the team performance. This lays the foundation to improve students’ training for software engineering teamwork based on their diversity-related needs and to create diversity-sensitive awareness among educators, employers and researchers.","PeriodicalId":68155,"journal":{"name":"软件产业与工程","volume":"63 4 1","pages":"210-222"},"PeriodicalIF":0.0,"publicationDate":"2023-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90914046","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}
引用次数: 2
期刊
软件产业与工程
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1