Analysis of the Evolution Patterns of Student Software Development through GitHub Repository Activity in Project-Based Learning

Authors

  • Mutia Rahmi Dewi Politeknik Negeri Padang Author
  • Defni Politeknik Negeri Padang Author
  • Yoliza Erwanda Politeknik Negeri Padang Author

DOI:

https://doi.org/10.24036/jeve.v1i2.47

Keywords:

software evolution, software construction, github, Project Based Learning, commit analysis

Abstract

Software evolution is a continuous process of change that occurs throughout the system development life cycle. In the context of higher education, understanding the dynamics of software change is essential for assessing students’ competencies in managing team-based projects. This study aims to analyze software evolution patterns in student projects developed using the Project-Based Learning (PBL) approach. The research data were obtained from 12 public GitHub repositories belonging to students who developed applications based on the Laravel framework. The study employs a descriptive quantitative approach by analyzing commit log data using automated Python-based scripts. The analysis focuses on activity metrics such as the number of commits, the average number of files changed per commit, and the identification of the most frequently modified files. The results indicate that each group exhibits distinct construction and evolution patterns. Groups with high commit frequencies demonstrate stable iterative development processes, whereas groups with low commit frequencies tend to perform large, sporadic changes. Frequent small changes on average indicate the adoption of good continuous integration practices. These findings confirm that software evolution dynamics in PBL are influenced not only by project size but also by collaboration patterns and the maturity of version control system usage. The results of this study are expected to serve as a foundation for developing automated, data-driven evaluation systems based on students’ development activities, as well as to enrich empirical studies on software evolution in vocational education.

References

[1] A. Obaid, “Using prototypes in agile software development,” IJCI, vol. 3, no. 2, pp. 23–38, 2024, doi: 10.59992/ijci.2024.v3n2p2.

[2] G. Guo, “Enhancing project‐based manufacturing education with integrated engineering software tools,” Comput. Appl. Eng. Educ., vol. 33, no. 2, 2025, doi: 10.1002/cae.70012.

[3] C. Connolly and G. Meiselwitz, “integrating software engineering in computer programming education,” pp. 50–54, 2009, doi: 10.1145/1631728.1631745.

[4] Y. Golubev, J. Li, T. Bryksin, V. Bushev, and I. Ahmed, “Changes from the trenches: should we automate them?,” 2021, doi: 10.48550/arxiv.2105.10157.

[5] E. Zabardast, J. González‐Huerta, and D. Šmite, “refactoring, bug fixing, and new development effect on technical debt: an industrial case study,” pp. 376–384, 2020, doi: 10.1109/seaa51224.2020.00068.

[6] S. Bonesso, F. Gerli, and E. Bruni, “The emotional and social side of analytics professionals: an exploratory study of the behavioral profile of data scientists and data analysts,” Int. J. Manpow., vol. 43, no. 9, pp. 19–41, 2022, doi: 10.1108/ijm-07-2020-0342.

[7] M. AlMarzouq, A. AlZaidan, and J. Dallal, “Mining github for research and education: challenges and opportunities,” Int. J. Web Inf. Syst., vol. 16, no. 4, pp. 451–473, 2020, doi: 10.1108/ijwis-03-2020-0016.

[8] H. Toba, T. K. Gautama, J. Narabel, A. Widjaja, and S. F. Sujadi, “Evaluasi metodologi ci/cd untuk pengembangan perangkat lunak dalam perkuliahan,” JEPIN (Jurnal Edukasi dan Penelit. Inform., vol. 8, no. 2, pp. 227–234, 2022.

[9] M. Chan and S. Yazid, “A novel framework for information security during the sdlc implementation stage: a systematic literature review,” J. Resti (Rekayasa Sist. Dan Teknol. Informasi), vol. 8, no. 1, pp. 88–99, 2024, doi: 10.29207/resti.v8i1.5403.

[10] A. Alkhalil, “evolution of existing software to mobile computing platforms: framework support and case study,” Int. J. Adv. Appl. Sci., vol. 8, no. 3, pp. 100–111, 2021, doi: 10.21833/ijaas.2021.03.013.

[11] M. Murillo, G. López, R. Spínola, J. Guzmán, N. Rios, and A. Pacheco, “Identification and management of technical debt,” J. Softw. Eng. Res. Dev., 2023, doi: 10.5753/jserd.2023.2671.

[12] S. Hamer, C. Quesada-López, A. Martínez, and M. Jenkins, “Using git metrics to measure students’ and teams’ code contributions in software development projects,” Clei Electron. J., vol. 24, no. 2, 2021, doi: 10.19153/cleiej.24.2.8.

[13] M. Yunus, P. Setyosari, S. Utaya, and D. Kuswandi, “The influence of online project collaborative learning and achievement motivation on problem-solving ability,” Eur. J. Educ. Res., vol. volume-10-2021, no. volume-10-issue-2-april-2021, pp. 813–823, 2021, doi: 10.12973/eu-jer.10.2.813.

[14] M. Shahid, K. Pervaiz, M. Awais, and S. Khurshid, “Project-based iterative teaching model for introductory programming course,” Nile J. Commun. Comput. Sci., vol. 5, no. 1, pp. 10–41, 2023, doi: 10.21608/njccs.2023.321167.

[15] M. Trujillo, “The penumbra of open source: projects outside of centralized platforms are longer maintained, more academic and more collaborative,” 2021, doi: 10.48550/arxiv.2106.15611.

[16] M. Scheidgen and J. Fischer, “Model-based mining of source code repositories,” pp. 239–254, 2014, doi: 10.1007/978-3-319-11743-0_17.

[17] T. Heričko, B. Šumak, and S. Karakatič, “commit-level software change intent classification using a pre-trained transformer-based code model,” Mathematics, vol. 12, no. 7, p. 1012, 2024, doi: 10.3390/math12071012.

[18] R. Alfayez and A. Alazba, “merge conflict prediction using feature selection and stacking heterogeneous ensembles: an empirical investigation,” J. Softw. Evol. Process, vol. 37, no. 9, 2025, doi: 10.1002/smr.70047.

Downloads

Published

01/15/2026

How to Cite

Analysis of the Evolution Patterns of Student Software Development through GitHub Repository Activity in Project-Based Learning (M. Rahmi Dewi, Defni, & Y. Erwanda, Trans.). (2026). Journal of Electrical Vocational Education, 1(2), 153-160. https://doi.org/10.24036/jeve.v1i2.47