Semester of Graduation

Spring 2018


Master of Science in Computer Science (MSCS)


Computer Science and Engineering

Document Type



GitHub has been recently used in Software Engineering (SE) classes to facilitate col- laboration in student team projects. The underlying tenet is that the technical and social feature of GitHub can help students to communicate and collaborate more effectively as a team as well as help teachers to evaluate individual student contribution more objectively. To shed more light on this, in this case study, we explore the benefits and drawbacks of using GitHub in SE classes. Our study is conducted in a software engineering class of 91 students divided into 18 teams. Our research method includes an entry and an exit surveys and a qualitative analysis of students’ commit behavior throughout the period of the project. Our findings show that a) enforcing GitHub in SE classes can be an effective approach for enhancing students’ skills in configuration management and version control, and b) despite the steep learning curve, most teams managed to optimize their commit behavior over time. In terms of student evaluation, our analysis exposed the risks of using GitHub for individual effort assessment. The work in this paper provides several valuable insights for researchers and makes several recommendations for practitioners (teachers) about integrating GitHub in SE classes.



Committee Chair

Mahmoud, Anas