一句话:通过访谈与提交分析,揭示学生在软件工程课程中参与开源贡献的挑战、收益与态度。
软件工程课程常在小规模受控环境中讲授概念,较少涉及真实系统的维护。开源项目为课堂引入真实软件提供了途径,已有教师将开源贡献纳入考核,但学生对这一做法的感知尚不清楚。本文对五所巴西大学的21名学生进行半结构化访谈,并分析其贡献仓库中的提交记录。研究发现,项目与任务选择有时由教师指定,也有学生甚至开源社区参与;贡献的复杂度(增删行数、修改文件数)和多样性(编程语言)差异较大。学生报告的主要收益是技术能力与自信心提升,部分学生强调教师参与开源实践非常重要。
Software Engineering courses often emphasize teaching methodologies and concepts in small and controlled environments over teaching, say, maintenance aspects of full-fledged real software systems. This decision is partly justified due to the difficulty of bringing to the context of a classroom a real software project. The widespread presence of open source projects, however, is contributing to alleviating this problem. Several instructors have already adopted contributions to open source projects as part of their evaluation process, and these instructors reported many benefits, including the improvement on students' technical and social skills. However, little is known about the students' perceptions regarding the need to contribute to an open source project as part of a Software Engineering course. To better understand the students' challenges, benefits, and attitudes, we conducted 21 semi-structured interviews with students who took these courses in five different Brazilian universities. We also enriched this data with an analysis of commits performed in the repositories that students contributed to. We observed that even though some instructors chose the open source projects to students to work themselves, some students and even the open source community participated in the process of choosing projects and tasks. Students' contributions varied concerning both complexity (measured by the number of additions, deletions, and edited files) and diversity (measured regarding the different programming languages used). Among the benefits, students reported improving their technical skills and their self-confidence. Finally, some students found extremely important for instructors' being involved with open source initiatives (extra-classroom).
@inproceedings{0001FSSM19,
title = {Training Software Engineers Using Open-Source Software: The Students' Perspective},
author = {Gustavo Pinto and Clarice Ferreira and Cleice Souza and Igor Steinmacher and Paulo Meirelles},
booktitle = {ICSE},
year = {2019},
doi = {10.1109/icse-seet.2019.00024}
}