Вычислительное мышление
Опубликована Янв. 1, 2016
Последнее обновление статьи Окт. 21, 2022
Цель представленного в статье исследования - привлечь внимание педагогической общественности к феномену вычислительного мышления, активно обсуждаемому в последнее десятилетие в зарубежной научно-педагогической литературе, обосновать его теоретическую значимость, практическую полезность и право на институирование в отечественном образовании.
Методы. Исследование базируется на анализе зарубежных исследований феномена вычислительного мышления и путей его формирования в процессе образования; на сопоставлении понятия «вычислительное мышление» с родственными понятиями, используемыми в российской научно-педагогической литературе.
Результаты. Понятие «вычислительное мышление» проанализировано как с точки зрения его интуитивного понимания, так и в научно-прикладных, аспектах. Показано, как эволюционировало данное мышление в процессе развития технических и программных средств информатики. Описана практико-ориентированная интерпретация вычислительного мышления, доминирующая в среде работников образования, наряду с некоторыми приемами его формирования. Доказано, что этот вид мышления является как метапредмет- ным результатом общего образования, так и его инструментом. С точки зрения автора, целенаправленное развитие вычислительного мышления должно стать одной из задач российского образования.
Научная новизна. Теоретически обоснована значимость понятия «вычислительное мышление» как метапредметного результата обучения. Описана динамика развития этого понятия в процессе эволюции компьютерных и информационных технологий и расширения пространства задач, для эффективного решения которых необходимо вычислительное мышление. Обосновано утверждение о том, что перенос понятия «вычислительное мышление» в принятую в отечественном образовании систему педагогических понятий восполняет существующий в ней пробел.
Практическая значимость. Выделен новый метапредметный результат образования, связанный с формированием личностных и профессиональных качеств человека, живущего и работающего в информационном обществе.
Ключевые слова
Информационные технологии, вычислительное мышление, метапредметный результат образования
Обсуждаемый феномен был изначально назван «Computational Thinking». Буквальный перевод на русский язык - «Вычислительное мышление» - вынужденный вариант, поскольку английское слово Computational, кроме использования в чисто математическом смысле (производство вычислений), в настоящее время параллельно используется в более широком смысле, родственном термину «Computing» (Компьютинг) - собирательному обозначению совокупности компьютерных наук (Computer Science), информационных технологий и информационных систем, компьютерной и программной инженерии (см., например, [б, 7]). Однако любой другой перевод термина Computational Thinking, более «правильный» с точки зрения интерпретации (например, «Информатическое мышление»), вряд ли будет воспринят; кроме того, термин «Вычислительное мышление», привязанный к англоязычной первооснове, уже несколько раз использовался в российской научной литературе (см., например, [2, 4]).
Широкое использование термина Computational Thinking началось с опубликования в 2006 г. одноименной работы профессора Корнельского университета (США) Жаннетты Винг (Jeanette Wing), описавшей назначение вычислительного мышления следующим образом: «Вычислительное мышление является способом решения проблем людьми, а не попыткой уподобить человеческое мышление компьютерам. Компьютеры - скучные и нудные, а люди умны и обладают воображением. Мы, люди, делаем компьютеры эффективными. Оснащенные вычислительными устройствами, мы используем наш ум, чтобы решать проблемы, которые мы не могли решать до компьютерной эры и создавать системы, обладающие функциональностью, ограниченной только нашим воображением» [13].
Как нередко бывает в таких случаях, вскоре выяснилось, что этим термином в более узком смысле пользовался на 10 лет раньше при обсуждении проблем математического образования известный в России ученый-педагог Сеймур Пейперт [11], однако тогда термин носил несколько иной смысловой оттенок и не привлек внимания. В настоящее время интерпретации понятия «вычислительное мышление» и способам его формирования посвящены за рубежом десятки работ - психологов, философов, ИТ-специалистов и, конечно, педагогов и методистов - как школьных, так и вузовских.
В приведенной выше цитате определения того, что такое вычислительное мышление, по существу, нет. Впоследствии Жаннетта Винг сформулировала следующий вариант определения: «Вычислительное мышление - это мыслительные процессы, участвующие в постановке проблем и их решения таким образом, чтобы решения были представлены в форме, которая может быть эффективно реализована с помощью средств обработки информации» [14].
В пояснении сказанного там же говорится: «Моя интерпретация слов «проблема» и «решение» является широкой. Я имею в виду не только математически четко определенные проблемы, решения которых полностью анализируемы, например, доказательство, алгоритм или программа, но и проблемы в реальном мире, решения которых могут иметь вид крупных, сложных программных систем. Таким образом, вычислительное мышление пересекается с логическим мышлением и системным мышлением. Оно включает в себя алгоритмическое мышление и параллельное мышление, которые, в свою очередь привлекают другие виды мыслительных процессов, таких, как композиционные рассуждения, действия по шаблону, процедурное мышление и рекурсивного мышление. Вычислительное мышление используется в постановке и анализе проблем и их решений, широком толковании».
Всестороннее академичное обсуждение понятия «вычислительное мышление» приведено в отчете рабочей группы по возможностям и природе вычислительного мышления [12], подготовленном Национальной академией наук США (частная неправительственная организация). Члены рабочей группы высказали ряд суждений о сущности вычислительного мышления (ВМ). Ниже - сокращенные версии некоторые из этих суждений1 (Более полное представление, не ограниченное размерами данной статьи и переводческими возможностями ее автора, можно получить из оригинального текста цитируемого отчета).
Из приведенных суждений видно, сколь широк спектр представлений о вычислительном мышлении.
Участники рабочей группы приводили примеры успешности вычислительного мышления. Так, при секвенировании генома человека успех был обусловлен тем, что традиционный метод прохождения ДНК, состоящего из 3-4 млрд пар оснований, шаг за шагом был заменен методом «дробовика» (shotgun sequencing), который намного сложнее, но многократно быстрее работает. При секвенировании этим методом ДНК случайным образом фрагментируется на мелкие участки, которые секвени- руют обычными методами. Полученные перекрывающиеся случайные фрагменты ДНК затем собирают с помощью специальных программ в одну большую последовательность.
Этот пример иллюстрирует, что человек, обладающий вычислительным мышлением, понимает, что решение сложных проблем может быть найдено на основе алгоритмов и автоматизации. Человек, думающий «вычислительно», понимает, что численное моделирование может помочь в решении сложных проблем в различных сферах деятельности, таких, как изменение климата, экономической политики, в процессе принятия решений по вопросам образования и т. д. - эти и другие примеры также приводились участниками обсуждения.
В отечественной научной литературе упоминаний о вычислительном мышлении немного. Весьма отчетливо представление о нем сформулировано В. Э. Вольфенгагеном: «Вычислительное мышление играет роль инструмента, дающего возможности анализа происходящих информационных процессов - вне зависимости от того, состоялись ли уже эти процессы, находятся ли они в стадии разворачивания или только еще предполагаются как возможные. Законы компьютинга устанавливаются и понимаются как краткий и экономичный способ выразить то общее, что происходит в многообразии частностей для конкретных информационных процессов» [2].
Обсудим эволюцию вычислительного мышления в контексте развития средств вычислительной техники и информационных технологий. Их
использование для решения задач можно условно разделить на этапы. Первые ЭВМ создавались для решения вполне определенного и достаточно узкого круга задач математического моделирования (ядерная физика, баллистика и т. д.). На этом этапе реализовывался путь от немногих избранных, особо важных в соответствующий исторический период, задач к машинам (основная проблема: как построить машину для решения отдельных заданных задач). Когда ЭВМ стали более доступными, математики и физики научились решать на них другие задачи - физики, механики, инженерного дела ит.д., для которых существовали (или специально разрабатывались) математические модели (основная проблема - разработка эффективных алгоритмов и программ). На третьем, современном, этапе доминирует поиск методов решения почти любых задач на компьютерах; при этом на первый план выходит проблема адекватного представления данных и знаний и создание проблемно-ориентированных программных комплексов, обладающих высокоразвитым человеко-машинным интерфейсом.
На рис. 1 изображена «чаша задач», решаемых с применением компьютерных информационных технологий. На условной временной шкале обозначены три точки бифуркации: создание первых ЭВМ, создание персональных компьютеров и современных компьютерных сетей и телекоммуникаций. Каждая из них знаменовалась резким увеличением числа задач, решаемых с помощью компьютеров.
Оба пространства задач, изображенных символически на рис. 1, не являются статичными. Непрерывно появляются новые задачи, порожденные человеческой деятельностью, и для решения части из них находятся (или заново создаются) компьютерные технологии.
На уровне разработки компьютерных программ указанная эволюция отражается в смене парадигм программирования и в переходе к доминирующей в наше время объектной парадигме, включающей этапы объектно-ориентированного анализа и проектирования. «Объектно-ориентированная технология основывается на так называемой объектной модели. Основными ее принципами являются: абстрагирование, инкапсуляция, модульность, иерархичность, типизация, параллелизм и сохраняемость... Методы объектно-ориентированного проектирования созданы, чтобы помочь разработчикам применять мощные выразительные средства объектного и объектно-ориентированного программирования, использующего в качестве блоков классы и объекты» [1].
Отметим, что, кроме совершенствования технических средств и методов программирования, огромную роль в стремительном наращивании числа задач, решаемых с помощью информационно-коммуникационных технологий, сыграло развитие программных систем для решения задач множества сфер профессиональной деятельности; эти системы, открывая прямой доступ к информационным технологиям, не требуют от пользователей навыков программирования в его классическом понимании. Замечательная метафора А. П. Ершова «программирование - вторая грамотность» (метафорой эту фразу называл сам академик Ершов [3]), сыгравшая важную роль на начальном этапе школьной информатики, оказалась метафорой в большей мере, чем можно было предположить 30 лет назад. Исчезновение барьера программирования позволило миллионам специалистов не только из сфер естественнонаучных и инженерных видов деятельности, но и гуманитарных и социальных, использовать компьютер в повседневной работе, а сотням миллионов - в быту.
Возьмем на себя смелость заметить, что на роль «второй грамотности» сегодня претендует нечто иное: умение применять современные информационные и коммуникационные технологии к решению возникающих перед человеком задач. Формирование таких умений как составляющих информационно-коммуникационной компетентности является важной задачей образования, начиная со школьной скамьи; эти умения также есть важная часть профессиональной подготовки. «Необычайный успех компьютерных технологий показывает, что компромиссы, концептуальные инструменты, разработанные специалистами в компьютерных науках, находят широкое применение за рамками простого вычисления. В действительности происходящая всеобщая информатизация выдвигает новый показатель квалификации специалиста. Этот показатель можно сформулировать как способность понимать и применять фундаментальные вычислительные принципы к широкому спектру человеческой деятельности» [2].
Но, как показывает опыт, одних таких умений мало - к ним надо добавить некое качество, которое только на первый взгляд может показаться эфемерным - нацеленность на указанное выше применение, определенный стиль мышления. Таким качеством и является вычислительное мышление. То обстоятельство, что это понятие формализовалось лишь 10 лет назад, не означает, что соответствующее качество не было важным много раньше - этот стиль мышления, латентно существовавший очень давно, актуализировался при создании первых ЭВМ, ставших для него инструментом реализации; при этом облик вычислительного мышления менялся параллельно с эволюцией технических и программных средств и стремительным расширением пространства решаемых задач.
Вопросы, связанные с вычислительным мышлением, обсуждаются за рубежом не только учеными и ИТ-специалистами, но и в профессиональном педагогическом сообществе. На сайте Американской ассоциации учителей информатики (Computer Science Teachers Association) есть специальный раздел, посвященный понятию «вычислительное мышление» и способам его формирования [10]. Там же находятся в свободном доступе некоторые методические материалы и руководства.
Начнем с приведенного в этом разделе рабочего (операционного) определения исходного понятия, обеспечивающего рамки и единый лексикон при обсуждении в сообществе школьных учителей.
«Вычислительное мышление - процесс решения проблем, включающий следующие характеристики (но не ограничивающийся ими):
Вычислительное мышление увязывается с рядом личностных качеств учащихся:
«Перечисленные выше навыки должны поддерживаться и усиливаться рядом качеств, которые являются необходимыми признаками вычислительного мышления. Эти качества включают в себя:
Согласно сказанному выше, вычислительное мышление является понятием наддисциплинарным и, если говорить об образовании, формируется в процессе изучения самых разных дисциплин - математических, естественнонаучных, технических и др. Пользуясь современной терминологией, вычислительное мышление - важный метапредметный и личностный результат образования.
В таблице, заимствованной из работы [8], приведены примеры того, как развитие вычислительного мышления может быть поддержано в учебной деятельности по некоторым дисциплинам и их группам.
Примеры возможностей | Информатика | Математика | Естественные науки | Социальные науки | Гуманитарные науки |
1 | 2 | 3 | 4 | 5 | б |
Сбор данных | Поиск источника данных для проблемной области | Поиск источника данных для проблемной области (бросание монет или игральной кости) | Сбор экспериментальных данных | Изучение статистических данных | Лингвистический анализ предложений |
Анализ данных | Написание программ для основных статистических расчетов на множестве данных | Анализ результатов статистических испытаний (бросание кости) | Анализ экспериментальных данных | Идентификация трендов в статистических данных | Идентификация шаблонов в предложениях |
Представление данных | Использование структур данных, таких как массивы, связанные списки, стеки, очереди, | Использование гистограмм, круговых диаграмм, списков, графиков и т. д. для представления данных | Итоговое представление экспериментальних данных | Итоговое представление трендов | Представление шаблонов в предложениях |
Проблема де- компози- ции | Определение объектов, методов и функций | Применение порядка операций в выражениях | Разработка классификаций |
| Создание схем |
Абстракция | Использование процедур инкапсуляции набора часто повториющихся команд; использование условий, циклов, рекурсий и т. д. | Использование переменных в алгебре; изучение функций в алгебре и сравнение с функциями в программировании; использование итерации в решении задач | Построение модели физической сущности | Представление фактов, вывод заключений из фактов | Использование сравнений и метафор; написание историй с подразделами |
Алгоритмы и процедуры | Изучение классических алгоритмов; использование алгоритмов для решения проблем | Выполнение деления столбиком, разложения на множители; перенос цифр между колонками при сложении и вычитании | Выполнение экспериментальных процедур |
| Запись инструкций |
Автоматизация |
| Использование таких инструментов, как интерактивные графические системы, языков StarLogo, Python | Использование компьютерно- оснащенных лабораторных работ | Использование электронных таблиц | Использование программ проверки орфографии |
Распараллеливание | Представление данных в виде, допускающем параллельную обработку | Решение систем линейных уравнений, умножение матриц | Совместно выполняемые эксперименты с различными параметрами |
|
|
Моделирование | Алгоритмы анимации, параметризация и оптимизация | Графики функций и изменение значений переменных | Моделирование движение тел в солнечной системе | Игры типа «Эпоха империй» | Исторические реконструкции |
Из иных ресурсов, созданных для поддержки развития вычислительного мышления, отметим обширную коллекцию учебных материалов (учебных планов, видеоресурсов и т. д.), размещенную на сайте Google for Education [9].
Для отечественного образования задача выделения вычислительного мышления в самостоятельную категорию, по мнению автора, актуальна. Это будет способствовать активизации исследования путей формирования вычислительного мышления в среде российского образования с учетом его традиций и стоящих перед ним задач, а процесс формирования вычислительного мышления станет более продуктивным. Более того, развитое вычислительное мышление является не только результатом, но и полезным инструментом образования.
Необходимо отметить, что термин «вычислительное мышление» в российском образовании не приходит на пустое место - связанная с ним проблематика обсуждается давно, и в соответствующем педагогическом домене есть несколько родственных терминов. В отечественной педагогической литературе описан ряд характеристик личности, образованных сочетанием родового понятия «алгоритмический», «логический», «системный», «компьютерный», «информационный», «цифровой» с некоторым качеством из перечня «грамотность», «культура», «компетентность», «мышление» (рис. 2). Естественно возникает вопрос, не является ли понятие «вычислительное мышление» лишним в том смысле, что оно исчерпывается ранее введенными. Отметим, что в англоязычной литературе почти все эти пары понятий также представлены (хотя и не всегда в той содержательной интерпретации, как в отечественной), что не помешало укорениться понятию Computational Thinking.
По мнению автора, понятие «вычислительное мышление» не сводится ни к какому из сочетаний, отраженных на рис. 2. Прежде всего, даже по формальным признакам, со стилем мышления не могут конкурировать ни «грамотность», ни «культура», ни «компетентность». В исследованиях по вычислительному мышлению не раз подчеркивалось, что его не следует отождествлять ни с алгоритмическим и/или математическим мышлением, ни с компьютерной грамотностью, ни с информационной компетентностью. Алгоритмическое, логическое, системное и информационное мышление, пересекаясь с вычислительным мышлением, не исчерпывают его.
Формирование вычислительного мышления можно рассматривать в связке с формированием информационно-коммуникационной компетентности и информационной культуры. В процессном плане они могут быть неразрывны, но как результат образования вычислительное мышление сохраняет в этой триаде относительную самостоятельность: человек, обладающий вычислительным мышлением, должен быть ориентирован на решение задач с помощью средств инфокоммуникационных технологий, привычно мыслить соответствующими категориями. Возможно, это и есть главная черта вычислительного мышления; его наличие должно стать важным личностным и метапредметным результатом школьного (и не только школьного) образования, а также его инструментом.
Статья рекомендована к публикации д-ром пед. наук, проф. Л. В. Зайцевой
Литература