Computer Supported Collaborative Learnin
Computer Supported Collaborative Learnin
A Systematic Review
Ricardo Sol1 a
, Elci Alcione Santos2 b
, Manuel C. Reis3 c
and Lucas Pereira1 d
1
ITI, LARSyS, Polo Cientíco e Tecnológico da Madeira, floor-2, 9020-105 Madeira, Portugal
2Faculty of Exact Sciences and Engineering, University of Madeira, Madeira, Portugal
3Department of Engineering, University of Trás-os-Montes e Alto Douro, Vila Real, Portugal
Abstract: The objective of this paper is to present the current evidence relative to the effectiveness of computer
supported collaborative learning as a pedagogical tool in teaching programming. A systematic literature
review in the IEEE Xplore, Web of Science, and ACM Digital Libraries was performed with studies that
investigated factors affecting the effectiveness of computer supported collaborative learning for students
learning programming and studies that measured the effectiveness of computer supported collaborative
learning for students learning programming. Twelve papers were used in the analysis. The results showed that
the object oriented programming languages are the ones that have been most frequently adopted by educators
who use computer-supported collaborative learning as tools to teach programming, that course critique
surveys and questionnaires are the most frequently reported methods used to assess the effectiveness of
computer-supported collaborative learning interventions, and that the amount of participants who have taken
part in research to evaluate the value of computer-supported collaborative learning in teaching programming
varies notably between studies. Finally, in total, 83.3% of the included papers report that computer supported
collaborative learning is an effective teaching tool and can help programmers in their studies.
a https://orcid.org/0000-0003-4333-7140
b https://orcid.org/0000-0002-1189-4076
c
https://orcid.org/0000-0002-8872-5721
d
https://orcid.org/0000-0002-9110-8775
184
Sol, R., Santos, E., Reis, M. and Pereira, L.
Computer Supported Collaborative Learning for Programming: A Systematic Review.
DOI: 10.5220/0010407001840191
In Proceedings of the 13th International Conference on Computer Supported Education (CSEDU 2021) - Volume 2, pages 184-191
ISBN: 978-989-758-502-9
Copyright c 2021 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved
Computer Supported Collaborative Learning for Programming: A Systematic Review
attitude to planning and applying transformation, a solo programming, because the programmers inserted
strict research outline is needed in order to improve less code anomalies (Estácio et al., 2015).
transformations grounded on meaningful theoretical The results of several studies do not back the
understanding (Bruce and McMahon, 2002). Focused impression that cognitive styles are fixed traits and
upon the ability of learners to consistently execute give more support for the plasticity of cognitive
code are aspects of programming on which educators styles, in those occasions where learners are helped
should assess learners. Also, to emphasize by computer-supported systems (Angeli et al., 2016).
exclusively upon those parts of programming is to An intelligent tutoring is a computer system that
emphasize upon the three inferior stages of the SOLO targets to offer instruction or feedback to students and
taxonomy (Collis & Biggs, 1979): the pre-structural, is more successful than the customary classes,
unistructural, and multi-structural levels. From think- learning is faster and foments better performance on
aloud responses, the researchers found that teachers tests (Reiser et al., 1985).
tended to show a SOLO relational response on minor We hope that this article will make clear which
reading issues, while learners leaned towards claims of computer supported collaborative learning
showing a multi-structural response (Lister et al., are supported by scientific studies. We aim to present
2006). It was found that there are at least two the prevalence of these claims within a systematic
cognitive factors that show themselves as sample. Specifically, the objective of the review is to
opportunities that may make learning of answer five research questions stated in the
programming problematic, being those of learning methodology.
style and of motivation (Jenkins, 2002). The method that has been implemented in this
The results of a survey about programming Systematic Literature Review is described in depth in
concepts presented to 500 learners worldwide Section 2 where the research questions are presented,
confirm that the most difficult concepts to learn are while Section 3 is dedicated to the results of the
the ones that need understanding of greater entities of literature review search. In Section 4, a discussion
the program as opposed to just details. The results takes place in an attempt to answer the five research
also sustained the notions that abstract concepts like questions and in regard to different aspects of the
pointers and memory handling are hard to learn. The literature review. This is followed by a conclusion
results also exposed a set of topics (e.g., language from the literature review in Section 5.
libraries, input and output) that would perhaps need
additional attention, since understand them was not
related to understand the essentials of programming 2 METHODOLOGY
(Lahtinen et al., 2005). An empirical study was
motivated by the idea that diverse people create
diverse outlines of information in any new learning
2.1 Research Questions
process and proven that how each learner deals with
This literature review is influenced by the work of
problems in a singular way is grounded on their
Kitchenham and Charters (2010) that proposed
mental model. The preliminary study implies that
guidelines for performing Systematic Literature
accomplishment in the first phase of an introductory
Reviews in Software Engineering. An initial protocol
programming course is anticipated, by observing
was developed as part of this literature review. The
steadiness in use of mental models that learners apply
primary focus of this literature review is to
to a initial programming problem even earlier than
understand and identify computer-supported systems
they have had any interaction with programming
for collaboratively learning for programming. The
(Dehnadi, 2006).
following research questions were formulated in
Nevertheless, the biggest problem of beginner
order to achieve this goal:
programmers does not seem to be the understanding
1. What computer languages are being taught?
of basic concepts but instead learning to use them.
2. What are the characteristics of the learners being
However, research shows that learners of
taught?
programming operating collaboratively beat solo
3. What types of research studies are performed to
programmers (Nosek, 1998). Over a qualitative and
investigate the computer supported collaborative
quantitative analysis, collaborative practices showed
learning?
encouraging results on fundamental characteristics of
4. What is the number of participants in studies that
learning programming skills, i.e., learning and
are being performed by researchers?
motivation. Indeed, as far as learning is concerned,
the quantitative analysis showed that it outperformed
185
CSEDU 2021 - 13th International Conference on Computer Supported Education
5. Do studies suggest that using computer supported research questions and measure the quality of the
collaborative learning for programming is primary studies. When designing the quality checklist
effective? of the study, the eleven criteria discussed by Dyba
and Dingsøyr were used, (Dyba and Dingsøyr, 2008)
2.2 Search that were based in the Critical Appraisal Program
(Gilb, 2005). The checklist was comprised of eleven
Within the field there are several expressions that general questions to measure the quality of both
relate to programming education, collaborative quantitative and qualitative studies according to the
learning and tutoring systems. It was used a Boolean following ratio scale: Yes = 1 point, Partially = 0,5
search string that included synonyms: point, and No = 0 points. Ranging the resulting total
(“collaborative learning” OR “cooperative quality score for each study between 0 (very poor)
learning”) AND (“intelligent tutor*” OR “adaptive and 11 (very good).
tutor*" OR “cognitive tutor*" OR “smart tutor*”) The eleven criteria used to assess the quality of each
AND programming AND (novice OR beginner OR publication are quoted as follows:
introductory OR teaching OR learning OR CS1 OR 1. Is the paper based on research or is it a ‘lessons
“first time”). learned’ report based on expert opinion?
The systematic sample was retrieved from the 2. Is there a clear statement of the aims of the
IEEE Xplore, Web of Science, and ACM Digital research?
Libraries. Whenever a paper was found suitable, it 3. Is there an adequate description of the context in
was added to the list of papers qualified for the which the research was carried out?
synthesis. Web of Science was the last to be looked 4. Was the research design appropriate in order to
at, and thus it only returned duplicate studies. address the aims of the research?
5. Was the recruitment strategy appropriate with
2.3 Inclusion and Exclusion Criteria regards to the aims of the research?
6. Was there a control group with which to compare?
The inclusion and exclusion criteria were used to 7. Was the data collected in a way that addressed the
guaranty that only significant literature was added to research issue?
the literature review. In order to determine whether 8. Was the data analysis sufficiently rigorous?
articles met the inclusion or exclusion criteria 9. Has the relationship between researcher and
abstracts were read. participants been considered to an adequate
degree?
2.3.1 Inclusion Criteria 10. Is there a clear statement of findings?
11. Is the study of value for research or practice?
1. Publications that have tutoring systems used by
students learning programming collaboratively. The first two of these criteria represent the minimum
2. If papers reported the same study, only the latest quality threshold that was observed during this
was added. literature review. The following nine criteria are
3. Papers were added independently of their date of intended to determine the rigor and credibility of the
publications. research methods employed as well as the relevance
4. Relevant grey literature is accepted. of each paper in relation to the literature review.
186
Computer Supported Collaborative Learning for Programming: A Systematic Review
Programming languages taught by the tutor; were not based on research or presented a “lessons
Did the system(s) include task related to learners learned account “, but offered some description of the
generated program planning or visualizations; context in which the research was carried out. All
Did the system(s) use visualizations or plans as articles clearly stated the aims of the research;
instructional resources? however only one had an adequate relationship
between participants and researchers.
One reviewer extracted all data during the first
More than half of the studies had an adequate
semester of 2020. In order to validate the extraction
recruitment strategy. None of the studies included in
process, a random sample comprising of 20% of the
the literature review was awarded the maximum score
total number of primary studies had their data
of 11, with the highest score awarded being 9.5. The
extracted by a second reviewer. These results were
average quality score of publications included in the
then compared. Whenever the data extracted differed,
literature review was 8.29 with standard deviation of
where differences never surpassed more than 7%,
1.2. The lowest score that articles were awarded was
such differences were discussed until consensus was
1.5. Because the average quality score of the included
reached. The data extraction strategy was deemed to
publications varied, it was decided to maintain all
be appropriate. All extracted data was stored in a
papers due to the small number of publications
spread sheet.
selected. In the following section, we present the
results for the literature review research questions.
187
CSEDU 2021 - 13th International Conference on Computer Supported Education
188
Computer Supported Collaborative Learning for Programming: A Systematic Review
189
CSEDU 2021 - 13th International Conference on Computer Supported Education
investigate. A theme that future researcher could also acquiring programming skills: Findings of a controlled
follow is the study of the advantages of using diverse experiment. In Software Engineering (SBES), 2015
types of programming languages, in order to teach the 29th Brazilian Symposium on (pp. 150-159). IEEE.
participants. A research of this nature may uncover Gilb, T., 2005. Competitive engineering: a handbook for
systems engineering, requirements engineering, and
whether one computer language in particular is the software engineering using Planguage. Elsevier.
most appropriate for use with CSCL tools. Finally, an Gray, W. D., Goldberg, N. C., & Byrnes, S. A., 1993.
analysis of the wider hypothesis of using CSCL as Novices and programming: Merely a difficult subject
programming teaching tools is more effective than (why?) or a means to mastering metacognitive skills?
other non-computer-supported collaborative learning Review of the book Studying the Novice Programmer.
approaches would also be important and could help to Journal of Educational Research on Computers, 9(1),
both enlighten and enhanced future teaching. 131-140.
Kitchenham, B., Pretorius, R., Budgen, D., Brereton, O. P.,
Turner, M., Niazi, M., & Linkman, S., 2010. Systematic
literature reviews in software engineering–a tertiary
ACKNOWLEDGEMENTS study. Information and software technology, 52(8),
792-805.
This research received funding from the Portuguese Jenkins, T., 2002, August. On the difficulty of learning to
Foundation for Science and Technology (FCT) under program. In Proceedings of the 3rd Annual Conference
of the LTSN Centre for Information and Computer
grant LARSyS - UIDB/50009/2020.
Sciences (Vol. 4, No. 2002, pp. 53-58).
Kolb, D., 1985. Leaning Style Inventory. Hay/McBer,
Boston, Ma.
REFERENCES Lister, R., 2000, December. On blooming first year
programming, and its blooming assessment. In
Anderson, L. W., Krathwohl, D. R., Airasian, P. W., Cruik- Proceedings of the Australasian conference on
shank, K. A., Mayer, R. E., Pintrich, P. R., ... & Computing education (pp. 158-162). ACM.
Wittrock, M. C., 2001. A taxonomy for learning, Lister, R., Simon, B., Thompson, E., Whalley, J. L., &
teaching, and assessing: A re-vision of Bloom’s Prasad, C., 2006. Not seeing the forest for the trees:
taxonomy of educational objectives, abridged edition. novice programmers and the SOLO taxonomy. ACM
White Plains, NY: Longman. SIGCSE Bulletin, 38(3), 118-122.
Angeli, C., Valanides, N., Polemitou, E., & Fraggoulidou, Lahtinen, E., Ala-Mutka, K., & Järvinen, H. M., 2005. A
E., 2016. An interaction effect between young study of the difficulties of novice programmers. ACM
children's field dependence-independence and order of SIGCSE Bulletin, 37(3), 14-18.
learning with glass-box and black-box simulations: Nosek, J. T., 1998. The case for collaborative
Evidence for the malleability of cognitive style in programming. Communications of the ACM, 41(3),
computer-supported learning. Computers in Human 105-108.Reiser, B.J., Anderson, J.R. and Farrell, R.G.,
Behavior, 61, 569-583. 1985, August. Dynamic Student Modelling in an
Bruce, C. S., & McMahon, C. A., 2002. Contemporary Intelligent Tutor for LISP Programming. IJCAI (V. 85,
developments in teaching and learning introductory p. 8-14).
programming: Towards a research proposal. Faculty of
Information Technology, QUT Teaching & Learning
Report, (2/2002). APPENDIX
Byrne, P., & Lyons, G., 2001, June. The effect of student
attributes on success in programming. In ACM
SIGCSE Bulletin (Vol. 33, No. 3, pp. 49-52). ACM. • [DING17] Ding, Qing, and Sitan Cao. "RECT: A cloud-
Collis, K. F., & Biggs, J. B., 1979. Classroom Examples of based learning tool for graduate software engineering
Cognitive Development Phenomena: the SOLO practice courses with remote tutor support." IEEE
Taxonomy. Access 5 (2017): 2262-2271.
Dehnadi, S., 2006, September. Testing programming • [DONG17] Dong, Zhijiang, Cen Li, and Roland H.
aptitude. In Proceedings of the 18th Annual Workshop Untch. "Build peer support network for CS2 students."
of the Psychology of Programming Interest Group, pp. In Proc. of the 49th Annual Southeast Regional
22-37). Conference, pp. 42-47. ACM, 2011.
Dybå, T., & Dingsøyr, T., 2008. Empirical studies of agile • [GOLDMAN11] Goldman, Max, Greg Little, and
software development: A systematic review. Robert C. Miller. "Real-time collaborative coding in a
Information and software technology, 50(9-10), 833- web IDE." In Proc. of the 24th annual ACM symp. on
859. User interface software and technology, pp. 155-164.
Estácio, B., Oliveira, R., Marczak, S., Kalinowski, M., ACM, 2011.
Garcia, A., Prikladnicki, R., & Lucena, C., 2015, • [GUO15] Guo, Philip J., Jeffery White, and Renan
September. Evaluating collaborative practices in Zanelatto. "Codechella: Multi-user program
190
Computer Supported Collaborative Learning for Programming: A Systematic Review
191