skip to main content
10.1145/2889160.2889195acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Student experiences using GitHub in software engineering courses: a case study

Published: 14 May 2016 Publication History

Abstract

GitHub has been embraced by the software development community as an important social platform for managing software projects and to support collaborative development. More recently, educators have begun to adopt it for hosting course content and student assignments. From our previous research, we found that educators leverage GitHub's collaboration and transparency features to create, reuse and remix course materials, and to encourage student contributions and monitor student activity on assignments and projects. However, our previous research did not consider the student perspective.
In this paper, we present a case study where GitHub is used as a learning platform for two software engineering courses. We gathered student perspectives on how the use of GitHub in their courses might benefit them and to identify the challenges they may face. The findings from our case study indicate that software engineering students do benefit from GitHub's transparent and open workflow. However, students were concerned that since GitHub is not inherently an educational tool, it lacks key features important for education and poses learning and privacy concerns. Our findings provide recommendations for designers on how tools such as GitHub can be used to improve software engineering education, and also point to recommendations for instructors on how to use it more effectively in their courses.

References

[1]
T. F. Bissyande, D. Lo, L. Jiang, L. Reveillere, J. Klein, and Y. Le Traon. Got issues? who cares about it? a large scale investigation of issue trackers from github. In Software Reliability Engineering (ISSRE), 2013 IEEE 24th International Symposium on, pages 188--197. IEEE, 2013.
[2]
K. Charmaz. Constructing grounded theory: A practical guide through qualitative analysis (introducing qualitative methods series). 2006.
[3]
C. Clifton, L. C. Kaczmarczyk, and M. Mrozek. Subverting the fundamentals sequence: using version control to enhance course management. In ACM SIGGSE Bulletin, volume 39, pages 86--90. ACM, 2007.
[4]
B. Collis and J. Moonen. The contributing student: Learners as co-developers of learning resources for reuse in web environments. In Engaged learning with emerging technologies, pages 49--67. Springer, 2006.
[5]
L. Dabbish, C. Stuart, J. Tsay, and J. Herbsleb. Social coding in github: transparency and collaboration in an open software repository. In Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work, pages 1277--1286. ACM, 2012.
[6]
C. Dalsgaard. Social software: E-learning beyond learning management systems. European Journal of Open, Distance and E-Learning, 2006(2), 2006.
[7]
M. E. Edrees. elearning 2.0: Learning management systems readiness. In e-Learning" Best Practices in Management, Design and Development of e-Courses: Standards of Excellence and Creativity", 2013 Fourth International Conference on, pages 90--96. IEEE, 2013.
[8]
K. Falkner and N. J. Falkner. Supporting and structuring contributing student pedagogy - in computer science curricula. Computer Science Education, 22(4):413--443, 2012.
[9]
J. Feliciano. Towards a collaborative learning platform: The use of github in computer science and software engineering courses. Master's thesis, University of Victoria, 2015.
[10]
L. Glassy. Using version control to observe student software development processes. Journal of Computing Sciences in Colleges, 21(3):99--106, 2006.
[11]
T. Griffin and S. Seals. Github in the classroom: Not just for group projects. Journal of Computing Sciences in Colleges, 28(4):74--74, 2013.
[12]
L. Haaranen and T. Lehtinen. Teaching git on the side: Version control system as a course platform. In Proceedings of the 2015 ACM Conference on Innovation and Technology in Computer Science Education, pages 87--92. ACM, 2015.
[13]
J. Hamer. Some experiences with the contributing student approach. ACM SIC CSE Bulletin, 38(3):68--72, 2006.
[14]
J. Hamer, Q. Cutts, J. Jackova, A. Luxton-Reilly, R. McCartney, H. Purchase, C. Riedesel, M. Saeli, K. Sanders, and J. Sheard. Contributing student pedagogy. ACM SIGCSE Bulletin, 40(4):194--212, 2008.
[15]
J. Hamer, A. Luxton-Reilly, H. C. Purchase, and J. Sheard. Tools for contributing student learning. ACM Inroads, 2(2):78--91, 2011.
[16]
C. D. Hundhausen, A. Agrawal, and P. Agarwal. Talking about code: Integrating pedagogical code reviews into early computing courses. ACM Transactions on Computing Education (TOCE), 13(3):14, 2013.
[17]
J. Janssen and D. Bodemer. Coordinated computer-supported collaborative learning: Awareness and awareness tools. Educational Psychologist, 48(1):40--55, 2013.
[18]
M. Jazayeri. The education of a software engineer. In Proceedings of the 19th IEEE international conference on Automated software engineering, pages 18-xxvii. IEEE Computer Society, 2004.
[19]
H. Jenkins. Confronting the challenges of participatory culture: Media education for the 21st century. Mit Press, 2009.
[20]
E. Kalliamvakou, G. Gousios, K. Blincoe, L. Singer, D. M. German, and D. Damian. The promises and perils of mining github. In Proceedings of the 11th Working Conference on Mining Software Repositories, pages 92--101. ACM, 2014.
[21]
J. Kelleher. Employing git in the classroom. In Computer Applications and Information Systems (WCCAIS), 2014 World Congress on, pages 1--4. IEEE, 2014.
[22]
S. Kumar, A. K. Gankotiya, and K. Dutta. A comparative study of moodle with other e-learning systems. In Electronics Computer Technology (ICECT), 2011 3rd International Conference on, volume 5, pages 414--418. IEEE, 2011.
[23]
S. R. Malikowski, M. E. Thompson, and J. G. Theis. A model for research into course management systems: Bridging technology and learning theory. Journal of educational computing research, 36(2):149--173, 2007.
[24]
J. Marlow, L. Dabbish, and J. Herbsleb. Impression formation in online peer production: activity traces and personal profiles in github. In Proceedings of the 2013 conference on Computer supported cooperative work, pages 117--128. ACM, 2013.
[25]
C. McLoughlin and M. J. Lee. Social software and participatory learning: Pedagogical choices with technology affordances in the web 2.0 era. In ICT: Providing choices for learners and learning. Proc. ascilite Singapore 2007, pages 664--675, 2007.
[26]
J. Mott. Envisioning the post-lms era: The open learning network. Educause Quarterly, 33(1):1--9, 2010.
[27]
K. L. Reid and G. V. Wilson. Learning by doing: introducing version control as a way to manage student assignments. ACM SIGCSE Bulletin, 37(1):272--276, 2005.
[28]
P. Runeson, M. Host, A. Rainer, and B. Regnell. Case study research in software engineering: Guidelines and examples. John Wiley & Sons, 2012.
[29]
J. Sant. Code repurposing as an assessment tool. In Proc. of the 37th International Conference on Software Engineering-Volume 2, pages 295--298. IEEE Press, 2015.
[30]
L. Singer, F. Figueira Filho, B. Cleary, C. Treude, M.-A. Storey, and K. Schneider. Mutual assessment in the social programmer ecosystem: An empirical investigation of developer profile aggregators. In Proceedings of the 2013 Conference on Computer Supported Cooperative Work, CSCW '13, pages 103--116, New York, NY, USA, 2013. ACM.
[31]
H. Søndergaard and R. A. Mulder. Collaborative learning through formative peer review: pedagogy, programs and potential. Computer Science Education, 22(4):343--367, 2012.
[32]
R. K. Yin. Case study research: Design and methods. Sage publications, 2013.
[33]
A. Zagalsky, J. Feliciano, M.-A. Storey, Y. Zhao, and W. Wang. The emergence of github as a collaborative platform for education. In Proc. of the 18th ACM Conference on Computer Supported Cooperative Work & Social Computing, pages 1906--1917. ACM, 2015.

Cited By

View all
  • (2024)On Predicting Exam Performance Using Version Control Systems’ FeaturesComputers10.3390/computers1306015013:6(150)Online publication date: 9-Jun-2024
  • (2024)A Comparative Analysis of GitHub Contributions Before and After An OSS Based Software Engineering ClassProceedings of the 2024 on Innovation and Technology in Computer Science Education V. 110.1145/3649217.3653535(576-582)Online publication date: 3-Jul-2024
  • (2024)Integrating Canvas and GitLab to Enrich Learning ProcessesProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640056(180-190)Online publication date: 14-Apr-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '16: Proceedings of the 38th International Conference on Software Engineering Companion
May 2016
946 pages
ISBN:9781450342056
DOI:10.1145/2889160
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. GitHub
  2. collaboration
  3. education
  4. learning
  5. software engineering

Qualifiers

  • Research-article

Conference

ICSE '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)113
  • Downloads (Last 6 weeks)4
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)On Predicting Exam Performance Using Version Control Systems’ FeaturesComputers10.3390/computers1306015013:6(150)Online publication date: 9-Jun-2024
  • (2024)A Comparative Analysis of GitHub Contributions Before and After An OSS Based Software Engineering ClassProceedings of the 2024 on Innovation and Technology in Computer Science Education V. 110.1145/3649217.3653535(576-582)Online publication date: 3-Jul-2024
  • (2024)Integrating Canvas and GitLab to Enrich Learning ProcessesProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640056(180-190)Online publication date: 14-Apr-2024
  • (2024)The impact of GitHub on students' learning and engagement in a software engineering courseComputer Applications in Engineering Education10.1002/cae.2277532:5Online publication date: 18-Jun-2024
  • (2023)Teaching and Promoting Engagement with OSS: Yet Another Experience ReportProceedings of the XXXVII Brazilian Symposium on Software Engineering10.1145/3613372.3614190(534-543)Online publication date: 25-Sep-2023
  • (2023)The impact of unequal contributions in student software engineering team projectsJournal of Systems and Software10.1016/j.jss.2023.111839206(111839)Online publication date: Dec-2023
  • (2022)Developing a Learning Data Collection Platform for Learning Analytics in Online EducationApplied Sciences10.3390/app1211541212:11(5412)Online publication date: 26-May-2022
  • (2022)Codehound: Helping Instructors Track Pedagogical Code Dependencies in Course MaterialsProceedings of the 2022 ACM SIGPLAN International Symposium on SPLASH-E10.1145/3563767.3568126(1-6)Online publication date: 29-Nov-2022
  • (2022)How Students Are Using GitHub? A SurveyProceedings of the 15th Innovations in Software Engineering Conference10.1145/3511430.3511454(1-5)Online publication date: 24-Feb-2022
  • (2022)Global software engineering in a global classroomProceedings of the ACM/IEEE 44th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3510456.3514163(113-121)Online publication date: 21-May-2022
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media