Aligning and Assessing Teaching Approaches With SOLO Taxonomy in a Computer Programming Course

A teaching approach plays an important role in teaching and learning process of an introductory programming (IP) course. The teaching approach should focus on different programming skills required by novice programmers. This study introduced the teaching and learning approach based on an ADRI (approach, deployment, result, improvement) approach in the IP course which focuses on both programming knowledge (syntax and semantics) and problem-solving strategies. The authors compared the teaching and learning approach of the IP course with the five levels of SOLO taxonomy. This paper assessed the students’ performance by using different assessment tasks based on the four stages of the ADRI approach. Results show that the current teaching and learning approach of the IP course addressed all the five levels of SOLO taxonomy. The students’ performance in the approach and result stages (82%) are good, and the performance in the improvement (71%) and deployment (69%) stages are satisfactory. Overall, the ADRI approach provides positive impact on the teaching and learning process of the IP course.

[1]  John R. Anderson,et al.  Learning Flow of Control: Recursive and Iterative Procedures , 1986, Hum. Comput. Interact..

[2]  Sohail Iqbal,et al.  A Self Review and External Review Model for Teaching and Assessing Novice Programmers , 2013 .

[3]  Sohail Iqbal Malik,et al.  Teaching Problem Solving Skills using an Educational Game in a Computer Programming Course , 2019, Informatics Educ..

[4]  Sohail Iqbal Malik,et al.  PROBSOL: A Web-Based Application to Develop Problem-Solving Skills in Introductory Programming , 2019 .

[5]  S Mohamed Shuhidan,et al.  Probing the minds of novice programmers through guided learning , 2012 .

[6]  Mohanaad Shakir,et al.  A Systematic Review of Personalized Learning: Comparison between E-Learning and Learning by Coursework Program in Oman , 2019, Int. J. Emerg. Technol. Learn..

[7]  Jo Coldwell-Neilson,et al.  Impact of a New Teaching and Learning Approach in an Introductory Programming Course , 2017 .

[8]  Anabela Gomes,et al.  A teacher's view about introductory programming teaching and learning: Difficulties, strategies and motivations , 2014, 2014 IEEE Frontiers in Education Conference (FIE) Proceedings.

[9]  David Perkins,et al.  Fragile knowledge and neglected strategies in novice programmers , 1985 .

[10]  Simon P. Davies,et al.  Models and Theories of Programming Strategy , 1993, Int. J. Man Mach. Stud..

[11]  Mohanaad Shakir,et al.  Promoting Algorithmic Thinking in an Introductory Programming Course , 2019, Int. J. Emerg. Technol. Learn..

[12]  Sohail Iqbal Malik,et al.  A model for teaching an introductory programming course using ADRI , 2017, Education and Information Technologies.

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

[14]  Sohail Iqbal Malik Assessing the Teaching and Learning Process of an Introductory Programming Course With Bloom's Taxonomy and Assurance of Learning (AOL) , 2019, Int. J. Inf. Commun. Technol. Educ..

[15]  Angela Carbone,et al.  An exploration of internal factors influencing student learning of programming , 2009, ACE '09.

[16]  Frederick W. B. Li,et al.  Failure rates in introductory programming revisited , 2014, ITiCSE '14.

[17]  Sohail Iqbal Malik,et al.  Gender differences in an introductory programming course: New teaching approach, students’ learning outcomes, and perceptions , 2018, Education and Information Technologies.

[18]  Robert S. Rist Knowledge Creation and Retrieval in Program Design: A Comparison of Novice and intermediate Student Programmers , 1991, Hum. Comput. Interact..

[19]  László Zsakó,et al.  ICT teaching methods - Programming languages , 2008 .

[20]  Sohail Iqbal Malik,et al.  Learning problem solving skills: Comparison of E-learning and M-learning in an introductory programming course , 2019, Education and Information Technologies.

[21]  Daniel D. Garcia,et al.  "But it looks right!": the bugs students don't see , 2004, SIGCSE.

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

[23]  Brendan Tangney,et al.  Smartphones, Studio-Based Learning, and Scaffolding: Helping Novices Learn to Program , 2015, TOCE.

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

[25]  Sohail Iqbal Malik,et al.  Role of ADRI model in teaching and assessing novice programmers , 2016 .

[26]  Raymond Lister,et al.  Early relational reasoning and the novice programmer: swapping as the hello world of relational reasoning , 2011, ACE 2011.

[27]  Angela Carbone,et al.  Reliably classifying novice programmer exam responses using the SOLO taxonomy , 2008 .

[28]  Lynda Thomas,et al.  Scaffolding with object diagrams in first year programming classes: some unexpected results , 2004, SIGCSE '04.

[29]  H. Chad Lane,et al.  Teaching the tacit knowledge of programming to noviceswith natural language tutoring , 2005, Comput. Sci. Educ..

[30]  Sohail Iqbal Malik Enhancing practice and achievement in introductory programming using an ADRI editor , 2016, 2016 IEEE International Conference on Teaching, Assessment, and Learning for Engineering (TALE).

[31]  Daniel Zingaro Examining Interest and Grades in Computer Science 1: A Study of Pedagogy and Achievement Goals , 2015, TOCE.

[32]  Kevin F. Collis,et al.  Evaluating the Quality of Learning: The SOLO Taxonomy , 1977 .

[33]  Margaret Hamilton,et al.  A taxonomic study of novice programming summative assessment , 2009, ACE '09.

[34]  Ursula Fuller,et al.  Developing a computer science-specific learning taxonomy , 2007, ITiCSE-WGR '07.

[35]  Michael de Raadt Teaching programming strategies explicitly to novice programmers , 2008 .

[36]  M.P. Bruce-Lockhart,et al.  Lifting the hood of the computer: program animation with the Teaching Machine , 2000, 2000 Canadian Conference on Electrical and Computer Engineering. Conference Proceedings. Navigating to a New Era (Cat. No.00TH8492).

[37]  Raymond Lister,et al.  Not seeing the forest for the trees: novice programmers and the SOLO taxonomy , 2006, ITICSE '06.

[38]  Hubert L. Dreyfus,et al.  Mind over Machine: The Power of Human Intuition and Expertise in the Era of the Computer , 1987, IEEE Expert.

[39]  Kathi Fisler,et al.  Designing a multi-faceted SOLO taxonomy to track program design skills through an entire course , 2017, Koli Calling.