Validation of the Components and Elements of Computational Thinking for Teaching and Learning Programming using the Fuzzy Delphi Method

Computational Thinking is a phrase employed to explain the developing concentration on students' knowledge development regarding designing computational clarifications to problems, algorithmic Thinking, and coding. The difficulty of learning computer programming is a challenge for students and teachers. Students' ability in programming is closely related to their problem-solving skills and their cognitive abilities. Even though computational thinking is a problem-solving skill in the 21st century, its use for programming needs to be planned systematically taken into account the appropriate components and elements. Therefore, this study aims to validate the main components and elements of computational thinking for solving problems in programming. At the beginning of the study, researchers conducted a literature review to determine the components and the elements of computational thinking that could be used in teaching and learning programming. This validation involved the consensus of a group of experts using the Fuzzy Delphi method. The data were analysed using the Fuzzy Delphi technique, where the experts individually evaluated the components and elements agreed upon prior discussion. A group of experts consisting of 15 people validated 14 components and 35 elements. The results showed that all components and elements reached a threshold (d) value of less than 0.2, a percentage of agreement exceeded 75%, and the Fuzzy score (A) exceeded 0.5. The finding indicates that the main components and elements of the proposed computational thinking are suitable for problem-solving approaches in programming.

[1]  Mary Webb,et al.  A K-6 Computational Thinking Curriculum Framework: Implications for Teacher Knowledge , 2016, J. Educ. Technol. Soc..

[2]  Vilém Novák,et al.  Fuzzy Set , 2009, Encyclopedia of Database Systems.

[3]  Marcos Romn-Gonzlez,et al.  Which cognitive abilities underlie computational thinking? Criterion validity of the Computational Thinking Test , 2017, Comput. Hum. Behav..

[4]  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.

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

[6]  Fatih Kursat Cansu,et al.  An Overview of Computational Thinking , 2019, Int. J. Comput. Sci. Educ. Sch..

[7]  Athanasios Drigas,et al.  Online and other ICT-based Training Tools for Problem-solving Skills , 2016, Int. J. Emerg. Technol. Learn..

[8]  Georgios Dounias,et al.  The Evaluation of Information Technology Projects: a Fuzzy Multicriteria Decision-making Approach , 2006, Int. J. Inf. Technol. Decis. Mak..

[9]  P. Curzon,et al.  Computational thinking - a guide for teachers , 2015 .

[10]  Yizhou Qian,et al.  Students’ Misconceptions and Other Difficulties in Introductory Programming , 2017, ACM Trans. Comput. Educ..

[11]  Jeannette M. Wing An introduction to computer science for non-majors using principles of computation , 2007, SIGCSE.

[12]  Benedict duBoulay,et al.  Some Difficulties of Learning to Program , 1986 .

[13]  V. Shute,et al.  Demystifying computational thinking , 2017 .

[14]  Taylor Martin,et al.  Using Learning Analytics to Understand the Learning Pathways of Novice Programmers , 2013 .

[15]  Christian D. Schunn,et al.  Developing Computational Thinking through a Virtual Robotics Programming Curriculum , 2017, ACM Trans. Comput. Educ..

[16]  Sue Fitzgerald,et al.  Debugging: a review of the literature from an educational perspective , 2008, Comput. Sci. Educ..

[17]  Arif Altun,et al.  Undergraduate Students' Experiences in Programming: Difficulties and Obstacles Üniversite Öğrencilerinin Programlama Deneyimleri: Güçlükler ve Engeller , 2014 .

[18]  Minhong Wang,et al.  Analysing computational thinking in collaborative programming: A quantitative ethnography approach , 2019, J. Comput. Assist. Learn..

[19]  Ching-Hsue Cheng,et al.  Evaluating the best main battle tank using fuzzy decision theory with linguistic criteria evaluation , 2002, Eur. J. Oper. Res..

[20]  Alexis Daniel Fuentes Perez,et al.  Development and assessment of computational thinking: A methodological proposal and a support tool , 2018, 2018 IEEE Global Engineering Education Conference (EDUCON).

[21]  Jongpil Cheon,et al.  Exploring problem decomposition and program development through block-based programs , 2019 .

[22]  Aman Yadav,et al.  Computational Thinking in Elementary and Secondary Teacher Education , 2014, ACM Trans. Comput. Educ..

[23]  Tracy Camp,et al.  Assessing Computational Thinking in CS Unplugged Activities , 2017, SIGCSE.

[24]  Aman Yadav,et al.  Computational Thinking in Teacher Education , 2017, Emerging Research, Practice, and Policy on Computational Thinking.

[25]  Margarida Romero,et al.  Computational thinking development through creative programming in higher education , 2017, International Journal of Educational Technology in Higher Education.

[26]  Jeannette M. Wing Computational thinking and thinking about computing , 2008, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences.

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

[28]  Mary Tom Five C Framework: A Student-Centered Approach for Teaching Programming Courses to Students with Diverse Disciplinary Background. , 2015 .

[29]  Cynthia Collins Selby,et al.  Relationships: computational thinking, pedagogy of programming, and Bloom's Taxonomy , 2015, WiPSCE.

[30]  F. Paas,et al.  Cognitive Load Theory: A Broader View on the Role of Memory in Learning and Education , 2014, Educational Psychology Review.

[31]  Monchai Tiantong,et al.  The Four Scaffolding Modules for Collaborative Problem-Based Learning through the Computer Network on Moodle LMS for the Computer Programming Course , 2013 .

[32]  Aman Yadav,et al.  Computational Thinking for All: Pedagogical Approaches to Embedding 21st Century Problem Solving in K-12 Classrooms , 2016 .

[33]  Wk Wong,et al.  Computational thinking and tinkering : exploration study of primary school students in robotic and graphical programming , 2017 .

[34]  Peter J. Denning,et al.  Remaining trouble spots with computational thinking , 2017, Commun. ACM.

[35]  Giuliana Dettori,et al.  Developing Computational Thinking: Approaches and Orientations in K-12 Education , 2016 .

[36]  Mahfudzah Othman,et al.  Assessing cognitive enhancements in introductory programming through online collaborative learning system , 2015, 2015 International Symposium on Mathematical Sciences and Computing Research (iSMSC).

[37]  Francisco J. García-Peñalvo,et al.  Personalized contents based on cognitive level of student's computational thinking for learning basic competencies of programming using an environment b-learning , 2016, TEEM.

[38]  Renata Burbaite,et al.  Integration of computational thinking skills in STEM-driven computer science education , 2018, 2018 IEEE Global Engineering Education Conference (EDUCON).

[39]  Khairul A. Rasmani,et al.  Fuzzy delphi method: Issues and challenges , 2016, 2016 International Conference on Logistics, Informatics and Service Sciences (LISS).

[40]  Cynthia Selby,et al.  Computational Thinking: The Developing Definition , 2013 .

[41]  D. Berliner The Near Impossibility of Testing for Teacher Quality , 2005 .