Abstract

Many software engineering courses are centered around team-based project development. Analyzing the source code contributions during the projects’ development could provide both instructors and students with constant feedback to identify common trends and behaviors that can be improved during the courses. Evaluating course projects is a challenge due to the difficulty of measuring individual student contributions versus team contributions during the development. The adoption of distributed version control sys-tems like git enable the measurement of students’ and teams’ contributions to the project.In this work, we analyze the contributions within eight software development projects,with 150 students in total, from undergraduate courses that used project-based learning.We generate visualizations of aggregated git metrics using inequality measures and the contribution per module, which offer insights into the practices and processes followed by students and teams throughout the project development. This approach allowed us to identify inequality among students’ contributions, the modules where students con-tributed, development processes with a non-steady pace, and integration practices render-ing a useful feedback tool for instructors and students during the project’s development.Further studies can be conducted to assess the quality, complexity, and ownership of the contributions by analyzing software artifacts.

Highlights

  • IntroductionSoftware engineering is a technical activity that requires soft skills such as teamwork, initiative, commitment, communication, and time management [1]

  • Software engineering is a technical activity that requires soft skills such as teamwork, initiative, commitment, communication, and time management [1]. These skills are essential for software engineering professionals, there is a gap between what is taught in academia and what is needed in the industry [2]

  • We found that all our projects had inequalities, inequality metrics were useful to determine how unequal students contributions were within a project, team contributions were within a project, and students contributions were within their team

Read more

Summary

Introduction

Software engineering is a technical activity that requires soft skills such as teamwork, initiative, commitment, communication, and time management [1] These skills are essential for software engineering professionals, there is a gap between what is taught in academia and what is needed in the industry [2]. A paradigm shift has emerged in education to help students acquire the knowledge and skills needed in the industry through project-based learning [3]. Evaluating such projects is a challenge for instructors due to the difficulty of objectively measuring individual students’ contributions against team contributions because the projects are a product of collaborative effort [4,5,6]. Git is open-source and widely used in industry as well as educational settings [9]

Objectives
Methods
Discussion
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call