Using a visualisation-based and progressive learning environment as a cognitive tool for learning computer programming

Project-based learning (PjBL) has been widely promoted in educational practice, for example, computer programming education. While PiBL may help learners to connect abstract knowledge with authentic practice, the complexity of completing an authentic project may overwhelm learners, making them unable to achieve the desired learning outcomes. This study proposes a visualisation-based and progressive learning environment as a cognitive tool to support PjBL of programming. The cognitive tool is designed to externalise the complex process of completing a realistic programming project. It aims to scaffold the complex project process, foster effective thinking and reflection, and allow the teacher to track and give feedback on individual performance throughout the project process. Moreover, simple-to-complex sequencing of whole-task projects is incorporated into the cognitive tool to support progressive learning with authentic projects. Senior college students participated in this study by completing a project-based programming learning module using the proposed cognitive tool. The results showed that after incorporating the simple-to-complex approach, the visualisation-based cognitive tool is more effective in improving students’ programming performance and better perceived by students in terms of its support for scaffolding and articulating the complex project process.

[1]  Paul A. Kirschner,et al.  Ten Steps to Complex Learning: A Systematic Approach to Four-Component Instructional Design , 2007 .

[2]  Michael Kölling,et al.  The BlueJ System and its Pedagogy , 2003, Comput. Sci. Educ..

[3]  Minhong Wang,et al.  Visualizing the Complex Process for Deep Learning with an Authentic Programming Project , 2017, J. Educ. Technol. Soc..

[4]  Hugh C. Davis,et al.  AnnAnn and AnnAnn.Net: Tools for Teaching Programming , 2007, J. Comput..

[5]  David H. Jonassen,et al.  Computers in the Classroom: Mindtools for Critical Thinking , 1995 .

[6]  J. V. van Merriënboer,et al.  4C/ID in medical education: How to design an educational program based on whole-task learning: AMEE Guide No. 93 , 2015, Medical teacher.

[7]  Bei Yuan,et al.  Reflective learning with complex problems in a visualization-based learning environment with expert support , 2018, Comput. Hum. Behav..

[8]  Irene M Tjiam,et al.  Designing simulator-based training: An approach integrating cognitive task analysis and four-component instructional design , 2012, Medical teacher.

[9]  D. Suthers,et al.  “Mapping to know”: The effects of representational guidance and reflective assessment on scientific inquiry , 2002 .

[10]  Hannie Gijlers,et al.  Using Concept Maps to Facilitate Collaborative Simulation-Based Inquiry Learning , 2013 .

[11]  L. Helle,et al.  Project-Based Learning in Post-Secondary Education – Theory, Practice and Rubber Sling Shots , 2006 .

[12]  Minhong Wang,et al.  Integrating problem solving and knowledge construction through dual mapping , 2012 .

[13]  Edward R. Sykes,et al.  Determining the Effectiveness of the 3D Alice Programming Environment at the Computer Science I Level , 2007 .

[14]  Minhong Wang,et al.  The use of web-based collaborative concept mapping to support group learning and interaction in an online environment , 2017, Internet High. Educ..

[15]  Brian R. Belland,et al.  Synthesizing Results From Empirical Research on Computer-Based Scaffolding in STEM Education , 2016, Review of educational research.

[16]  C. Hmelo‐Silver,et al.  Scaffolding and Achievement in Problem-Based and Inquiry Learning: A Response to Kirschner, Sweller, and Clark (2006) , 2007 .

[17]  David H. Jonassen,et al.  Computers as mindtools for engaging learners in critical thinking , 1998 .

[18]  Pm Jenkinson,et al.  Cognitive , 2020, Definitions.

[19]  M. Jollands,et al.  Project-based learning as a contributing factor to graduates’ work readiness , 2012 .

[20]  P. Tynjälä Perspectives into learning at the workplace , 2008 .

[21]  Yvonne Rogers,et al.  External cognition: how do graphical representations work? , 1996, Int. J. Hum. Comput. Stud..

[22]  Youssef Bassil,et al.  A Simulation Model for the Waterfall Software Development Life Cycle , 2012, ArXiv.

[23]  S. R. Hiltz,et al.  Cognitive Assessment of Students' Problem Solving and Program Development Skills , 1999 .

[24]  Lauri Malmi,et al.  A Review of Generic Program Visualization Systems for Introductory Programming Education , 2013, TOCE.

[25]  J. Michael Spector,et al.  Integrated and Holistic Perspectives on Learning, Instruction and Technology , 2000 .

[26]  Rainer Koschke,et al.  Journal of Software Maintenance and Evolution: Research and Practice Software Visualization in Software Maintenance, Reverse Engineering, and Re-engineering: a Research Survey , 2022 .

[27]  Richard E. Clark,et al.  Why Minimal Guidance During Instruction Does Not Work: An Analysis of the Failure of Constructivist, Discovery, Problem-Based, Experiential, and Inquiry-Based Teaching , 2006 .

[28]  Tapio Salakoski,et al.  Effectiveness of Program Visualization: A Case Study with the ViLLE Tool , 2008, J. Inf. Technol. Educ. Innov. Pract..

[29]  Janet Rountree,et al.  Learning and Teaching Programming: A Review and Discussion , 2003, Comput. Sci. Educ..

[30]  Elliot Soloway,et al.  Learning to program = learning to construct mechanisms and explanations , 1986, CACM.

[31]  Brian J. Reiser,et al.  Scaffolding Complex Learning: The Mechanisms of Structuring and Problematizing Student Work , 2004, The Journal of the Learning Sciences.

[32]  Jeroen Janssen,et al.  Successfully carrying out complex learning-tasks through guiding teams’ qualitative and quantitative reasoning , 2011, Instructional Science.

[33]  Jeroen J. G. van Merriënboer,et al.  Strategies for computer-based programming instruction: Program completion vs. program generation. , 1992 .

[34]  Mercedes Gómez-Albarrán,et al.  The Teaching and Learning of Programming: A Survey of Supporting Software Tools , 2005, Comput. J..

[35]  Annemarie S. Palincsar,et al.  Motivating Project-Based Learning: Sustaining the Doing, Supporting the Learning , 1991 .

[36]  Chris Dede,et al.  Using a three‐dimensional thinking graph to support inquiry learning , 2018 .

[37]  Fadi P. Deek,et al.  An Empirical Evaluation of Specification Oriented Language in Visual Environment for Instruction Translation (SOLVEIT): A Problem-Solving and Program Development Environment , 2002 .

[38]  Susan M. Land,et al.  Scaffolding students’ problem-solving processes in an ill-structured task using question prompts and peer interactions , 2003 .

[39]  Robert Pucher,et al.  Project Based Learning in Computer Science – A Review of More than 500 Projects , 2011 .

[40]  Daniel D. Suthers,et al.  Beyond threaded discussion: Representational guidance in asynchronous collaborative learning environments , 2008, Comput. Educ..

[41]  Diana H J M Dolmans,et al.  The development of an instrument for evaluating clinical teachers: involving stakeholders to determine content validity , 2008, Medical teacher.

[42]  Jeroen J. G. van Merriënboer,et al.  Strategies for Programming Instruction in High School: Program Completion vs. Program Generation , 1990 .

[43]  J. Sweller,et al.  Cognitive Load Theory and Complex Learning: Recent Developments and Future Directions , 2005 .

[44]  Minhong Wang,et al.  Guest Editorial: Fostering Deep Learning in Problem-Solving Contexts with the Support of Technology , 2017, J. Educ. Technol. Soc..

[45]  Diana H J M Dolmans,et al.  The Maastricht Clinical Teaching Questionnaire (MCTQ) as a Valid and Reliable Instrument for the Evaluation of Clinical Teachers , 2010, Academic medicine : journal of the Association of American Medical Colleges.

[46]  Jeroen J. G. van Merriënboer,et al.  Designing a Blended Course in Android App Development using 4C/ID , 2018, Koli Calling.

[47]  J. Michael Spector,et al.  Using cognitive mapping to foster deeper learning with complex problems in a computer-based environment , 2018, Comput. Hum. Behav..