A problem posing-based practicing strategy for facilitating students’ computer programming skills in the team-based learning mode

Computer programming is a subject that requires problem-solving strategies and involves a great number of programming logic activities which pose challenges for learners. Therefore, providing learning support and guidance is important. Collaborative learning is widely believed to be an effective teaching approach; it can enhance learners’ social interaction and offer a learning environment which provides rich learning experiences. However, the social interaction in collaborative learning does not occur automatically. Without proper guidance strategies or supporting tools for collaborative learning, the learning effects can be disappointing. To solve such a problem, a problem posing-based practicing strategy was proposed to support the development of a collaborative learning activity in a computer programming practice course. The students were guided to raise computer programming problems to boost the discussion among team members. The problems raised in each team were then exchanged and solved by another team to examine the coding and to provide feedback. To investigate the effectiveness of the proposed approach, an experiment was conducted in a C# programming course. Two classes of students from a university participated in the experiment. One class with 25 students was randomly assigned as the experimental group, and learned with a collaborative learning activity using the problem posing-based practicing strategy; the other class with 28 students was the control group, which learned with a conventional collaborative learning activity. The results show that the proposed strategy benefited the students in terms of improving their learning achievement, in particular, their programming skills. Moreover, it was found that the students who learned with the proposed approach had higher self-efficacy and lower cognitive load than those who learned with the conventional collaborative learning approach.

[1]  R. Mayer Cognitive, metacognitive, and motivational aspects of problem solving , 1998 .

[2]  Nazir S. Hawi,et al.  Causal attributions of success and failure made by undergraduate students in an introductory-level computer programming course , 2010, Comput. Educ..

[3]  Michael Fagan Design and Code Inspections to Reduce Errors in Program Development , 1976, IBM Syst. J..

[4]  Carlos Costa,et al.  Learning computer programming: study of difficulties in learning programming , 2013, ISDOC.

[5]  Marjan Laal,et al.  What do we Achieve from Learning in Collaboration , 2013 .

[6]  F. Paas Training strategies for attaining transfer of problem-solving skill in statistics: A cognitive-load approach. , 1992 .

[7]  M. David Merrill,et al.  Constructivism and Instructional Design , 1991 .

[8]  Murat Uysal,et al.  Improving First Computer Programming Experiences: The Case of Adapting a Web-Supported and Well-Structured Problem- Solving Method to a Traditional Course , 2014 .

[9]  Roberta Evans Sabin,et al.  Collaborative learning in an introductory computer science course , 1994, SIGCSE '94.

[10]  David H. Jonassen,et al.  Toward a design theory of problem solving , 2000 .

[11]  Crescencio Bravo,et al.  Integrating Educational Tools for Collaborative Computer Programming Learning , 2005, J. Univers. Comput. Sci..

[12]  David Preston,et al.  PAIR programming as a model of collaborative learning: a review of the research , 2005 .

[13]  Neil Gordon,et al.  Inquiry based Learning in Computer Science teaching in Higher Education , 2008 .

[14]  Edward A. Silver,et al.  Problem-posing research in mathematics education: looking back, looking around, and looking ahead , 2013 .

[15]  Evangelia Gouli,et al.  Problem solving by 5-6 years old kindergarten children in a computer programming environment: A case study , 2013, Comput. Educ..

[16]  Shuk-kwan S. Leung Teachers implementing mathematical problem posing in the classroom: challenges and strategies , 2013 .

[17]  Siwanit Auttawutikul,et al.  Use of weblogs to enhance group learning and design creativity amongst students at a Thai University , 2014 .

[18]  Astrid Wichmann,et al.  Improving revision in wiki-based writing: Coordination pays off , 2013, Comput. Educ..

[19]  Harold Abelson,et al.  Boxer: a reconstructible computational medium , 1986, CACM.

[20]  F. Paas,et al.  Cognitive Architecture and Instructional Design , 1998 .

[21]  Pieter J. Blignaut,et al.  The influence of temperament style on a student's choice of and performance in a computer programming course , 2008, Comput. Hum. Behav..

[22]  Gwo-Jen Hwang,et al.  Development of a mobile learning system based on a collaborative problem-posing strategy , 2016, Interact. Learn. Environ..

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

[24]  I. Lavy,et al.  Problem posing via “what if not?” strategy in solid geometry — a case study , 2003 .

[25]  Paulo Martins,et al.  Improving teaching and learning of computer programming through the use of the Second Life virtual world , 2011, Br. J. Educ. Technol..

[26]  M. Zago,et al.  Problem-posing in education: transformation of the practice of the health professional. , 1998, Patient education and counseling.

[27]  I. T. Chan Mow,et al.  Issues and Difficulties in Teaching Novice Computer Programming , 2008, Innovative Techniques in Instruction Technology, E-learning, E-assessment, and Education.

[28]  Stefan Van Aelst,et al.  Robust estimation of Cronbach's alpha , 2006 .

[29]  Jesús Gallardo,et al.  A groupware system to support collaborative programming: Design and experiences , 2013, J. Syst. Softw..

[30]  Mika Mäntylä,et al.  What Types of Defects Are Really Discovered in Code Reviews? , 2009, IEEE Transactions on Software Engineering.

[31]  Chuen-Tsai Sun,et al.  Beyond Sharing: Engaging Students in Cooperative and Competitive Active Learning , 2008, J. Educ. Technol. Soc..

[32]  Gwo-Jen Hwang,et al.  Effects of an integrated mind-mapping and problem-posing approach on students' in-field mobile learning performance in a natural science course , 2014, Int. J. Mob. Learn. Organisation.

[33]  Thomas A. Brush,et al.  Embedding cooperative learning into the design of integrated learning systems: Rationale and guidelines , 1998 .

[34]  S. Engel,et al.  Thought and Language , 1964, Dialogue.

[35]  Karen L. Murphy,et al.  Constructivism and collaboration on the Internet: case study of a graduate class experience , 1995 .

[36]  Kathryn H. Au,et al.  Social Constructivism and the School Literacy Learning of Students of Diverse Backgrounds , 1998 .

[37]  Victor C. S. Lee,et al.  Learning motivation in e-learning facilitated computer programming courses , 2010, Comput. Educ..

[38]  J. Ángel Velázquez-Iturbide,et al.  An evaluation of students' motivation in computer-supported collaborative learning of programming concepts , 2014, Comput. Hum. Behav..

[39]  Yan Ding,et al.  Curriculum Reform of C Language Programming and Cultivation of Computational Thinking , 2014 .

[40]  Gwo-Jen Hwang,et al.  A collaborative game-based learning approach to improving students' learning performance in science courses , 2013, Comput. Educ..

[41]  Filiz Kalelioglu,et al.  The Effects of Teaching Programming via Scratch on Problem Solving Skills: A Discussion from Learners' Perspective , 2014, Informatics Educ..

[42]  Xiaohong Su,et al.  Ability-training-oriented automated assessment in introductory programming course , 2011, Comput. Educ..

[43]  Pavlo D. Antonenko,et al.  The influence of leads on cognitive load and learning in a hypertext environment , 2010, Comput. Hum. Behav..

[44]  Ruey-Shiang Shaw,et al.  A study of the relationships among learning styles, participation types, and performance in programming language learning supported by online forums , 2012, Comput. Educ..

[45]  Klaas Sijtsma,et al.  On the Use, the Misuse, and the Very Limited Usefulness of Cronbach’s Alpha , 2008, Psychometrika.

[46]  Gwo-Jen Hwang,et al.  A Two-Tier Test-based Approach to Improving Students' Computer-Programming Skills in a Web-Based Learning Environment , 2015, J. Educ. Technol. Soc..

[47]  Said Hadjerrouit,et al.  Towards a Blended Learning Model for Teaching and Learning Computer Programming: A Case Study , 2008, Informatics Educ..

[48]  Elif Esra Arikan,et al.  An Investigation of Eighth Grade Students' Problem Posing Skills (Turkey Sample). , 2014 .

[49]  Joanne W. Y. Chung,et al.  Enhancement of self-efficacy and interest in learning English of undergraduate students with low English proficiency through a collaborative learning programme , 2015 .

[50]  Elliot Soloway,et al.  Should we teach students to program? , 1993, CACM.

[51]  Ruven E. Brooks,et al.  Towards a Theory of the Comprehension of Computer Programs , 1983, Int. J. Man Mach. Stud..

[52]  J. Sweller Element Interactivity and Intrinsic, Extraneous, and Germane Cognitive Load , 2010 .

[53]  Shu-Ling Wang,et al.  The effects of group composition of self-efficacy and collective efficacy on computer-supported collaborative learning , 2007, Comput. Hum. Behav..

[54]  Amy Soller,et al.  Supporting Social Interaction in an Intelligent Collaborative Learning System , 2001 .

[55]  Marjan Laal,et al.  Benefits of collaborative learning , 2012 .

[56]  Janine Rogalski,et al.  Acquisition of Programming Knowledge and Skills , 1990 .

[57]  Mark Guzdial,et al.  Collaborative learning at low cost: CoWeb use in English composition , 2002, CSCL.

[58]  J. Sweller COGNITIVE LOAD THEORY, LEARNING DIFFICULTY, AND INSTRUCTIONAL DESIGN , 1994 .

[59]  Angela T. Barlow,et al.  The Impact of Problem Posing on Elementary Teachers' Beliefs About Mathematics and Mathematics Teaching , 2006 .

[60]  Florence Mihaela Singer,et al.  A problem-solving conceptual framework and its implications in designing problem-posing tasks , 2013 .

[61]  Leon E. Winslow,et al.  Programming pedagogy—a psychological overview , 1996, SGCS.

[62]  Eric Zhi-Feng Liu,et al.  Web-based peer review: the learner as both adapter and reviewer , 2001, IEEE Trans. Educ..

[63]  Carlos De Backer,et al.  The design and pilot evaluation of an interactive learning environment for introductory programming influenced by cognitive load theory and constructivism , 2013, Comput. Educ..

[64]  Gwo-Jen Hwang,et al.  An interactive peer-assessment criteria development approach to improving students' art design performance using handheld devices , 2015, Comput. Educ..

[65]  Bassey Isong,et al.  A Methodology for Teaching Computer Programming: first year students’ perspective , 2014 .

[66]  Gwo-Jen Hwang,et al.  A concept map-embedded educational computer game for improving students' learning performance in natural science courses , 2013, Comput. Educ..

[67]  Ying Liu,et al.  Assessment of programming language learning based on peer code review model: Implementation and experience report , 2012, Comput. Educ..

[68]  Alison E. Kay,et al.  Student-Generated Content: Enhancing learning through sharing multiple-choice questions , 2014 .

[69]  Seymour Papert,et al.  Mindstorms: Children, Computers, and Powerful Ideas , 1981 .