Робототехнический конструктор как средство обучения старшеклассников программированию на языке С++

Обложка

Цитировать

Полный текст

Аннотация

Постановка проблемы . В данной работе рассматриваются и обосновываются подходы к решению проблемы недостаточной разработанности методов обучения старшеклассников программированию на языке C++ в курсе информатики c использованием робототехнического конструктора VEX EDR. Применение робототехнических конструкторов в школьной программе по информатике может значительно улучшить процесс обучения программированию, предоставляя задачи с практическим уклоном. Это также способствует развитию у школьников навыков взаимодействия с различными устройствами и самостоятельного принятия решений, позволяет раскрыть их творческий потенциал в конструкторской и проектноисследовательской деятельности, а также усиливает интерес к обучению информатике, что особенно важно в современном технологически ориентированном обществе. Целью данного исследования является разработка компонентов методической системы обучения старшеклассников программированию на языке C++ с использованием робототехнического конструктора VEX EDR и проверка эффективности предложенной методики. Методология . Для достижения поставленной цели был использован метод анализа научно-методических источников и нормативных документов, которые касаются проблемы обучения старшеклассников программированию в рамках курса информатики. Выполнено опытно-экспериментальное исследование с участием двух групп школьников. Контрольной группе тема «Линейный алгоритм» преподавалась в традиционном изложении по учебнику К.Ю. Полякова и Е.А. Еремина (10-11 класс). Экспериментальной группе тема «Линейный алгоритм» преподавалась в традиционном изложении по тому же учебнику, но с использованием робототехнического конструктора, разработанной системы задач и методических рекомендаций. Результаты . В ходе исследования установлено, что реализация сформированных компонентов методической системы обучения старшеклассников программированию на языке C++ с использованием робототехнического конструктора VEX EDR позволила повысить эффективность обучения старшеклассников программированию реальных исполнителей, работающих «в обстановке». Заключение . Экспериментально доказана эффек тивность разработанных компонентов методической системы обучения старшек лассников программированию на языке C++ с использованием робототехнического конструктора VEX EDR.

Полный текст

Problem statement. In the modern world, where technologies occupy an increasingly important place, learning programming becomes an integral part of the school program. C++ programming is one of the most demanded and popular competencies in IT. However, it can be difficult for high school students to understand the abstract concepts of this language [1, p. 3]. In this paper, we consider the contradiction between the mastering of programming by high school students only using virtual executors, despite the huge potential of robotic tools for teaching programming, and the insufficient educational and methodical support for teaching high school students programming using robotic constructors - real executors working ‘in the environment’ [2; 3]. Let us analyze the evolution of approaches to teaching programming in the school course of computer science [2, p. 160]. In the late 1960s, the American educational psychologist S. Peipert created the LOGO programming language, which is considered to be the first programming tool that made it possible to teach algorithmization and structural programming methodology. Later, A.G. Kushnirenko, G.V. Lebedev and Ya.N. Zaidelman[5] develop the ideas of teaching programming with the use of educational executors, which were laid down by A.P. Ershov[6] and S. Peipert. In the textbook, A.G. Kushnirenko and his co-authors consider algorithms of computational nature, which are designed for such an executor as a computer. They include tasks of processing numerical and symbolic information, for example, processing arrays, lettered strings, calculating a numerical sequence and so on. In the textbook by L.G. Gain and A.I. Senokosov[7], the algorithmic line of the school course of computer science is realized in two directions: application of executors working ‘in the environment’ and construction of algorithms of computational character for solving problems of mathematical modeling. There are also computer science textbooks that do not use and do not consider educational executors. For example, in the textbook of V.A. Kaimin[8], the section of algorithmization is dedicated to only one executor - the computer. In the textbook by A.A. Kuznetsov and others[9], the part of algorithmization is omitted, and the study of programming begins with acquaintance with the Pascal programming language. The application of the programming language is shown on examples of tasks of computational nature, tasks on construction of images and tasks on processing of strings. The textbook by I.G. Semakin and others[10] uses a cybernetic approach. This approach introduces a new content line, no less important than the control line, into the educational process. In order to comply with the principle of content invariance, a hypothetical educational performer GRIS is used. Thus, having considered the textbooks of such authors as A.G. Kushnirenko, A.P. Ershov, L.G. Gain, V.A. Kaimin, A.A. Kuznetsov, and I.G. Semakin, the following approaches to teaching algorithmization and programming were identified: structural, cybernetic, and activity-based. It can be seen that with the development of computer science, the approach to teaching algorithmization and programming has changed a lot. Successful teaching of programming requires the search and development of additional teaching methods, changes in the form of presentation of material, as well as means to increase the motivation of students. One of the options for solving this problem can be the use of robotic constructors. A robotic constructor is a set of various parts and electronic components that can be used to create a variety of robots. Due to its modular structure and simple interface, this constructor allows students to learn quickly the basics of programming and apply the knowledge gained in practice. The components are connected to a computer or microcontroller with the help of special software that allows writing C++ code to control the robot [4]. The composition of the extended set of the VEX EDR robotics builder is shown in Figure 1. Using a robotic constructor as a tool when teaching C++ programming has several advantages. First, creating a physical object is a visual proof that the written code works correctly. This helps students better understand abstract programming concepts and increases their motivation to learn C++. Second, working with robots requires teamwork and collective development of the project that promotes teamwork skills and develops students’ social skills [5, p. 157]. Figure 1. Extended VEX EDR robotics construction kit Source: http://vexacademy.ru/vex-edr-info.html Methodology. In this study, we modeled the computer science teaching methodology for the use of constructor robots in C++ programming classes in secondary schools. During the modeling process, all important methodical aspects of contemporary approaches to teaching computer science in secondary schools were considered [6, p. 75]. A general idea of the main components of the proposed model can be obtained from Figure 2. The presented model reflects the blocks and components of the methodical system of teaching C++ programming with the use of robotic constructors to Figure 2. Model of the methodical system of teaching high school students programming in C++ with the use of robotic constructors Source: created by Anton V. Eliseev high school students, as well as their interrelationships. The model includes five main blocks: “Programming in C++ using the VEX EDR robotics builder in a computer science”, “Objectives”, “Content of computer science education”, “Methods of teaching computer science”, “Means of computer science education”. The central block “Programming in C++ using the VEX EDR robotics builder in a computer science” displays the relationship between C++ programming technology and the use of robotic constructors in teaching C++ programming as an object of study and subject of research. This block is related to the goals of robotics application, methods of teaching computer science, conditioned by the described approaches to the use of robotic constructors in teaching programming to high school students within the framework of the computer science course[11] [6, p. 95; 7], the content of computer science teaching as well as the means of teaching computer science. In the “Objectives” section, the main objective is to introduce robots as constructors in programming courses for high school students in the framework of computer science education. The corresponding pedagogical goal will be achieved through the realization of interrelated regional tasks: introduction of programming lessons for secondary school students in the context of computer science education and increasing the effectiveness of computer science education in schools in the context of programming lessons for secondary school students. The “Methods of teaching computer science” section reflects the interrelationship of six basic approaches determined by the use of robot builders in programming instruction for high school students[12] [8]. The block “Content of computer science education” includes the selected material of the basic school computer science course, in which there is a feasibility of using robotic constructors in teaching high school students to program in C++ language within the framework of the computer science course as an object of study and (or) a teaching tool [3]. In the described model, the “Means of computer science education” block includes cognitive tasks, hardware and software, robotic devices and models for learning the basics of algorithmization and programming in the school computer science course [3; 8]. Such a system of cognitive tasks includes both tasks aimed at teaching programming and tasks based on the use of robotic constructors. The proposed model serves as a basis for developing specific components of the methodical system of teaching C++ programming to middle and high school students using robotic constructors [1; 2; 9; 10]. This was necessary for the experimental testing of the research hypotheses [11-13]. In the experimental testing, two groups of students were presented with a task requiring a detailed answer in the form of program code. The control group consisted of a part of the class (9 students in total) who were taught “Linear Algorithms” in the traditional way according to the textbook by K.Yu. Polyakov and E.A. Eremin (10-11 grades)[13]. The experimental group also included 9 students who studied the topic “Linear Algorithms” using the same textbook, but applying robotic constructors, developed task systems and methodical recommendations. The case contained a task aimed at testing the ability to create one’s own programs (20-40 lines) for analyzing numerical sequences. The task is considered to be completed correctly if the answer is written in the form specified in the instructions for the task and fully coincides with the standard answer. The evaluation criteria are written together with the task, which helps students to distribute their efforts and time while writing the work (Table 1). The case offers a task with an attached file, and for its fulfillment a computer with an operating system, spreadsheet editors, text editors, C++ programming environment installed on it is required. The maximum number of points that can be obtained for the case is 13. Evaluation criteria are as follows: - mark “2” - from 0 to 4 points; - mark “3” - from 5 to 7 points; - mark “4” - from 8 to 10 points; - mark “5” - from 11 to 13 points. Table 1 Correlation of the evaluation criteria with the maximum number of points No. Maximum number of points Evaluation criteria 1. 3 Error-free operation of the program written in the programming language 2. 2 Compactness of the written program 3. 3 Observance of indentation and tabulation (no extra spaces) 4. 3 Correct use of the syntax of the programming language 5. 2 Correct use of classes from libraries to work with the file Source: compiled by Anton V. Eliseev. Results and discussion. The results of the study in the control and experimental groups are presented in Table 2. The table shows the number of points scored by students and the corresponding grade according to the evaluation criteria. The results of assessing the level of knowledge and skills of students in the experimental and control groups are summarized in Table 3. Based on the data presented in Table 3, it is possible to note the differences between the control and experimental groups in mastering knowledge and acquiring skills, with the experimental group showing better results. The Wilcoxon-Mann-Whitney criteria was calculated to statistically substantiate the hypothesis taking into account the experimental conditions. The data for calculating the U-criteria are given in Table 4. Table 2 Results obtained by the control and experimental groups Control group Experimental gro up Student’s No. Number of points Mark Student’s No. Number of points Mark 1. 11 5 1. 12 5 2. 5 3 2. 11 5 3. 2 2 3. 10 4 4. 7 3 4. 13 5 5. 7 3 5. 9 4 6. 6 3 6. 13 5 7. 4 2 7. 7 3 8. 9 4 8. 7 3 9. 9 4 9. 9 4 Source: compiled by Anton V. Eliseev. Table 3 Number of marks received by the participants of the control and experimental groups Mark Control group Experimental group 2 2 0 3 4 2 4 2 3 5 1 4 Source: compiled by Anton V. Eliseev. Table 4 Calculation of the Wilcoxon-Mann-Whitney U-criteria No. Sample 1 (control group) Rank 1 Sample 2 (experimental group) Rank 2 1. 11 14.5 12 16 2. 5 3 11 14.5 3. 2 1 10 13 4. 7 6.5 13 17.5 5. 7 6.5 9 10.5 6. 6 4 13 17.5 7. 4 2 7 6.5 8. 9 10.5 7 6.5 9. 9 10.5 9 10.5 Total: 58.5 112.5 Source: compiled by Anton V. Eliseev. Result: Uempirical value = 13.5 The range of obtained critical values: from 15 to 22. The axis of significance has the following form (Fig. 3). The obtained empirical value (Uempirical value = 13.5) is within the zone of significance. Therefore, the obtained results can be considered significant and reliable. Thus, we can make a statistically justified conclusion that the use of the VEX EDR robotic constructor in teaching high school students programming in C++ at computer science lessons allows to increase the effectiveness of learning, develop and deepen the programming knowledge of real executors working ‘in the environment’ of high school students. Figure 3. Zone of empirical value for the indicators obtained during the experimental work Source: created by Anton V. Eliseev. Conclusion. We can state that the carried out research shows that the developed model for teaching C++ programming to secondary school students using the Robot Constructor improves the effectiveness of teaching secondary school students to program real executors working ‘in the environment’ and also serves as a basis for the direct development of its components.
×

Об авторах

Антон Вячеславович Елисеев

Московский городской педагогический университет

Автор, ответственный за переписку.
Email: eliseevav@mgpu.ru
ORCID iD: 0009-0003-4581-9212
SPIN-код: 3826-9890

аспирант, ассистент департамента информатизации образования, Институт цифрового образования

Российская Федерация, 129226, Москва, 2-й Сельскохозяйственный проезд, д. 4, корп. 1

Список литературы

  1. Gharbia M., Chang-Richards A., Lu Y., Zhong R.Y., Li H. Robotic technologies for on-site building construction: A systematic review // Journal of Building Engineering. 2020. Vol. 32. https://doi.org/10.1016/j.jobe.2020.101584
  2. Векслер В.А. Образовательная робототехника: основы программирования конструкторов VEX IQ на языке RobotC // NovaInfo.ru. Педагогические науки. 2017. № 75. С. 159–165.
  3. Левченко И.В. Методическая подготовка учителя к использованию на уроках средств информационных технологий // Вестник МГПУ. Серия: Информатика и информатизация образования. 2007. № 8. С. 62–67.
  4. Елисеев А.В. Обучение программированию с использованием робототехнических конструкторов в школьном курсе информатики // #ScienceJuice2021: сборник тезисов студенческой открытой конференции. М.: Парадигма, 2021. С. 78–81.
  5. Макаров И.М, Топчеев Ю.И. Робототехника: история и перспективы. М.: Наука; МАИ, 2003. 349 с.
  6. Гриншкун А.В. Технология дополненной реальности как объект изучения и средство обучения в курсе информатики основной школы: дис.. канд. пед. наук. М., 2018. 219 с.
  7. Ou Yang F.-C., Lai H.-M., Wang Y.-W. Effect of augmented reality-based virtual educational robotics on programming students’ enjoyment of learning, computational thinking skills, and academic achievement // Computers & Education. 2023. Vol. 195 https://doi.org/10.1016/j.compedu.2022.104721
  8. Левченко И.В. Применение методических средств для организации алгоритмической деятельности на уроках информатики в основной школе // Информатика и образование. 2006. № 2. С. 107–112.
  9. Delgado J.M.D., Oyedele L. Robotics in construction: A critical review of the reinforcement learning and imitation learning paradigms // Advanced Engineering Informatics. 2022. Vol. 54. https://doi.org/10.1016/j.aei.2022.101787
  10. Кондратьева В.А. Обучение основам программирования на языке Python в школьном курсе информатики // Вестник МГПУ. Серия: Информатика и информатизация образования. 2021. № 1 (55). С. 8–16.
  11. Ушинский К.Д. Труд в его психическом и воспитательном значении. Избранные сочинения. М.: Юрайт, 2017. 359 с.
  12. Angeli Ch. The effects of scaffolded programming scripts on pre-service teachers’ computational thinking: Developing algorithmic thinking through programming robots // International Journal of Child-Computer Interaction. 2022. Vol. 31. https://doi.org/10.1016/j.ijcci.2021.100329
  13. Moraes de Carvalho J., de Magalhães Netto J.F. Currents trends in use of collaborative learning in teaching of robotics and programming – A systematic review of literature // Proceedings of the 2020 IEEE Frontiers in Education Conference. 21–24 October 2020, Uppsala, Sweden. P. 1–8. IEEE Press, 2020. https://doi.org/10.1109/FIE44824.2020.9273950

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

© Елисеев А.В., 2024

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-NonCommercial 4.0 International License.