electronics
Article
The Impact of COVID-19 in Collaborative Programming.
Understanding the Needs of Undergraduate Computer Science
Students
Carmen Lacave * and Ana Isabel Molina
Citation: Lacave, C.; Molina, A.I. The
Impact of COVID-19 in Collaborative
Programming. Understanding the
Needs of Undergraduate Computer
Science Students. Electronics 2021, 10,
1728. https://doi.org/10.3390/
electronics10141728
Academic Editor: Dimitris Apostolou
Received: 21 June 2021
Accepted: 12 July 2021
Published: 19 July 2021
Publisher’s Note: MDPI stays neutral
with regard to jurisdictional claims in
published maps and institutional affil-
iations.
Copyright: © 2021 by the authors.
Licensee MDPI, Basel, Switzerland.
This article is an open access article
distributed under the terms and
conditions of the Creative Commons
Attribution (CC BY) license (https://
creativecommons.org/licenses/by/
4.0/).
CHICO Research Group, Universidad de Castilla-La Mancha, 13071 Ciudad Real, Spain;
anaisabel.molina@uclm.es
* Correspondence: carmen.lacave@uclm.es
Abstract: Collaborative learning activities have become a common practice in current university
studies due to the implantation of the EHEA. However, the COVID-19 pandemic has led to a radical
and abrupt change in the teaching–learning model used in most universities, and in the way students’
group work is carried out. Given this new situation, our interest is focused on discovering how
computer science students have approached group programming tasks. For this purpose, we have
designed a cross-sectional pilot study to explore, from both social and technological points of view,
how students carried out their group programming activities during the shutdown of universities,
how they are doing them now, when social distance must be maintained, and what they have missed
in both situations. The results of the study indicate that during the imposed confinement, the students
adopted a programming model based on work division or distributed peer programming, and very
few made use of synchronous distributed collaboration tools. After the lockdown, the students
mostly opted for a model based on collaborative programming and there was an increased use of
synchronous distributed collaboration tools. The specific communication, synchronization, and
coordination functionalities they considered most useful or necessary were also analyzed. Among
the desirable features included in a software for synchronous distributed programming, the students
considered that having an audio-channel can be very useful and, possibly, the most agile method to
communicate. The video signal is not considered as very necessary, being in many cases rather a
source of distraction, while textual communication through a chat, to which they are very accustomed,
is also well valued. In addition, version control and the possibility of recovering previous states of
the practical projects were highly appreciated by the students, and they considered it necessary to
record the individual contributions of each member of the team to the result.
Keywords: group programming; distributed collaborative programming; students’ needs; COVID-19
1. Introduction
The ability to work in a team is undeniably a basic skill for successful employment in
STEM [1] and in particular in computer science (CS) [2]. This is more evident in the field of
software development, as it is considered to be a significantly creative and collaborative
process [3], and it has been proved that programming in groups improves the process of
solving software projects, the quality of the programs generated [4,5], and the programmers’
confidence [6]. Therefore, universities should prepare their students effectively for the job
market by including the opportunity for teamwork in their curricula [7]. As a result, most
undergraduate CS programs related to software development are designed to include the
completion of various programming projects of small and medium size, which has been
found to have a positive effect on students: they enjoy the social interaction resulting from
collaborative activities, and improve their engagement, retention, and performance [8].
Thus, in the first year, when the basics of programming are introduced, the concept of
software development is considered as a programming problem, although also involving
Electronics 2021, 10, 1728. https://doi.org/10.3390/electronics10141728 https://www.mdpi.com/journal/electronics