Article 2022

Collaborative Programming for Work-Relevant Learning: Comparing Programming Practice With Example-Based Reflection for Student Learning and Transfer Task Performance

IEEE Transactions on Learning Technologies
Journal · Vol. 15 · Issue 5 · pp. 594-604
Abstract

Computer science pedagogy, especially in the higher education and vocational training context, has long-favored the hands-on practice provided by programming tasks due to the belief that this leads to better performance on hands-on tasks at work. This assumption, however, has not been experimentally tested against other modes of engagement such as worked example-based reflection. While theory suggests that example-based reflection could be better for conceptual learning, the concern is that the lack of practice will leave students unable to implement the learned concepts in practice, thus leaving them unprepared for work. In this article, therefore, we experimentally contrast programming practice with example-based reflection to observe their differential impact on conceptual learning and performance on a hands-on task in the context of a collaborative programming project. The industry paradigm of Mob Programming, adapted for use in an online and instructional context, is used to structure the collaboration. Keeping with the prevailing view held in pedagogy, we hypothesize that example-based reflection will lead to better conceptual learning but will be detrimental to hands-on task performance. Results support that reflection leads to conceptual learning. Additionally, however, reflection does not pose an impediment to hands-on task performance. We discuss possible explanations for this effect, thus providing an improved understanding of prior theory in this new computer science education context. We also discuss implications for the pedagogy of software engineering education, in light of this new evidence, that impacts student learning as well as work performance in the future. © 2008-2011 IEEE.

Keywords

Author Keywords

Project-Based Learning Computer Science education Computer-Supported Collaborative Learning Collaborative learning tools collaborative programming conversational agent-based support ensemble programming Mob Programming worked examples

Index Keywords

Teaching Engineering education Education computing Students Project based learning Problem solving Problem-solving Computer programming software Computer Science Education Job analysis Task analysis Collaboration Computer Supported Collaborative Learning Programming profession Conversational agents Software agents Agent based Collaborative learning tools Collaborative programming Conversational agent-based support Ensemble programming Mob programming Worked examples
Author Affiliations
Language Technologies Institute and Human-Computer Interaction Institute, Carnegie Mellon University, Pittsburgh, PA, United States
School of Computer Science, Pittsburgh, PA, United States, Amazon.com, Inc., Seattle, WA, United States
School of Computer Science, Pittsburgh, PA, United States
Funding & Acknowledgements
National Science Foundation, NSF
Grant: IIS 1822831, IIS 1917955
This work was supported in part by the U.S. National Science Foundation under Grants IIS 1822831 and IIS 1917955, and in part by Microsoft.
National Science Foundation, NSF
This work was supported in part by the U.S. National Science Foundation under Grants IIS 1822831 and IIS 1917955, and in part by Microsoft.
Microsoft
This work was supported in part by the U.S. National Science Foundation under Grants IIS 1822831 and IIS 1917955, and in part by Microsoft.
References 10 References
1 Renkl, Alexander R., Toward an instructionally oriented theory of example-based learning, Cognitive Science, 38, 1, pp. 1-37, (2014)
2 Renkl, Alexander R., Learning from worked-out examples: A study on individual differences, Cognitive Science, 21, 1, pp. 1-29, (1997)
3 Margulieux, Lauren Elizabeth, Design and pilot testing of subgoal labeled worked examples for five core concepts in CS1, Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE, pp. 548-554, (2019)
4 Dafoulas, Georgios A., Global teams: Futuristic models of collaborative work for today's software development industry, Proceedings of the 42nd Annual Hawaii International Conference on System Sciences, HICSS, (2009)
5 Sankaranarayanan, Sreecharan, Combining Collaborative Reflection based on Worked-Out Examples with Problem-Solving Practice: Designing Collaborative Programming Projects for Learning at Scale, L@S 2021 - Proceedings of the 8th ACM Conference on Learning @ Scale, pp. 255-258, (2021)
6 Sankaranarayanan, Sreecharan, Designing for learning during collaborative projects online: tools and takeaways, Information and Learning Science, 121, 7-8, pp. 569-577, (2020)
7 Proceedings of the 50th ACM Technical Symposium on Computer Science Education, (2019)
8 Proceedings of the 50th ACM Technical Symposium on Computer Science Education, (2019)
9 Davies, Stephen, A snapshot of current practices in teaching the introductory programming sequence, SIGCSE'11 - Proceedings of the 42nd ACM Technical Symposium on Computer Science Education, pp. 625-630, (2011)
10 Soloway, Elliot M., Learning to program = learning to construct mechanisms and explanations, Communications of the ACM, 29, 9, pp. 850-858, (1986)
Quick Actions
Full Text via DOI
Citation Metrics
14
Times Cited (Scopus)

References 10
Document Identifiers