Teaching teamwork uses system control versions | Open and distance education. 2018. № 1(69). DOI: 10.17223/16095944/69/2

Teaching teamwork uses system control versions

The development of the software applications is accompanied by the creation of different types of documentation, which is subjected to constant and uncontrolled changes. These changes are made by a large numbers of the project participants. The team of developers should coordinate their teamwork in the project so that to clearly understand what happens to the software application versions and which parts of the program are changed. There are a sufficient numbers of tools that are available for both commercial and freeware using for managing of the software application versions and configurations. The type of the software tools is called the Version Control Systems (VCS). Systems like VCS allow developers to register changes in one or more files, as well as provide an opportunity to return to the previous versions of these files. Version Control Systems are important tools for the software developers. As a university teacher we must familiarize computer science students with VCS for the formation of understanding of the modern IT-industry realities. We also must develop appropriate skills in working with Version Control Systems, for example, VCS like the centralized system Subversion, and distributed systems Git and GitHub. The skills of using the version control systems are included into the list of special competences required for undergraduates and graduates in computer science majors for the successful work in the computing area. In this regard, the use of various VCS products as a training platform is relevant in the educational process of the universities. The article presents a methodology for teaching students to computer science, their teamwork skills via the version control systems such as Subversion, Git and GitHub. We have also analyzed different VCS and presented the scenarios for teaching centralized and distributed VCS. We present the algorithm that will help students to understand the concepts of branching, version control and will create skills for using GitHub for team-working. It is important to understand how Subversion, Git and GitHub version control systems can be used in teaching and learning context. We describe the list of benefits provided by the hosting and social functions of GitHub for education. We also present recommendations and methods for using Subversion, Git and GitHub in learning support. There are some problems and difficulties associated with the Subversion, Git and GitHub using in courses related to programming and software development: the learning of the VCS in undergraduate and graduate studies requires a substantial revision of the teaching methods of many computer science courses and the building of new ties between them.

Download file
Counter downloads: 234

Keywords

командная работа, система контроля версий (VCS), программная инженерия, управление учебным курсом, централизованная VCS, распределенная VCS, Git, GitHub, Subversion, teamwork, system control version (VCS), software engineering, centralized VCS, distributed VCS, Git, GitHub, Subversion

Authors

NameOrganizationE-mail
Moskaleva Y.P.Crimean Engineering-Pedagogical University, Simferopol, Russiayulmosk@mail.ru
Seidametova Z.S.Crimean Engineering-Pedagogical University, Simferopol, Russiaz.seydametova@gmail.com
Всего: 2

References

Assar V. The software that builds software // The New Yorker. - 2013. - 07 avg. [Электронный ресурс]. - Режим доступа: http://bit.ly/2mHpHtF
Bonakdarian E. Pushing Git & GitHub in undergraduate computer science classes // Journal of Computing Sciences in Colleges. - January 2017. - Vol. 32, Issue 3. - USA: Consortium for Computing Sciences in Colleges, 2017. - P. 119-125.
Haaranen L., Lehtinen T. Teaching Git on the Side: Version Control System as a Course Platform // Proceedings of the 2015 ACM Conference on Innovation and Technology in Computer Science Education (June 4-8, 2015, Vilnius, Lithuania). - NY, USA: ACM, 2015. - P. 87-92.
Walker E., Connelly J., Musicant D. Elegit: Git Learning Tool for Students // Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education Seattle (March 8-11, 2017. - Washington, USA). - NY, USA: ACM, 2017. P. 642.
Zagalsky A., Feliciano J., Storey M.-A. et al. The Emergence of GitHub as a Collaborative Platform for Education // Proceedings of the 18th ACM Conference on Computer Supported Cooperative Work & Social Computing (Vancouver, BC, Canada. March 14-18, 2015). - NY, USA: ACM, 2015. - P. 1906-1917.
Fontana F.A., Raibulet C. Students’ Feedback in Using GitHub in a Project Development for a Software Engineering Course // Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education (Bologna, Italy. July 03-05, 2017). - NY, USA: ACM, 2017. - P. 1906-1917.
Zhu J., Zhou M., Mockus A. Patterns of folder use and project popularity: a case study of GitHub repositories // Proceedings of the 8th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (Torino, Italy. September 18-19, 2014. Article № 30). - NY, USA: ACM, 2014. - 4 p.
Kochhar P.S., Lo D. Revisiting Assert Use in GitHub Projects // Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering (Karlskrona, Sweden. June 15-16, 2017). - NY, USA: ACM, 2017. - P. 298-307.
Borges H., Hora A., Valente M.T. Predicting the Popularity of GitHub Repositories // Proceedings of the 12th International Conference on Predictive Models and Data Analytics in Software Engineering (Ciudad Real, Spain. September 09, 2016. Article № 9). - NY, USA: ACM, 2016. - 10 p.
 Teaching teamwork uses system control versions | Open and distance education. 2018. № 1(69). DOI: 10.17223/16095944/69/2

Teaching teamwork uses system control versions | Open and distance education. 2018. № 1(69). DOI: 10.17223/16095944/69/2

Download full-text version
Counter downloads: 854