TY - GEN
T1 - Training software engineers using open-source software
T2 - 41st IEEE/ACM International Conference on Software Engineering: Software Engineering Education and Training, ICSE-SEET 2019
AU - Pinto, Gustavo
AU - Ferreira, Clarice
AU - Souza, Cleice
AU - Steinmacher, Igor
AU - Meirelles, Paulo
N1 - Publisher Copyright:
© 2019 IEEE.
PY - 2019/5
Y1 - 2019/5
N2 - 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).
AB - 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).
KW - Open Source Communities
KW - Open Source Software
KW - Software Engineering Courses
UR - http://www.scopus.com/inward/record.url?scp=85068987633&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85068987633&partnerID=8YFLogxK
U2 - 10.1109/ICSE-SEET.2019.00024
DO - 10.1109/ICSE-SEET.2019.00024
M3 - Conference contribution
AN - SCOPUS:85068987633
T3 - Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering Education and Training, ICSE-SEET 2019
SP - 147
EP - 157
BT - Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 25 May 2019 through 31 May 2019
ER -