Вы находитесь на сайте журнала "Вопросы психологии" в девятнадцатилетнем ресурсе (1980-1998 гг.).  Заглавная страница ресурса... 

73

 

ОПЫТ ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ В ШКОЛЕ

 

А.В. ВАРТАНОВ, В.К. ЖУДОВ, М.Н. КИОСА, Е.Н. СОКОЛОВ

 

Обычно при обучении специальности «программист», «программист-оператор» школьникам даются знания об одном или нескольких алгоритмических языках, а также некоторые сведения об ЭВМ, ее назначении и возможностях, об используемой на данной ЭВМ операционной системе. Однако на современном этапе школьников необходимо обучать не просто умению работать с ЭВМ, но таким приемам работы, которые обеспечивали бы ее эффективное использование. Являясь инструментом, ЭВМ вместе с соответствующим программным обеспечением должна быть прежде всего удобным и эффективным средством решения тех задач, ради которых она создавалась. Поэтому на первый план теперь выдвигается необходимость повышения производительности труда программистов, а также обеспечения высокого потребительского качества разрабатываемых вычислительных систем и программ. Различные аспекты взаимодействия человека  с ЭВМ изучаются наукой «Психология программирования». Уже сегодня усилиями различных ученых и практиков накоплены значительные знания о приемах и методах программирования, обеспечивающих эффективность работы программистов, выделены основные критерии, которым должна удовлетворять качественная программа.

Экспериментальное обучение программированию школьников  старших классов средней школы № 710 Москвы проводилось факультетом психологии совместно с факультетом вычислительной математики и кибернетики (ВМ и К) и научно-исследовательским вычислительным центром (НИВЦ) МГУ в 1984/87 учебных годах.

В 1984/85 учебном году на факультете психологии школьники девятых классов изучали последовательно языки Бейсик и Фортран с помощью автоматизированной обучающей системы «Наставник», созданной под руководством Н.П. Брусенцова на факультете ВМ и К МГУ по специально разработанным учебным пособиям «Минимальный Бейсик» и «Базисный Фортран». Параллельно в течение всего года им читался курс лекций по основам программирования и вычислительной техники. После обучения соответствующему алгоритмическому языку следовали практика составления программ и работа в дисплейном классе факультета психологии, которая показала высокую эффективность обучения в компьютерной системе «Наставник». Включение школьников в систему «Наставник» способствовало также развитию их умения самостоятельной работы с учебником, самообучения, что очень важно для профессии программиста.

В следующем учебном году для этих школьников, перешедших в Х класс, на базе НИВЦ МГУ был подготовлен курс лекций «Алгоритмические языки и программирование» (2 ч в неделю) с практической работой на ЭВМ БЭСМ-6 (4 ч в неделю). Основой экспериментального обучения десятиклассников явилось всестороннее обсуждение вопросов качества и способов повышения эффективности создаваемых программных продуктов.

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

 

74

 

в следующих вопросах: 1) программирование как человеческая деятельность: классы пользователей ЭВМ, состав работ, выполняемых программистом; 2) параметры и критерии оценки качества программ: метрики Боэма, Брауна и Лайпоу, метрики программного обеспечения Джилба, наука о программах Холстеда; 3) стиль программирования, характеристика средств языка программирования: стили комментирования и другие приемы документирования программы, блок-схемы, выбор имен переменных, условные операторы, структурированное управление, рекомендации по отладке программы; 4) оценки производительности программирования: надежность, удобство поддержания, сложность и понимаемость программ; 5) организация совместной работы программистов: способы организации бригады, методы проверки проектов и текстов программ; 6) системы без данных и модели данных: иерархическая, сетевая и реляционная модели данных; 7) языки запросов и манипулирования данными: требования к удобному для пользователей языку, операции над базой данных и средства формулирования запросов, сравнение языков; 8) система с использованием естественного языка: техническая осуществляемость и практическая полезность диалога на естественном языке с ЭВМ; 9) проблемы диалоговых интерфейсов,  вспомогательное оборудование и психологические требования к организации диалога: отношение пользователей, управление, время ответа, разделение времени и пакетная обработка, способы взаимодействия с пользователем, обработка ошибок; 10) проектирование интерактивных систем: цели проектирования, процесс проектирования.

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

I. Работая на ЭВМ БЭСМ-6 коллективного пользования, школьники имели возможность пользоваться общими библиотеками программ, развитым математическим обеспечением, эксплуатируемым в НИВЦ МГУ. При этом им приходилось самостоятельно работать в научной библиотеке им. А.М. Горького МГУ. Таким образом, при решении производственной задачи  школьнику приходилось самостоятельно работать с программной документацией и учебными материалами, пользоваться инструкциями и описаниями программно-аппаратных средств вычислительных систем. Это способствовало укреплению навыков, самообучения, столь необходимых в работе программиста.

II. Знания, получаемые школьниками из теоретического курса о параметрах качества программ и стиле программирования, подкреплялись их практическим использованием. Оценка программ осуществлялась с учетом всех основных параметров качества и определялась не только преподавателем, но и самими школьниками в соответствии с принятыми приемами и процедурами оценки качества программы. Это не только повышало ответственность школьника за изготовление по-настоящему качественного программного продукта, но и способствовало формированию приемов и навыков оценки качества продукта как чужого, так и своего труда, что являлось средством развития самоконтроля.

III. Для формирования навыков совместной работы во втором полугодии школьники были объединены в бригады по 5—7 человек. Школьники входили в бригаду добровольно, в соответствии с желаниями всех членов бригады, и избирали своего бригадира. При этом бригада сразу определяла, какую задачу из предложенного перечня задач она будет решать. При организации бригады учитывались как личные качества и уровень подготовки школьников, так и их интересы — предложенные задачи различались по направленности (из области физики, математики, вспомогательные задачи программного обеспечения и др.). Однако все предлагаемые задачи были такой степени сложности, которая требовала участия всех членов бригады (в одиночку школьники не смогли бы справиться с их решением к заданному сроку). Цель работы бригады — получение к

 

75

 

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

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

В 1985/86 учебном году непосредственно в школе был создан класс «Наставник» сначала с 16, а затем и с 30 мини-терминалами, в котором школьники девятых классов последовательно овладевали алгоритмическими языками «Минимальный Бейсик» и «Базисный Фортран». В 1986 г. класс компьютеризованного обучения был дополнен персональными компьютерами ДВК-2 и ДВК-1, что позволило организовать практические занятия непосредственно в школе. В следующем учебном году эти школьники приступили к занятиям в НИВЦ МГУ по программе, уже опробованной для учащихся десятых классов.

Положительный опыт овладения алгоритмическими языками в девятых классах позволил организовать изучение информатики и основ вычислительной техники в восьмых классах. В 1986/87 учебном году изучение информатики в системе компьютерного обучения «Наставник» с практической работой на мини-компьютерах ДВК-2 и ДВК-1 организовано и в седьмых классах. В дальнейшем с расширением возможностей практической работы на ЭВМ начало обучения будет последовательно смещено в VI, V и IV классы. Изучение информатики, таким образом, станет планомерно усложняться в соответствии с расширением знаний учащихся. В дальнейшем планируется создание компьютеризованного практикума по физике, химии и биологии с использованием ЭВМ.

 

Поступила в редакцию 21.V 1987 г.