=Paper= {{Paper |id=Vol-2733/paper17 |storemode=property |title=Group Programming in COVID-19 Time: The Experience of the Students of the ESI-CR of the UCLM |pdfUrl=https://ceur-ws.org/Vol-2733/paper17.pdf |volume=Vol-2733 |authors=Ana Isabel Molina,Carmen Lacave |dblpUrl=https://dblp.org/rec/conf/siie/MolinaL20 }} ==Group Programming in COVID-19 Time: The Experience of the Students of the ESI-CR of the UCLM== https://ceur-ws.org/Vol-2733/paper17.pdf
      Group Programming in COVID-19 Time: The
     Experience of the Students of the ESI-CR of the
                         UCLM
                    Ana Isabel Molina Díaz                                                         Carmen Lacave Rodero
          Dpto. Tecnologías y Sistemas de Información                                    Dpto. Tecnologías y Sistemas de Información
              Universidad de Castilla-La Mancha                                              Universidad de Castilla-La Mancha
                     Ciudad Real, España                                                            Ciudad Real, España
                   anaisabel.molina@uclm.es                                                        carmen.lacave@uclm.es



    Abstract—Collaborative learning activities have become a                 member during the programming activity. Several studies
common practice in current university studies due to the                     have proved that the use of the PP technique improves the
implantation of the EHEA. But the COVID-19 pandemic has                      process of solving programming problems, the productivity of
led to a radical and abrupt change in the teaching-learning                  the team, and the quality of the programs generated [5, 6].
model used in most universities, based on a face-to-face model.
A rapid and unexpected adaptation to a new model of non-                         Pair Programming also requires working face-to-face in
presential teaching has been required, which has been able to be             the same location. When it is carried out in a distributed
implemented, even in an improvised manner, thanks to the                     environment, it is called Distributed Pair Programming
effort of teachers and students. Given this new scenario, our                (DPP) [7]. In this case, both team members collaborate
interest is mainly focused on discovering to what extent our                 synchronously on the same programming task, but they are
students of the Computer Engineering Degree have approached                  geographically distant, so they must use specific collaboration
the group programming tasks, which they must perform in a                    support tools (groupware) to develop their work [8]. When the
large number of subjects. For this purpose, we have carried out              number of programmers is not limited to two, the technique is
an experience aimed at finding the strategies and software tools             known as Collaborative Programming (CP). To ensure the
they have used to address these tasks. The results of the study              efficiency of this process, the tools used must incorporate
indicate that students have adopted a programming model                      support mechanisms to the group activity (coordination,
based on work division or distributed peer programming, and
                                                                             access to shared information, awareness in the case of
very few have chosen to make use of synchronous distributed
                                                                             working synchronously, ...) [9, 10, 11].
collaboration tools.
                                                                                 In the second half of March 2020, the confinement due to
   Keywords— Group programming, Peer Programming,                            the COVID-19 pandemic forced a shift from a face-to-face to
groupware, COVID-19                                                          an online education model from just one day to the next [12,
                                                                             13]. In the case of the universities, each one provided different
                     I. INTRODUCTION                                         tools for teachers and students to address this non-face-to-face
    The implantation of the European Higher Education Area                   modality, facilitating the adaptation of methodologies,
(EHEA) has led to group activities becoming a common                         planning and evaluation [14].
practice for university students [1, 2]. Specifically, the Degree
                                                                                 Within this process of improvised and rapid adaptation,
in Computer Engineering (GII) at the University of Castilla-
                                                                             the UCLM decided to maintain the usual platform of online
La Mancha (UCLM) promotes the development of group
                                                                             communication with students (Moodle1) and the institutional
programming projects of small and medium size in most
                                                                             shared information repository (MS OneDrive2), as well as to
subjects [3]. Working groups are usually formed by two
                                                                             provide the university community with video conferencing
students who must cooperate to develop some program or
                                                                             applications (MS Teams3), and video creation and playback
practical project. The most frequent ways to approach such
                                                                             (MS Stream4). The combination of these tools allowed to solve
joint activities are the distribution of programming tasks in
                                                                             the problems of teacher-student communication in a more or
different parts of the program/project (different files, modules
                                                                             less satisfactory way. However, as teachers of the GII, and in
or functions), the use of shared repositories (Git, GitHub,
                                                                             view that online teaching has come to stay (to a greater or
Google Drive, OneDrive, ...) or the application of Peer
                                                                             lesser extent), our interest is focused on knowing how the
Programming (PP) techniques [4], mainly in the context of
                                                                             student-student communication was approached in the context
face-to-face laboratory classes.
                                                                             of group programming tasks, which our students have had to
    Pair Programming is the term used to describe the process                perform in most of the subjects. It is clear that, in the context
followed by two programmers working in the same computer,                    of the imposed confinement, students at all universities had to
performing a particular programming task or the design of an                 make use of new strategies and work tools to move from a
algorithm. In this scenario two roles are defined: the driver,               traditional PP-based model to a DPP or CP approach.
who controls the programming activity and is responsible for
                                                                                 Therefore, this article describes the research experience
writing the source code; and the observer, who gives
                                                                             carried out at the Escuela Superior de Informática de Ciudad
indications to his/her partner about the development being
                                                                             Real (ESI-CR) of the UCLM, which aims to know the
carried out, the existence of possible syntax errors, etc. Both
                                                                             mechanisms, tools and difficulties of the students of the GII,
roles can be exchanged, alternating the control each team

1 https://moodle.org/?lang=es                                                3 https://www.microsoft.com/es-es/microsoft-365/microsoft-
2 https://www.microsoft.com/es-es/microsoft-365/onedrive/online-             teams/group-chat-software
                                                                             4 https://www.microsoft.com/es-es/microsoft-365/microsoft-stream
cloud-storage


        Copyright © 2020 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
as well as their subjective perception, to address the group           Answer
                                                                                                         Statement
programming tasks they performed during the state of alarm,             item
in the period between March and May 2020. Section 2                      (a)        I have chosen not to do group practice. I have chosen
describes the details of the experience carried out                                 or changed (if the subject allowed it) to the modality
(questionnaire designed, results and discussion); and section 3                     of individual work
                                                                          (b)       We have distributed the practical work of different
comments on the conclusions drawn from this work and the
                                                                                    subjects so that each member of the group can work
work to be undertaken in the future.                                                individually on each one of them, and not have the
                                                                                    need to work together on the same project/program
                      II. EXPERIENCE                                      (c)       We have used version control systems (e.g., Git,
    In an effort to find out how the students of the GII of the                     GitHub, ...) to work on the same programming
ESI-CR carried out their group programming tasks during the                         project, but asynchronously (not both at the same
decreed state of alarm between March and May in Spain, an                           time on the same project/file)
experience was carried out with the voluntary and anonymous               (d)       We have made use of video conferencing tools (e.g.
participation of a total of 112 students (14 in the first year, 49                  MS Teams or similar), sharing the screen or the IDE
                                                                          (e)       We have made use of a synchronous collaborative
in the second year, 35 in the third year and 14 in the fourth                       software development environment
year). The experience took place during the first half of June            (f)       We have made combined use of some of the above
and consisted of collecting information of interest by means                        options
of a questionnaire, displayed through the MS Forms5 tool, and
described below.                                                      TABLE II. DIFFERENT GROUP PROGRAMMING STRATEGIES OR SCENARIOS
A. Questionnaire                                                        Answer item                           Statement
   Given the objective of this research, a questionnaire was              COOP             I believe that it is better to divide the work
designed to find out the following aspects:                                                when it is necessary to program in group in
                                                                                           the same practical project, i.e., that each group
    Need for group programming activities in a distributed                                member works in an independent way in a
       way. This item asked whether they had to perform                                    certain component (ex. package, file, class, ...)
       group programming activities during the confinement                                 and, then, the contribution of each one is
       period.                                                                             integrated to the final result
                                                                      ASYNC_COLAB          I think that group programming is best done
     Size of the programming groups. Although in most                                     in an asynchronous way (each member of the
      cases the groups consisted of two members, it was                                    group working on the same code/project, but
      asked whether the groups were made up of two, three                                  at different times), taking turns not to "step
      or more members.                                                                     on" the work
                                                                       SYNC_COLAB          I think that group programming is best done
     How they have approached group programming tasks.                                    in a synchronous way (both partners working
      This item inquired about the solution adopted to                                     at the same time on the same code), using
      perform group programming tasks when the members                                     additional channels of chat, video or audio to
      of the work team could not meet face-to-face. Several                                get organized and make decisions together
      answer options were provided (Table I), and several of
      them could be selected. In the case of choosing one of
                                                                            The first scenario proposes the division of work and
      the last four options, an additional question was
                                                                            the progress in programming autonomously, in
      enabled to indicate which tool/s they had used.
                                                                            different sections of the final program or project. In
       Note that option (d) is the one that best aligns with the            other words, a cooperation strategy was presented, in
       PP approach, but in a distributed (online) format: the               which it is possible to work in a synchronous or
       videoconferencing tool allows sharing the                            asynchronous way, but in different parts of the code.
       development environment (IDE 6 ) (for instance,                      The second one suggests working on the same code but
       Eclipse 7 ) so that the members of the couple can                    in different moments of time, that is, it describes a
       alternatively take turns to adopt the roles of driver and            collaboration scenario, based on the assignment of
       observer. On the other hand, option (e) refers to the use            shifts and, therefore, asynchronous. The last scenario
       of a groupware programming environment, which                        corresponds to a purely collaborative and synchronous
       would allow the application of a CP approach.                        group work.
     Subjective perception about different strategies for               Need for tools to support distributed and synchronous
      group programming. This aspect was integrated by                    group programming. This section asked about the need
      three items in which three possible strategies for group            for tools to support collaborative synchronous work,
      programming were presented (Table II). Each of the                  which matches the last scenario described in the
      possible response options was ranked by means of a 5-               previous question.
      level Likert scale, which allowed to indicate the degree
      of agreement (value closest to 5) or disagreement                  Features and functionalities needed to support
      (value closest to 1) with each one.                                 synchronous distributed programming activities.
                                                                          Based on a hypothetical scenario of synchronous
 TABLE I. SOLUTIONS ADOPTED FOR GROUP PROGRAMMING DURING THE              distributed programming, a series of features and
                        CONFINEMENT PERIOD                                functionalities that could be considered desirable, and


5 https://forms.office.com                                           7 https://www.eclipse.org/
6 IDE-Integrated Development Environment.
        even necessary, for effective and efficient group             total) answered positively. Most of these students belonged to
        programming are presented.                                    2nd and 3rd year (Figure 1).
        Participants were asked to rate the usefulness/need for           As for the size of the groups in which they participated, 52
        each of these features or functions on a scale of 1 to 5,     of the 98 students indicated that they programmed in pairs, 16
        with the lower end of the scale (1) representing that it      in groups of three and 13 in groups of more than three.
        would not be necessary or useful at all, and the upper        Another 17 indicated that they were part of several groups of
        end (5) indicating that it would be very necessary or         different sizes.
        very useful. Table III shows the list of features, which
        includes the main communication tool (text-chat,
        audio and video), coordination and access control to
        the shared workspace (blocking of code sections,
        version control) mechanisms, as well as aspects related
        to awareness (connected users and visual highlighting
        of access to the shared area) [10]. Awareness [15, 16]
        is the set of visualization techniques that are
        incorporated into the user interface of collaborative
        applications to provide information about group               Fig. 1. Distribution by course of the students who expressed the need for
        activity, that is, visual information about the people the    group programming during confinement.
        user is working with, the activities they are carrying out
        and about which part of the shared artefact they are               The solutions adopted to deal with group programming
        working with.                                                 (Table I) consisted, mostly, in the combination of various
                                                                      strategies, highlighting the use of some videoconferencing
        Finally, an item in which students could indicate any         system (being MS Teams and Discord 8 the most cited)
        feature or functionality not listed that they considered      together with an asynchronous version control system
        necessary or useful was included.                             (GitHub9 was the most outstanding). Figure 2 also shows the
                                                                      percentage of students who chose to use only one tool.
TABLE III. USEFUL FEATURES AND FUNCTIONALITIES IN A SYNCHRONOUS
        DISTRIBUTED COLLABORATIVE PROGRAMMING SCENARIO

                                          Statement
      Answer item
                                "The application should..."
           IDE            ...be an evolution of a known IDE (e.g.
                          Eclipse, Netbeans, ...)
  CONNECT_USERS           ... show the users connected (identified
                          by their name, avatar, availability
                          status, ...)
         CHAT             ...      include      a      synchronous
                          communication tool (chat)
         AUDIO            ...    have      the    possibility    of
                          communicating by audio with the
                          partner                                     Fig. 2. Percentages illustrating the different solutions adopted for group
         VIDEO            ... have a video channel that would         programming during confinement.
                          allow to make a videoconference with
                          the partner at the same time that it is         Among those who combined several strategies, five
                          being programmed                            participants from the third and fourth year indicated that they
     AWARENESS            ...show or visually highlight where the     used a synchronous collaborative development environment.
                          partner is writing/working (using
                          colours, icons, etc.)                           Table IV shows the main descriptive statistics (mean,
      BLOCKING            ...give the possibility of blocking         median and mode) of the answers related to the participants'
                          sections of code when the user is           subjective perception about the convenience of applying the
                          working on the same source code file at     three group programming scenarios described in the previous
                          the same time                               section (cooperation, asynchronous collaboration and
     VERS_CTROL           ...incorporate a version control system     synchronous collaboration) (Table II), the need to have tools
        LOG               ...maintain a log or record of each group   to support the last of these three scenarios, in a distributed
                          member's contributions to the final         context      (synchronous       distributed     collaborative
                          project                                     programming), and, finally, the functionalities and features
                                                                      they considered most necessary or useful in a tool to support
B. Results                                                            this programming strategy (Table III).
    The preprocessing of the data provided by the participants
in the questionnaire reduced the sample size to N=111. The               As far as the different strategies proposed (Figure 3), the
subsequent analysis of the responses provided yielded very            best evaluated was synchronous collaborative programming
interesting results, which are described below.                       (µ=4.00), while asynchronous collaboration modality was the
                                                                      worst valued (µ=2.74). Most of the students considered that
   Regarding the need to perform group programming tasks              having tools to support synchronous distributed programming
during the confinement, 98 of the 111 students (88% of the            scenarios should be necessary (µ=4.00). The features they

8 https://discord.com/                                                9 https://github.com/
considered most useful for the software supporting this                      adopted, in which only 30 out of 98 students have selected the
programming strategy (Figure 4) were that the collaborative                  use of version control tools (GitHub, for the majority), among
functionalities should be integrated in a known IDE (e.g.                    which there are no first-year students and 68% are third year
Eclipse) (µ=4.05), and that both version control support                     students.
(µ=4.29) and the recording of individual contributions made
by each team member to the final result should be included                   C. Discussion
(µ=4.23). With respect the communication mechanisms that                         The results obtained show that, despite the fact that
should be incorporated, the best rated was audio (µ=4.21),                   students positively valued synchronous distributed
followed by chat (µ=4.07), with the video signal being the one               programming (CP), they have opted, as a first option, for a PP
they considered the least useful (µ=3.26).                                   (driver-observer roles) programming model, but in an online
                                                                             mode (DPP) during the confinement period. Most of them
  TABLE IV. DESCRIPTIVE STATISTICS – PROGRAMMING SCENARIOS AND               have made use of MS Teams or Discord, sharing the
               FEATURES OF SYNCHRONOUS ENVIRONMENTS                          development IDE (Eclipse for Java; MS Visual Studio10 for
                              Mean        Std.                               Visual Basic, RStudio11 for R and Visual Studio Code12 for C
      Answer item                                   Median       Mode        and ADA) and changing turns alternatively to code. In the
                               (µ)        Dev.
         COOP                 3.00        1.13          3           3        same way that teachers have opted to transfer the face-to-face
   ASYNC_COLAB                2.74        1.16          3           3        magisterial class model to online support, in what has been
    SYNC_COLAB                3.75        1.18          4           4        referred as remote emergency teaching [14], students have
  Need for synchronous                                                       opted for a similar approach. In most cases, they extrapolated
                               4.00       1.08          4           4
     collaboration                                                           the way they work in the practice laboratories to a distributed
          IDE                  4.05       0.93          4           5        model. Very few students made use of a distributed and
  CONNECT_USERS                3.88       1.17          4           5        synchronous programming environment, possibly due to a
         CHAT                  4.07       2.06          4           5        lack of knowledge of the one that would suit their needs. In
        AUDIO                  4.21       1.06          5           5        the very few cases that they did so, the tools used were Google
        VIDEO                  3.26       1.31          3           5        Colab13 for Python programming and MS Visual Studio Live
    AWARENESS                  4.36       0.87          5           5        Share14 or Atom15 for C and ADA programming.
     BLOCKING                  4.19       1.04          5           5
    VERS_CTROL                            0.87
                                                                                 Among the desirable features included in a software for
                               4.29                     5           5
          LOG                             0.93
                                                                             group programming, at the same time and in a distributed way,
                               4.23                     4           5
                                                                             they 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, that they are very used to, is
                                                                             also well valued.
                                                                                 Version control and the possibility of recovering previous
                                                                             states of the practical projects were highly appreciated by
                                                                             students, for their obvious usefulness [17], although the fact
                                                                             that no first-year students and very few second-year students
                                                                             used them suggests that using this type of tool requires a
Fig. 3. Assessment of different strategies or group programming scenarios.   certain "maturity" not only in the use of technology, but also
                                                                             in how to address group work. Therefore, and considering the
    The incorporation of awareness mechanisms was                            advantages that the use of these kinds of tools could offer to
considered very necessary (µ=4.36), although the possibility                 GII students [18], it would be necessary to consider for the
of having visible information about the users connected or                   future introducing students to the use of version control
their availability at any given time (µ=3.88) was considered                 systems in the first or second year.
not very useful.
                                                                                 On the other hand, those who best value version control
    Finally, we analysed whether the assessment of each of                   tools also consider it necessary to record the individual
these features depends on some factors, such as the course in                contributions of each team member to the final result. This
which the student was enrolled or the size of the groups in                  feature, in order to evaluate and justify the personal
which they had worked. The ANOVA of the data reflected                       involvement in the deliveries, is very useful for both teachers
significant differences at 95% (p-value=0.003) only in the                   and students.
version control tool when considering the student's course as
a factor. The subsequent post-hoc revealed that these
differences occur between students of the 1st and 2nd courses
with respect to those of the 3rd and 4th courses. These results
are in line with the data reflected in the section on the solutions




10 https://visualstudio.microsoft.com/es/vs/                                 13 https://colab.research.google.com/notebooks/intro.ipynb
11 https://rstudio.com/                                                      14 https://visualstudio.microsoft.com/es/services/live-share/
12 https://code.visualstudio.com/                                            15 https://atom.io/
                  Fig. 4. Assessment of different features or functionalities needed in a synchronous collaborative programming scenario.

    In our research group (CHICO 16 ) the support of group                      incorporation of an audio channel between the team members.
programming has been, for years, a topic of interest [9, 10, 19].               Similarly, we plan to continue studying the tools that support
Among the latest developments, the COLLECE 2.017 system                         CP through a systematic literature review, which allows us to
stands out. This is a synchronous collaborative programming                     know the state of current research in this field.
environment that incorporates many of the features that have
been most appreciated by the students in this study (it is a plug-                                      ACKNOWLEDGEMENTS
in integrated in Eclipse, which incorporates awareness                             This work has been funded by the Ministry of Economy,
mechanisms, version control, blocking of code regions, ...).                    Industry and Competitiveness and by the European Regional
Although several pilot experiences of the use of this system                    Development Fund, with reference TIN2015-66731-C2-2-R.
have been carried out with students of the ESI-CR [20], this
software has not yet been implanted as a tool of habitual use                       The authors would also like to express their gratitude to the
in class, so we are considering to use it in several programming                students who volunteered to participate in this experience.
subjects during the course 2020-2021.
                                                                                                              REFERENCES
                      III. CONCLUSSIONS                                         [1]  MECD. “La Integración del Sistema Universitario Español en el
                                                                                     Espacio Europeo de Educación Superior”, Ministerio de Educación,
    In this article we have described an experience conducted                        Cultura y Deporte, 2003.
with more than a hundred students of the Computer                               [2] R. Olanda, R. Sebastian, J. I. Panach. Aprendizaje colaborativo basado
Engineering Degree of the ESI-CR of the UCLM, whose                                  en tecnologías multimedia. Proceedings of the XX Jornadas de
objective was to know how they had approached the practical                          Enseñanza Universitaria de la Informática (JENUI 2014), 2014.
tasks of group programming during the state of alarm decreed                    [3] UCLM. “Memoria para la solicitud de verificación de títulos oficiales.
in the second quarter of the 2019-2020 academic year.                                Propuesta de título de Graduado en Ingeniería Informática”, 2010.
                                                                                [4] L. Williams, R. R. Kessler. Pair programming illuminated. Addison-
    The results obtained show that, although the students                            Wesley Professional, 2003.
considered interesting the use of synchronous collaborative                     [5] S. Faja. Evaluating effectiveness of pair programming as a teaching tool
programming tools, that is, to apply a CP approach, they                             in programming courses. Information Systems Education Journal,
mostly opted for a DPP model (in which they share the IDE                            12(6), 36, 2014.
with their colleagues, making use of videoconferencing                          [6] L. A. Williams, R. R. Kessler. All I really need to know about pair
applications). The division of programming tasks in different                        programming I learned in kindergarten. Communications of the
                                                                                     ACM, 43(5), 108-114, 2000.
parts of the program or project was the second most used
                                                                                [7] P. Baheti, E. Gehringer, D. Stotts. Exploring the efficacy of distributed
option. Possibly the lack of knowledge of support tools for                          pair programming. In Proceedings of the Conference on Extreme
distributed synchronous programming influenced the choice                            Programming and Agile Methods (pp. 208-220). Springer, Berlin,
of these strategies.                                                                 Heidelberg. 2002.
                                                                                [8] B. J. da Silva Estácio, R. Prikladnicki. Distributed pair programming:
    Our research group has developed several environments                            A systematic literature review. Information and Software
that implement the three programming approaches (PP, DPP                             Technology, 63, 1-10, 2015.
and CP). Outstanding among these systems is COLLECE 2.0,                        [9] C. Bravo, R. Duque, J. Gallardo. A groupware system to support
which we plan to introduce in several programming subjects                           collaborative programming: Design and experiences. Journal of
during the next academic year. This system incorporates many                         Systems and Software, 86(7), 1759-1771, 2013.
of the features considered most useful by the participants in                   [10] A. I. Molina, J. Gallardo, M. A. Redondo, C. Bravo. Assessing the
this study (it is integrated a widely used IDE, such as Eclipse,                     awareness mechanisms of a collaborative programming support
                                                                                     system. Dyna, 82(193), 212-222, 2015.
incorporates a version control system, blocking of code
regions, a very rich set of awareness mechanisms, ...). Even                    [11] F. Jurado, A. I. Molina, M. A. Redondo, M. Ortega. Cole-
                                                                                     programming: Shaping collaborative learning support in eclipse. IEEE
so, some of the features that have also been positively valued                       Revista Iberoamericana de Tecnologías del Aprendizaje, 8(4), 153-
by the students could be added to this system, such as the                           162, 2013.


16 https://blog.uclm.es/grupochico/                                             17 http://blog.uclm.es/grupochico/proyecto-iapro/collece-2-0/
[12] H. Fardoun, M. Yousef, C. González-González, C.A. Collazos. Estudio       [17] K. M. Ying, K. E. Boyer. Understanding Students' Needs for Better
     exploratorio en iberoamérica sobre procesos de enseñanza-aprendizaje           Collaborative Coding Tools. In Extended Abstracts of the 2020 CHI
     y propuesta de evaluación en tiempos de pandemia. Education in the             Conference on Human Factors in Computing Systems (pp. 1-8), April,
     Knowledge Society (EKS), 21, 9, 2020.                                          2020.
[13] A. Skulmowski, G. D. Rey. COVID‐19 as an accelerator for                  [18] Y. Lu, X. Mao, T. Wang, G. Yin, Z. Li. Improving students’
     digitalization at a German university: Establishing hybrid campuses in         programming quality with the continuous inspection process: a social
     times of crisis. Human Behavior and Emerging Technologies, 2020.               coding perspective. Frontiers of Computer Science, 14(5), 1-18, 2020.
[14] AENUI. “Declaración de AENUI sobre retos educativos para el curso         [19] M. Ortega, M. A. Redondo, C. Bravo, A. I. Molina, C. Lacave, Y.
     2020-2021”. http://www.aenui.net/ (Junio, 2020).                               Arroyo,... and D. Fuentes. CHICO 2019 (Computer–Human Interaction
[15] P. Dourish, V. Bellotti. Awareness and coordination in shared                  and Collaboration), UCLM. IE Comunicaciones, 30(30), 2019.
     workspaces. In Proceedings of the 1992 ACM conference on                  [20] C. Lacave, M. A. García, A. I. Molina, S. Sánchez, M. A. Redondo, M.
     Computer-supported cooperative work (pp. 107-114), 1992.                       Ortega. COLLECE-2.0: A real-time collaborative programming system
[16] C. A. Collazos, F. L. Gutiérrez, J. Gallardo, M. Ortega, H. M. Fardoun,        on Eclipse. In Proceedings of the XXI International Symposium on
     A. I. Molina. Descriptive theory of awareness for groupware                    Computers in Education (SIIE 2019) (pp. 1-6). IEEE, 2019.
     development. Journal of Ambient Intelligence and Humanized
     Computing, 10(12), 4789-4818, 2019.