ABSTRACT
Adaptive programming tasks are a promising approach for personalized learning that adapts to each student’s unique needs and abilities. However, developing effective adaptive programming tasks can be challenging, particularly when it comes to selecting the appropriate changes and adapting the difficulty of the exercise. In this paper, we propose a model for tracking student knowledge and adapting programming exercises to guide the selection and implementation of task features. Our model combines aspects of cognitive load, computational thinking and feature-oriented software product line engineering to identify core and optional features, so that they can be used in conjunction to adapt to the specific needs and abilities of each student. We provide an overview over the insights gained from an exploratory study with students. To support the creation process of feature-based programming tasks, we present an approach using a template-based generator.
- Vincent Aleven, Elizabeth A. McLaughlin, R. Amos Glenn, and Kenneth R. Koedinger.2016. Instruction Based on Adaptive Learning Technologies. Handbook of research on learning and instruction 2 (2016), 522–560.Google Scholar
- Sven Apel, Don Batory, Christian Kästner, and Gunter Saake. 2013. Feature-oriented software product lines. Springer-Verlag, Berlin Heidelberg. https://doi.org/10.1007/978-3-642-37521-7Google ScholarDigital Library
- Brian R. Belland, Krista D. Glazewski, and Jennifer C. Richardson. 2008. A Scaffolding Framework to Support the Construction of Evidence-Based Arguments among Middle School Students. Education Tech Research Dev 56 (2008), 401–422. https://doi.org/10.1007/s11423-007-9074-1Google ScholarCross Ref
- John B. Biggs and Kevin F. Collis. 1982. Evaluating the Quality of Learning: The SOLO Taxonomy (Structure of the Observed Learning Outcome. Academic Press, New York. https://doi.org/10.1016/C2013-0-10375-3Google Scholar
- Dennis Bouvier, Ellie Lovellette, John Matta, Bedour Alshaigy, Brett A. Becker, Michelle Craig, Jana Jackova, Robert McCartney, Kate Sanders, and Mark Zarb. 2016. Novice Programmers and the Problem Description Effect. In Proceedings of the 2016 ITiCSE Working Group Reports. 103–118. https://doi.org/10.1145/3024906.3024912Google ScholarDigital Library
- A. Carbone, J. Hurst, I. Mitchell, and D. Gunstone. 2000. Principles for Designing Programming Exercises to Minimise Poor Learning Behaviours in Students. In Proceedings of the Australasian Conference on Computing Education. 26–33.Google ScholarDigital Library
- Michael E. Caspersen and Jens Bennedsen. 2007. Instructional Design of a Programming Course: A Learning Theoretic Approach. In Proceedings of the Third International Workshop on Computing Education Research. 111–122.Google Scholar
- Imke de Jong and Johan Jeuring. 2020. Computational Thinking Interventions in Higher Education: A Scoping Literature Review of Interventions Used to Teach Computational Thinking. In Koli Calling’20: Proceedings of the 20th Koli Calling International Conference on Computing Education Research. 1–10.Google ScholarDigital Library
- Paul Denny, James Prather, Brett A. Becker, Zachary Albrecht, Dastyni Loksa, and Raymond Pettit. 2019. A Closer Look at Metacognitive Scaffolding: Solving Test Cases before Programming. Proceedings of the 19th Koli Calling International Conference on Computing Education Research (Koli Calling ’19 11 (2019), 1–10. https://doi.org/10.1145/3364510.3366170Google ScholarDigital Library
- Martin Fowler. 2010. Domain-Specific Languages. Pearson Education.Google Scholar
- Julian Fraillon, John Ainley, wolfram Schulz, Daniel Duckworth, and Tim Friedman. 2019. IEA International Computer and Information Literacy Study 2018 Assessment Framework. Springer Nature. 74 pages.Google Scholar
- Ursula Fuller, Colin G. Johnson, Tuukka Ahoniemi, Diana Cukierman, Isidoro Hernán-Losada, Jana Jackova, Essi Lahtinen, Tracy L. Lewis, Donna McGee Thompson, Charles Riedesel, and Errol Thompson. 2007. Developing a Computer Science-Specific Learning Taxonomy. ACM SIGCSE Bulletin 39, 4 (2007), 152–170.Google ScholarDigital Library
- Anabela Gomes and Antonio J. Mendes. 2007. Problem Solving in Programming. In PPIG. 18.Google Scholar
- Mark Guzdial. 2010. Does Contextualized Computing Education Help?ACM Inroads 1, 4 (2010), 4–6.Google Scholar
- Jennifer Hammond. 2001. Scaffolding: Teaching and Learning in Language and Literacy Education. (2001).Google Scholar
- David R. Krathwohl. 2002. A Revision of Bloom’s Taxonomy: An Overview. Theory into practice 41, 4 (2002), 212–218.Google Scholar
- Susanne P. Lajoie. 2005. Extending the Scaffolding Metaphor. Instructional science 33, 5 (2005), 541–557.Google Scholar
- Shu Lin, Na Meng, Dennis Kafura, and Wenxin Li. 2021. PDL: Scaffolding Problem Solving in Programming Courses. In Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V, Vol. 1. 185–191.Google ScholarDigital Library
- Richard Lobb and Jenny Harlow. 2016. Coderunner: A Tool for Assessing Computer Programming Skills. ACM Inroads 7, 1 (2016), 47–51.Google ScholarDigital Library
- Dastyni Loksa, Amy J. Ko, Will Jernigan, Alannah Oleson, Christopher J. Mendez, and Margaret M. Burnett. 2016. Programming, Problem Solving, and Self-Awareness: Effects of Explicit Guidance. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. 1449–1461.Google ScholarDigital Library
- Sofie M. Loyens, Joshua Magda, and Remy M. Rikers. 2008. Self-Directed Learning in Problem-Based Learning and Its Relationships with Self-Regulated Learning. Educational psychology review 20 (2008), 411–427.Google Scholar
- Andrew Luxton-Reilly, Ibrahim Albluwi, Brett A. Becker, Michail Giannakos, Amruth N. Kumar, Linda Ott, James Paterson, Michael J. Scott, Judy Sheard, and Claudia Szabo. 2018. Introductory Programming: A Systematic Literature Review. In Proceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education. 55–106.Google ScholarDigital Library
- Sze Yee Lye and Joyce H. L. Koh. 2014. Review on Teaching and Learning of Computational Thinking through Programming: What Is next for K-12?Computers in Human Behavior 41 (2014), 51–61.Google Scholar
- David M. Merrill. 1994. The Descriptive Component Display Theory. In Instructional Design Theory, David M. Merrill (Ed.). Educational Technology Publications, Englewood Cliffs, NJ, 111–157,.Google Scholar
- David M. Merrill. 1994. The Prescriptive Component Display Theory. In Instructional Design Theory, David M. Merrill (Ed.). Educational Technology Publications, Englewood Cliffs, NJ, 159–176,.Google Scholar
- Vennila Ramalingam, Deborah LaBelle, and Susan Wiedenbeck. 2004. Self-Efficacy and Mental Models in Learning to Program. In Proceedings of the 9th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education. 171–175.Google ScholarDigital Library
- Anthony Robins, Janet Rountree, and Nathan Rountree. 2003. Learning and Teaching Programming: A Review and Discussion. Computer Science Education 13, 2 (2003), 137–172. https://doi.org/10.1076/csed.13.2.137.14200Google ScholarCross Ref
- Bruce Sherin, Brian J. Reiser, and Daniel Edelson. 2004. Scaffolding Analysis: Extending the Scaffolding Metaphor to Learning Artifacts. Journal of the Learning Sciences 13, 3 (2004), 387–421,. https://doi.org/10.1207/s15327809jls1303_5Google ScholarCross Ref
- Valerie J. Shute, Chen Sun, and Jodi Asbell-Clarke. 2017. Demystifying Computational Thinking. 22 (2017), 142–158. https://doi.org/10.1016/j.edurev.2017.Google Scholar
- Elliot Soloway. 1986. Learning to program= learning to construct mechanisms and explanations. Commun. ACM 29, 9 (1986), 850–858.Google ScholarDigital Library
- John Sweller. 2010. Element Interactivity and Intrinsic, Extraneous, and Germane Cognitive Load. Educational Psychology Review 22, 2 (2010), 123–138.Google ScholarCross Ref
- John Sweller, Jeroen J. Merrienboer, and Fred G. Paas. 1998. Cognitive Architecture and Instructional Design. Educational psychology review 10, 3 (1998), 251–296.Google Scholar
- John Sweller, Jeroen J. Merrienboer, and Fred G. Paas. 2019. Cognitive Architecture and Instructional Design: 20 Years Later. Educational Psychology Review 31, 2 (2019), 261–292.Google ScholarCross Ref
- Janneke van de Pol, Monique Volman, and Jos Beishuizen. 2010. Scaffolding in Teacher–Student Interaction: A Decade of Research. Educational psychology review 22, 3 (2010), 271–296.Google Scholar
- Jeannette M. Wing. 2006. Computational Thinking. Communications of The Acm 49 (2006), 33–35. https://doi.org/10.1145/1118178.1118215Google ScholarDigital Library
- Benjamin Xie, Dastyni Loksa, Greg L. Nelson, Matthew J. Davidson, Dongsheng Dong, Harrison Kwik, Alx H. Tan, Leanne Hwa, Min Li, and Amy J. Ko. 2019. A Theory of Instruction for Introductory Programming Skills. Computer Science Education 29, 2-3 (2019), 205–253.Google ScholarCross Ref
- Benjamin Xie, Greg L. Nelson, Harshita Akkaraju, william Kwok, and Amy J. Ko. 2020. The Effect of Informing Agency in Self-Directed Online Learning Environments. In Proceedings of the Seventh ACM Conference on Learning@ Scale. 77–89.Google ScholarDigital Library
Index Terms
- Towards a feature-based didactic framework for generating individualized programming tasks for an e-learning environment
Recommendations
Personalizing the Interaction in a Web-based Educational Hypermedia System: the case of INSPIRE
In this paper we present an Adaptive Educational Hypermedia prototype, named INSPIRE. The approach employed in INSPIRE emphasizes the fact that learners perceive and process information in very different ways, and integrates ideas from theories of ...
Individualized exercises for self-assessment of programming knowledge: An evaluation of QuizPACK
Individualized exercises are a promising feature in promoting modern e-learning. The focus of this article is on the QuizPACK system, which is able to generate parameterized exercises for the C language and automatically evaluate the correctness of ...
Towards a Conceptual Framework of GBL Design for Engagement and Learning of Curriculum-based Content
This paper aims to show best practices of GBL design for engagement. It intends to show how teachers can implement GBL in a collaborative, comprehensive and systematic way, in the classrooms, and probably outside the classrooms, based on empirical ...
Comments