Научная статья на тему 'Критическое мышление как фактор профессиональной компетентности программистов'

Критическое мышление как фактор профессиональной компетентности программистов Текст научной статьи по специальности «Психологические науки»

CC BY-NC-ND
869
162
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по психологическим наукам, автор научной работы — Кукушкина Юлия Андреевна, Спиридонов Владимир Феликсович

The phenomenon of «critical thinking» understood as a complex of interrelated metacognitive (heuristic) strategies is analyzed. The results of empirical study of critical thinking impact on the success of professional problem solving by «experts» and «novices» in the programming domain are outlined. It is shown that critical thinking is closely connected to the success of professional problem solving and that this effect is provided by the metacognitive strategies which constitute critical thinking. The differences between experts and novices are revealed which lie in the intensity and sustainable use of metacognitive strategies by the experts in the significant situations of difficulties (so-called «points of inflection»).

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по психологическим наукам , автор научной работы — Кукушкина Юлия Андреевна, Спиридонов Владимир Феликсович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Critical Thinking as a Factor of Programmers Expertise

The phenomenon of «critical thinking» understood as a complex of interrelated metacognitive (heuristic) strategies is analyzed. The results of empirical study of critical thinking impact on the success of professional problem solving by «experts» and «novices» in the programming domain are outlined. It is shown that critical thinking is closely connected to the success of professional problem solving and that this effect is provided by the metacognitive strategies which constitute critical thinking. The differences between experts and novices are revealed which lie in the intensity and sustainable use of metacognitive strategies by the experts in the significant situations of difficulties (so-called «points of inflection»).

Текст научной работы на тему «Критическое мышление как фактор профессиональной компетентности программистов»

Психология. Журнал Высшей школы экономики. 2008. Т. 5, № 1 С. 165-174.

КРИТИЧЕСКОЕ МЫШЛЕНИЕ КАК ФАКТОР ПРОФЕССИОНАЛЬНОЙ КОМПЕТЕНТНОСТИ ПРОГРАММИСТОВ

Ю.А. КУКУШКИНА, В.Ф. СПИРИДОНОВ

Развитие компетентности в той или иной сфере деятельности определяется не столько количеством знаний, сколько варьированием подходов, стратегий к решению и критическим контролем их применимости (Стрелков, 2001; Величков-ский, 2006). Таким образом, профессиональная компетентность состоит в возможности эффективного преодоления различных проблемных ситуаций (Спиридонов, 2002).

Именно «критический ум», критическое мышление часто интерпретируются как преодолевающие сомнения и трудности, выводящие из затруднительной ситуации к решению (Рубинштейн, 2001; Дьюи, 1999). Мышление, обогащенное «критическими» или «рефлексивными» в широком смысле навыками, позволяет решать задачи на качественно новом уровне (Семенов, 1990; Непейвода, 1997). В соответствии с распространенной точкой зрения функциональная роль критического мышления заключается в контроле над выполнением интеллектуальной

деятельности. Иными словами, в процессе решения задачи решатель осуществляет оценку своих суждений, действий, используемых приемов и методов, в том числе ошибочных. Часто критическое мышление рассматривается как фактор регуляции мыслительного процесса, как определенный способ поведения субъекта по отношению к содержанию выполняемой деятельности, ее результатам и т. п. Таким образом, оно может быть понято как вариант мета-когнитивной регуляции мыслительной деятельности.

Другой аспект имеет отношение к принятию решений. В этом случае критическое мышление обеспечивает обоснованный, аргументированный выбор вариантов, который осуществляется на основе анализа состояния дел в процессе работы с проблемной ситуацией. Здесь имеет место экономия ресурсов за счет использования эвристических стратегий. Применение эвристик облегчает переформулировки задачи, создает наиболее благоприятные условия

для работы психологических механизмов, что с необходимостью проявляется при решении проблемных ситуаций, предполагающих недостаток информации и создающих «затрудненное понимание» (Спиридонов, 2006). Таким образом, можно говорить о селективных и контролирующих функциях критического мышления.

Наше базовое теоретическое положение объединяет две вышеописанные линии анализа. Оно заключается в том, что критическое мышление как комплекс взаимосвязанных метаког-нитивных стратегий повышает вероятность эффективного преодоления профессиональных проблемных ситуаций, и, следовательно, является составной частью профессиональной компетентности программистов. Выделяется ряд связанных между собой метакогнитивных стратегий критического мышления: 1) фиксация затруднений; 2) оценка различных аспектов своего поиска (вариантов, альтернатив, стратегий, ошибочных действий); 3) выбор дальнейшего направления решения; и 4) аргументация выбора. Все они выступают «оснасткой» профессионального мышления программистов. Четыре указанные стратегии складываются в общую эвристическую стратегию, применяемую в ходе решения профессиональной задачи.

Исходя из наших теоретических представлений, успешность решения задачи зависит от того, сумеет ли специалист в ситуации затруднения найти верное направление дальнейшего решения за счет использования критического мышления. Поэтому нам необходимо было, во-первых, вычленить значимые моменты решения задачи и, во-вторых, оценить

наличие в них стратегий критического мышления. Мы использовали вариант анализа вербальной продукции испытуемого, решавшего задачу путем рассуждения вслух, последовательности его высказываний и определения функций каждого из них (Семенов, 1977).

Цель проведенного нами эмпирического исследования заключалась в изучении роли критического мышления в решении профессиональных задач программистами.

Конкретной исследовательской задачей было сравнение роли критического мышления в процессе решения профессиональной задачи высоко- и низкокомпетентными программистами. В качестве гипотезы было выдвинуто следующее предположение: успешность решения профессиональной задачи связана с количеством используемых общих эвристических стратегий критического мышления.

Методика

В качестве испытуемых выступили программисты разного уровня профессиональной компетентности. В исследовании приняли участие 36 человек (33 мужчины, 3 женщины) в возрасте от 19 до 31 года.

Наиболее адекватным методом исследования в данном случае является сравнительное изучение особенностей мыслительной деятельности экспертов и новичков. Здесь оно было связано с оценкой применения метакогнитивных стратегий критического мышления.

Мы использовали классические экспериментальные процедуры психологии мышления: метод задач и

метод рассуждения вслух. Исследование выполнено на материале решения задач, непосредственно связанных с профессиональной деятельностью испытуемых (программированием). Им предлагался специально подготовленный программный код, который содержал разноплановые ошибки и недочеты. Он был реализован на нескольких наиболее распространенных языках программирования (PASCAL, C++, CLARION); испытуемый мог выбрать наиболее удобный для себя вариант.

Эксперимент проводился индивидуально с каждым испытуемым на его рабочем компьютере. От испытуемого требовалось: 1) разобраться в алгоритме предложенной программы; 2) найти и исправить имеющиеся в ней ошибки; 3) доработать или создать собственную программу, соответствующую его представлениям о качественном программном продукте, корректно выполняющую данный алгоритм. При этом испытуемым давалась инструкция «Решайте задачу, рассуждая вслух». Испытуемый прекращал работу, когда считал, что выполнил задание, либо если приходил к мнению, что он не может разобраться в алгоритме. Время выполнения задания не ограничивалось. Вся процедура занимала от 1 до 4 часов. Ход эксперимента записывался на диктофон для дальнейшего анализа, экспертами анализировалась написанная испытуемыми в ходе исследования программа.

Результаты и обсуждение

Для анализа результатов исследования нами были привлечены эксперты — компетентные, высококва-

лифицированные специалисты в области создания программного обеспечения. Процедура отбора экспертов включала три этапа. Первоначально были определены совокупные критерии оценки компетентных специалистов ИТ, которыми выступили: опыт работы в сфере ИТ (количество лет, количество созданных успешных программных продуктов), знание языков программирования (количество, степень изученности), знание методологий разработки программного обеспечения, образование (профильное базовое образование, дополнительные профильные курсы). На втором этапе с претендентами проводилось обсуждение общих критериев компетентности специалистов ИТ (программистов), в ходе которого была выработана обобщенная оценочная карта компетентности программиста. На заключительном этапе участникам предлагались решения задач программистами в рамках пилотажного исследования. От будущих экспертов требовалось оценить уровень компетентности программистов по результатам оценки продуктов профессиональной деятельности (готового программного обеспечения) и анализа диктофонных записей процесса размышления вслух в ходе написания программного продукта. Те, у кого данный вид оценивания не вызвал затруднений и кто четко аргументировал и обосновал свои позиции, стали экспертами.

Отобранные нами двое экспертов на основании диктофонной записи процесса решения и текстов исходных кодов, полученных от испытуемых программ, осуществляли оценку результатов решения. Для этого была

разработана «Оценочная карта компетентности», согласно которой оценка складывалась из трех блоков показателей: 1) оценка определения требований к программе, 2) оценка процесса разработки/переработки программы, 3) оценка программного продукта. Каждый блок включал ряд характеристик. В первом и втором блоке использовались характеристики, разработанные на основе ГОСТа 19.102-77, который определяет этапы и содержание работ по разработке ИС. В третьем блоке использовались характеристики ГОСТа Р ИСО/МЭК 9126-93, которые описывают качество программного обеспечения. Также для каждой характеристики был определен свой «вес». Таким образом, на основе балльной оценки каждого показателя с учетом его «веса» была получена итоговая оценка компетентности для каждого испытуемого. На основании показателей экспертных оценок нами были выделены две группы: 1) высококомпетентные и 2) низкокомпетентные программисты.

Заметим, что наблюдается статистически значимое различие между выделенными группами по стажу работы программистом. Среднее количество лет, проработанных в сфере ИТ, у низкокомпетентных равно М = 3.86; SD = 4.50, у высококомпетентных М = 9.72; SD = 4.97; и Ман-на-Уитни = 72.0; p < 0.001. В целом можно говорить о том, что решившие задачу испытуемые являются высококомпетентными специалистами (экспертами), значимо дольше работающими в сфере 1Т. В связи с этим разумно использовать названия «эксперты» и «новички» для выделенных групп.

Кроме этого, для каждого испытуемого экспертами определялась успешность решения профессиональной задачи. В качестве показателей успешности использовалось: 1) понимание предъявленного алгоритма; 2) обнаружение и исправление ошибок, которые были заложены в условия экспериментальной задачи; 3) наличие доработанной/написанной собственной программы. Успешность измерялась по шкале 0-4 балла; решившими считались испытуемые, набравшие 3 и 4 балла. Помимо этого, эксперты в распечатанном протоколе каждого испытуемого выделяли значимые моменты решения (так называемые «точки перегиба»), т. е. попадания испытуемыми в значимые для решения затруднительные ситуации. Для каждого испытуемого было подсчитано

1) количество «точек перегиба», в которых встречаются все четыре описанные выше метакогнитивные стратегии критического мышления, а также

2) «точки перегиба», где присутствуют лишь некоторые из них.

Оценка полученных таким образом данных проводилась с использованием методов непараметрической статистики, а также процедур дисперсионного и дискриминантного анализа.

Для проверки первой гипотезы мы сравнивали количество ситуаций 1) у экспертов и новичков. Проведенный частотный анализ показал, что в первой группе медиана значений количества общих стратегий равна М = 4.00, SD = 2.81, а во второй М = 0.01, SD = 0.79. Различия между группами статистически значимы: и-Манна-Уитни = 27.0, p < 0.001. На основе полученных данных можно сделать вывод: эксперты чаще используют критическое

мышление в значимые моменты решения, чем новички. Иначе говоря, в затруднительных ситуациях, характеризующихся относительной сложностью и новизной, у компетентных программистов, в отличие от некомпетентных, наблюдается интенсивное использование связанных между собой стратегий критического мышления, что нехарактерно для новичков. Приведем примеры.

Метакогнитивные стратегии критического мышления в «точках перегиба» у высококомпетентных программистов:

Исп. № 17. ФИКСАЦИЯ: «м-м-м, так». ОЦЕНКА: «Я думаю, что мое предположение оказалось не верным». ВЫБОР: «Что в выражении, где только плюсы и минусы — не важно, где расставить скобочки». АРГУМЕНТАЦИЯ: «Поскольку, если перед скобочкой стоит минус, то знаки внутри обернутся и результат получится другой».

Исп. № 15. ФИКСАЦИЯ: «Сейчас я проверяю правильность своего предположения». ОЦЕНКА: «...Но только если по краям от этого выражения стоят минусы, если же там умножение, то там уже приоритет просматривается, АРГУМЕНТАЦИЯ: что тоже на расстановку скобок влияет». ВЫБОР: «Это уже тогда не все надо исключать, а только те, по бокам от которых минусы стоят».

Метакогнитивные стратегии критического мышления в «точках перегиба» у низкокомпетентных программистов:

Исп. № 20. АРГУМЕНТАЦИЯ: «Мне нравится функция Са1с, я вижу, что она написана хорошо, и в ней запутанностей я не вижу». ОЦЕНКА: «Я не до конца разобрался, как она работает, но, начав писать, я понял, что у меня алгоритм будет не проще».

Исп. № 23. ФИКСАЦИЯ: «Не знаю, ничего здесь ...». ВЫБОР: «Тут надо либо

брать какую-то формулу и над ней экспериментировать . либо, пока в голову ничего не приходит».

Все это свидетельствует о том, что эксперты значительно более активны в попытках понять причины своих затруднений и сомнений и тратят сравнительно больше усилий как на создание адекватной репрезентации условий, так и на нахождение контрпримеров, которые позволяют опровергать гипотезы. Наряду с этим для осуществления выбора дальнейшего хода рассуждения эксперты основываются на общих суждениях, в то время как новички либо не дают никаких обоснований своего выбора, либо ориентируются на те знания, которые непосредственно актуализируются в связи с условиями задачи.

На рис. 1 отражены различия в группах, успешно решивших и не решивших задачу в зависимости от наличия всех четырех стратегий критического мышления в «точках перегиба».

Наблюдаемые различия (х2 = = 14.569, р <0.001) позволяют говорить о недостаточной сформиро-ванности критического мышления в группе испытуемых, не решивших задачу. Фиксируя сложность ситуации (ФИКСАЦИЯ), они не склонны были оценивать и анализировать ее возникновение (ОЦЕНКА). Так, в группе успешно решивших задачу только в 11% случаев встречается ФИКСАЦИЯ затруднений без дальнейшей их ОЦЕНКИ, а у не решивших этот показатель составляет 71%. Более того, эти испытуемые очень редко выдвигали альтернативы дальнейшего разрешения ситуации (ВЫБОР), а если и рассматривали

Рис. 1

Процентное соотношение количества испытуемых в группах успешно решивших и не решивших задачу в зависимости от наличия или отсутствия стратегий критического мышления

несколько альтернатив, то останавливались на такой (АРГУМЕНТАЦИЯ), которая наиболее доступна, что чаще всего не вело к успеху.

Пример использования метакогни-тивных стратегий критического мышления испытуемым, не решившим задачу:

Исп. № 24, новичок: ФИКСАЦИЯ: «Думаю, что сделать с этими числами, которые нашел в этой строке». ОЦЕНКА: «Ну, есть несколько вариантов: можно просто расставлять скобки, будет функция, которая будет расставлять скобки, потом проверять всевозможные варианты, вариант, при котором будет максимальное значение, тот и выдавать — это первый вариант решения этой задачи. Функция, которая просто расставляет скобки... Какие еще могут варианты быть?» ВЫБОР: «Ну, вот этот». АРГУМЕНТАЦИЯ: «Наверно, самый оптимальный. менее затратный. Поиск идет, так, сейчас остановимся на чем-нибудь. Что же мне придумать еще кроме этого. если ничего больше нет, то на этом я, наверно, остановлюсь.»

Эксперты же демонстрировали лучшую ориентацию в собственных знаниях. Их мастерство состояло в выборе направления решения с использованием в «точках перегиба» общих эвристических стратегий, которые способствуют отсеву подчас очень заметных, но иррелевантных с точки зрения решения проблемы деталей или гипотез. Это делало возможной концентрацию на существенных для решения моментах.

Пример метакогнитивных стратегий критического мышления испытуемого, решившего задачу:

Исп. № 17, эксперт: ФИКСАЦИЯ: «Выражения, вот они». ОЦЕНКА: «Мне нужна функция для вычисления выражения, которое у меня есть. Он как бы использовал в своей программе массив чисел и массив операций». ВЫБОР: «Я вот сейчас думаю, поступить мне также или придумать что-то свое. Ту реализацию я видел и думаю, какие могут быть еще реализации вычисления такого вот выражения». ВЫБОР, ОЦЕНКА:

«Я думаю, как оно будет представлено: может быть, массивом, может быть, стеком каким-то. Т. е. я сейчас рассматриваю вариант со стеком, может, это и упростит значительно задачу, может быть, вообще никак не повлияет, может, ухудшит». АРГУМЕНТАЦИЯ: «Пока я не вижу, чем мне может параллельный вариант помочь». ВЫБОР: «Буду точно так же с массивами оперировать».

Для более точной проверки первой гипотезы мы решили оценить различия в успешности решения задачи экспертами и новичками в зависимости от количества обнаруженных общих эвристических стратегий критического мышления. Нас интересовали испытуемые с малым количеством (0 или 1 общая эвристическая стратегия на все решение) и большим количеством (>2) подобных полных наборов. В первом случае испытуемым присваивался первый ранг, во втором — второй.

На рис. 2 отражена успешность решения профессиональной задачи в группах высококомпетентных и низкокомпетентных программистов с разными рангами критического мышления. Дисперсионный анализ показателей успешности решения показал значимое влияние фактора ранга критического мышления ^ = = 10.969, р <0.01).

Кроме того, было выявлено значимое взаимодействие между рангом критического мышления и фактором группы ^ = 6.065, р < 0.05).

Таким образом, можно сделать вывод, что существует значимая разница между экспертами и новичками: во-первых, в успешности решения задачи, во-вторых, в количестве используемых ими стратегий критического мышления в процессе рассуждения. Кроме того, количество общих эвристических стратегий критического мышления положительно связано с

Рис. 2

Средние оценки успешности решения испытуемыми задачи в группах с разным уровнем компетентности и с разными рангами критического мышления (1-й ранг — не более одной общей эвристической стратегии на все решение, 2-й ранг — две и более стратегий)

успешностью решения профессиональной задачи.

Далее мы попытались ответить на вопрос, можно ли, используя выделенный набор метакогнитивных стратегий критического мышления, отличить группу экспертов от новичков: насколько хорошо эти переменные позволяют провести различение и какие из них наиболее информативны.

Для этого был использован дис-криминантный анализ. В качестве группирующей переменной был взят показатель компетентности программиста. В исходную совокупность дискриминантных переменных были включены стратегии: ФИКСАЦИИ, ОЦЕНКИ, ВЫБОРА и АРГУМЕНТАЦИИ. Результаты анализа (см. табл. 1) показывают статистически значимые различия между группами испытуемых по каждой дискрими-

нантной переменной. Перечисленные переменные используются для вычисления канонической дискри-минантной функции, предсказательная сила которой позволяет нам говорить о различении или совпадении групп. Результаты анализа такой функции приведены в табл. 2; она с высокой степенью значимости различает две группы испытуемых. По величине стандартизированных коэффициентов (см. табл. 3) можно сделать вывод о том, что все метакогни-тивные стратегии обладают дис-криминативной способностью. Чем больше значение этих переменных, тем выше вероятность попадания в группу высококомпетентных программистов. Таким образом, наше предположение о том, что успешность решения профессиональной задачи в группах с разным уровнем компетентности связана с наличием и количес-

Табл. 1

Результаты ANOVA для каждой дискриминантной переменной

Лямбда Вилкса F df1 df2 Уровень значимости

ФИКСАЦИЯ 0.649 18.385 1 34 0.000

ОЦЕНКА 0.563 26.436 1 34 0.000

ВЫБОР 0.624 20.495 1 34 0.000

АРГУМЕНТАЦИЯ 0.545 28.337 1 34 0.000

Табл. 2

Собственные значения для канонической функции

Каноническая функция

Собственное значение 1.056

% объясняемой дисперсии 100

Коэффициент канонической корреляции 0.717

Уровень значимости 0.000

Табл. 3

Стандартизованные дискриминантные коэффициенты

Переменные

ФИКСАЦИЯ 0.888

ОЦЕНКА 0.858

ВЫБОР 0.755

АРГУМЕНТАЦИЯ 0.715

твом общих эвристических стратегий критического мышления в «точках перегиба», в целом подтвердилась.

Полученные результаты позволяют сделать следующие выводы:

- критическое мышление тесно связано с успешностью решения профессиональных задач: этот эффект обеспечивается входящими в его состав метакогнитивными стратегиями;

- анализ различий между экспертами и новичками свидетельствует о

том, что они заключаются в интенсивности использования критического мышления в ходе разрешения профессиональных проблемных ситуаций. Для компетентных программистов характерно присутствие всех четырех метакогнитивных стратегий критического мышления в значимых ситуациях затруднения в ходе решения — «точках перегиба». Это позволяет оценивать собственные действия в ходе решения задачи и обосновывать их правильность.

Литература

Величковский Б.М. Когнитивная наука: Основы психологии познания. В 2 т. М.: Смысл: Издательский центр «Академия», 2006. Т. 2.

Дьюи Дж. Психология и педагогика мышления. М.: Лабиринт, 1999.

Непейвода Н.Н. Многомерное критическое мышление. Ижевск, 1997.

Рубинштейн СЛ. Основы общей психологии. СПб.: Питер, 2001.

Семенов И.Н. К нормативному анализу познавательной деятельности при решении творческих задач // Психо-

логические исследования. М.: Изд-во МГУ, 1977. Вып. 7. С. 39-49.

Семенов И.Н. Проблемы рефлексивной психологии решения творческих задач. М.: Знание, 1990.

Спиридонов В.Ф. Психологический анализ феномена компетентности // Исследования обучения и развития в контексте культурно-исторического подхода. М., 2002. С. 285-295.

Спиридонов В.Ф. Психология мышления: решение задач и проблем. М., 2006.

Стрелков Ю.К. Инженерная и про- Холодная МА. Психология интеллекта:

фессиональная психология. М., 2001. парадоксы исследования. СПб.: Питер, 2002.

Кукушкина Юлия Андреевна, Российский государственный гуманитарный университет, аспирант

Контакты: j.a.kukushkina@gmail.com

Спиридонов Владимир Феликсович, Российский государственный гуманитарный университет, доктор психологических наук

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Контакты: vfspiridonov@yandex.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.