Министерство науки и образования Санкт-Петербургский государственный университет информационных технологий, механики и о...
23 downloads
155 Views
304KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Министерство науки и образования Санкт-Петербургский государственный университет информационных технологий, механики и оптики ОПИСАНИЕ работы, представленной на соискание Премии Президента Российской Федерации в области образования за 2003 год Разработка концепции и создание организационной структуры, учебнометодического и программного обеспечения инновационной системы подготовки высококвалифицированных кадров в области информационных технологий Васильев В. Н., д.т.н., профессор, ректор Санкт-Петербургского государственного университета информационных технологий, механики и оптики - - руководитель работы Асанов М. О., к.ф.-м.н., доцент, декан математико-механического факультета Уральского государственного университета Вояковская Н. Н., старший преподаватель Санкт-Петербургского государственного университета Евстигнеев В. В., д.т.н., профессор, ректор Алтайского государственного технического университета Елизаров Р. А., ассистент Санкт-Петербургского государственного университета информационных технологий, механики и оптики, Кирюхин В. М., к.т.н., доцент, доцент Московского инженерно-физического института (технического университета) Михалев А. В., д.ф.-м.н., профессор, проректор Московского государственного университета Парфенов В. Г., , д.т.н., профессор, декан факультета информационных технологий и программирования Санкт-Петербургского государственного университета информационных технологий, механики и оптики Станкевич А. С., ассистент Санкт-Петербургского государственного университета информационных технологий, механики и оптики, Федорова Антонина Гавриловна, к.т.н., доцент, доцент Саратовского государственного университета Санкт-Петербург 2004
Оглавление 1. Творческие конкурсы по информатике и программированию как инструмент 3 подготовки
высококвалифицированных
кадров
в
области
информационных
технологий 2.
Организационная
структура
и
история
развития
Всероссийских
и 7
Международных студенческих олимпиад по информатике и программированию 3. Сетевые системы интернет-поддержки творческих конкурсов по информатике и 12 программированию 3.1. Олимпиадные интернет-системы
12
3.2 Интернет-школы информатики и программирования
21
3.3. Единая сетевая среда интернет-поддержки
27
4. Результаты выступлений российских команд в командном чемпионате мира по 29 программированию Заключение Основные публикации
30 31
2
1. Творческие конкурсы по информатике и программированию как инструмент подготовки
высококвалифицированных
кадров
в
области
информационных
технологий Последние пятнадцать лет стали временем бурного развития компьютерной техники и компьютерных технологий. В области высоких технологий, связанной с разработкой компьютерных технологий, «человеческий фактор» является не просто решающим, а имеет доминирующее значение. Доля стоимости зданий, техники и т.д. в общей стоимости крупнейших компьютерных корпораций является ничтожно малой по сравнению со стоимостью работающих в них высококвалифицированных специалистов. Особую ценность представляют наиболее талантливые сотрудники, способные стать лидерами научно-технических работ. Например, успех корпорации Microsoft объясняется не только правильной экономической стратегией ее руководства, но и тем фактом, что благодаря целенаправленной политике корпорации по подбору кадров ей удалось привлечь к своим разработкам выдающихся специалистов со всего мира. Ситуация в области компьютерных технологий является одним из проявлений общей тенденции, имеющей место в индустрии высоких технологий. В последние полтора десятка лет в ведущих развитых странах большое внимание стало уделяться обеспечению процесса технологического переноса научных достижений высокого уровня в конкретную продукцию, в полной мере отвечающую складывающейся рыночной ситуации. Ведущие фирмы ведут поиск и подготовку нового поколения исследователей-разработчиков, которые могли бы работать как ученые высшей квалификации и вместе с тем обладали бы желанием видеть результаты практических приложений своих исследований, а также профессиональными навыками, позволяющими добиться этих результатов. Специалисты подобного профиля относятся к научно-технической элите государства и представители кадровых служб крупнейших фирм и корпораций ведут их поиск среди студентов вузов за два-три года до выпуска методами, образно сравниваемыми в публикациях авторитетных изданий с приемами, используемыми селекционерами футбольных клубов. В связи с этим в настоящее время во всех развитых странах огромное внимание стало уделяться построению целенаправленного процесса формирования научно-технической элиты в области высоких технологий, и все большее распространение стали получать имеющие мощную государственную и корпоративную поддержку многоуровневые системы подготовки. Соответственно потребовались модернизация старых и создание новых 3
организационно-методических подходов и организационных структур для реализации систем подобного вида, нацеленных на поиск и подготовку талантливой молодежи. В последнее десятилетие формирование такой элиты в области компьютерных технологий стало сталкиваться с трудностями. Они обусловлены, в частности, общим падением интереса молодежи к занятиям точными науками, сильным оттоком в промышленность наиболее активных и способных университетских преподавателей, негативным воздействием на молодежь клиповой и интернет-культур, компьютерных игр, телевидения и т.д., приводящих к сдвигам в психике молодых людей, препятствующим их долговременной сосредоточенной умственной деятельности, общим уменьшением настроя молодежи на напряженную трудовую деятельность. В этой ситуации одним из наиболее эффективных инструментов решения задач поиска, подготовки и трудоустройства талантливых молодых людей в области информационных технологий показала себя инновационная система, опирающаяся на организационную структуру студенческого чемпионата мира по программированию. Олимпиады по информатике и программированию отлично зарекомендовали себя в поиске и подготовке наиболее квалифицированных специалистов и ученых в области компьютерных технологий. Это обусловило интенсивное развитие и огромную популярность, а также широкое
распространение
по
всему
миру
олимпиад
по
информатике
и
программированию. Неслучайно генеральный спонсор студенческого чемпионата мира по программированию ─ корпорация Microsoft, вложила за четыре сезона в организацию студенческих чемпионатов мира по программированию около 27 миллионов долларов. Получившая всемирную известность российская система образования в области точных наук в значительной степени базировалась на уникальной системе олимпиад и творческих конкурсов
по
математике,
физике,
информатике
и
программированию.
Эта
многоступенчатая система имела в своей основе олимпиады и конференции, проводимые в отдельных учебных заведениях, и заканчивалась Всероссийскими (Всесоюзными) и Международными олимпиадами. Однако в последние полтора десятка лет именно олимпиады по информатике и программированию оказались наиболее востребованными для
подготовки
высококвалифицированных
кадров
в
области
информационных
технологий. Неслучайно, что эти олимпиады являются единственными предметными олимпиадами, у которых сформировалась мощная международная структура как на студенческом, так и на школьном уровнях. Благодаря широкому использованию сетевых 4
компьютерных технологий, на основе которых были разработаны новые оригинальные технологические, программные и учебно-методические решения, удалось существенно изменить порядок проведения традиционных олимпиад, расширить их масштаб, изменить организационную структуру и в итоге получить качественно новый результат в решении задач подготовки разработчиков компьютерных технологий высшей квалификации. Одной из основных причин успешного использования олимпиад по информатике и программированию для формирования контингента наиболее талантливых разработчиков является отличительная особенность условий, в которых осуществляется формирование кадрового потенциала в области компьютерных технологий, связанная с весьма ранней профессиональной
подготовкой
и
ранним
началом
профессиональной
трудовой
деятельности исследователей и разработчиков. По существу, знания, умения и навыки, полученные на первых трех курсах при изучении фундаментальных дисциплин в области компьютерных информационных и сетевых технологий, играют огромную, если не решающую роль, в становлении специалиста. Поэтому при выборе специальных способов интенсификации учебного процесса необходимо учитывать возрастной фактор. И в этом случае использование творческих конкурсов позволяет решить ряд важных задач. Практика показывает, что весьма эффективным при интенсификации учебного процесса для молодых людей является использование в нем элементов коллективных игр и соревнований. Вторым важным способом интенсификации учебного процесса является также организация в вузах коллективов из наиболее способных, увлеченных и трудолюбивых
студентов,
ориентированных
на
выстраивание
серьезной
профессиональной карьеры в области информационных технологий. В рамках этих коллективов
наблюдается
возникновение
дополнительных
положительных
воспитательного и учебного эффектов, вызванных взаимным влиянием их членов друг на друга. Указанные два пути хорошо реализуются при использовании олимпиад по информатике и программированию в учебном процессе. При этом разработанные в процессе проведения олимпиад учебно-методические технологии дают заметный положительный эффект при внедрении в организацию обычного текущего учебного процесса. Таким образом, во многом благодаря объединяющей и организующей роли олимпиад, в вузах возникают неформальные сообщества преподавателей и студентов, интересующихся
фундаментальными
и
прикладными
вопросами
из
области
компьютерных технологий, регулярно проводятся семинары и тренировочные занятия, ведется селекционная работа среди школьников. То есть олимпиады по информатике и 5
программированию, имеющие в своей структуре широкую сеть отборочных творческих соревнований,
позволяют
по
существу
организовать
на
указанных
принципах
специальные учебный и селекционный процессы в масштабе всей страны. Весьма значительным оказалось влияние олимпиад по информатике и программированию и на использование сетевых компьютерных технологий в преподавании фундаментальных курсов в области информационных и коммуникационных технологий. Отметим, что существующий в настоящее время дефицит квалифицированных преподавателей в области компьютерных технологий впервые и задолго до того, как он стал заметен в широких масштабах, остро проявился именно при подготовке участников и проведении олимпиад по информатике и программированию. Это обстоятельство объясняется тем, что проведение олимпиад требует участия самых высококвалифицированных специалистов, которые оказались наиболее востребованными и высокооплачиваемыми в индустрии разработки компьютерных технологий и которые первыми покинули образовательные учреждения. Это привело к необходимости широкого использования в олимпиадах компьютерных информационных и сетевых технологий. Разработанные при этом учебнометодическое и программное обеспечение и технологии, в основе которых лежат системы автоматического тестирования программных решений и автоматические системы проведения олимпиад и творческих конкурсов, реализованные в сетевом варианте, в настоящее время начинают широко использоваться и в обычном учебном процессе. Прорабатываются и возможности переноса созданных технологий на другие учебные дисциплины. Таким образом профессиональное образование в области информационнокоммуникационных технологий оказалось на лидирующих позициях в направлении использования этих технологий в учебном процессе. Весьма важным является и общественно-политическое значение международных олимпиад по информатике и программированию, поскольку результаты выступлений в них могут внести достаточно весомый вклад в формирование положительного образа нашей страны в мировом сообществе и способствовать продвижению российских компаний на международный рынок разработок компьютерных технологий. И это тем более важно, что в настоящее время стал общепризнанным тот факт, что именно в области разработки программного обеспечения позиции России являются наиболее сильными и перспективными на мировом рынке высоких технологий.
6
Командный студенческий чемпионат мира по программированию ведет отсчет с 1977 года. В сезоне 2003/2004 гг. в студенческом чемпионате мира по программированию приняли участие более 3000 команд ведущих университетов из 75 стран. Он является главным мировым интеллектуальным творческим конкурсом, на котором молодые участники могут продемонстрировать свои способности в искусстве программирования в его классическом понимании и который поддерживает традиции этой замечательной области теоретической информатики. На первый взгляд кажется, что эти творческие состязания относятся к области "высокого чистого искусства", имеющего мало точек соприкосновения с реальной жизнью современного программиста. Круг из наиболее одаренных молодых людей, реально претендующих на победу в мировом первенстве, и их тренеров довольно узок, а математико-программистское содержание состязаний понятно достаточно ограниченному числу специалистов и педагогов высшей квалификации. Однако результаты этих интеллектуальных игр мировой программистской элиты представляют значительный интерес уже для гораздо более широких кругов, поскольку весь процесс формирования и подготовки команд опирается на всю образовательную, научную, промышленную и культурную компьютерную инфраструктуру данной страны. Эти результаты достаточно точно отражают международное распределение мирового компьютерного интеллектуального потенциала по различным странам и позволяют оценить способность нации не только использовать разработанные в других странах компьютерные технологии, но и вносить свой вклад в их создание. Способность страны выявить, собрать и воспитать несколько команд талантливых студентов, способных бороться за победу в финале мирового первенства, свидетельствует об общем уровне развития компьютерных технологий в данной стране и ее возможном будущем потенциале в этой области человеческой деятельности, а также непосредственно влияет на образ страны в глазах мирового сообщества. В прошедшие нелегкие для нашей страны годы участие и победы наших студентов в мировом первенстве были, как об этом говорят многочисленные отклики, сильным источников положительных эмоций для российских студентов и преподавателей. 2. Организационная структура и история развития Всероссийских и Международных студенческих олимпиад по информатике и программированию Ежегодный студенческий командный чемпионат мира по программированию среди сборных команд высших учебных заведений (ACM International Collegiate Programming Contest) проводится наиболее авторитетной в компьютерном мире международной 7
организацией ACМ ─ Assoсiation for Computing Machinery, начиная с 1977 года. Согласно выработанным за почти тридцатилетнюю историю правилам проведения соревнований команде, состоящей из трех участников, предоставляется один компьютер и предлагается в течение пяти часов решить максимальное число из восьми-десяти предложенных задач. Побеждает команда, решившая наибольшее число задач, а в случае равенства числа решенных задач ─ команда, затратившая меньше времени. Правильность предложенного решения проверяется достаточно быстро путем его проверки на системе тестов и результат подхода сообщается команде, спустя несколько минут после посылки решения в жюри. Поэтому соревнования проходят весьма динамично и зрелищно. Кроме того, коллективная форма работы наиболее соответствует современному характеру проведения разработок программного обеспечения. Все это и объясняет широкое распространение командных соревнований по всему миру. Организационная схема чемпионата мира включает три этапа: четвертьфинальный, полуфинальный и финальный. В частности, в сезоне 2003/2004 гг. на полуфинальных этапах команды соревновались в 30 региональных группах, среди которых были распределены вузы стран всех континентов. Команды-победительницы полуфинальных состязаний выходят в финал. Распределение финальных мест между полуфинальными отборочными группами определяет Международный исполнительный комитет. В 2003 году финал, в котором выступили 64 команды из ведущих университетов мира, прошел в Беверли Хиллз, США. По результатам финальных соревнований определяется команда чемпион мира, а также команды-чемпионы континентов. В силу огромной конкуренции в финале
используется
специальная
схема
награждения
медалями.
Организация
полуфинальных и четвертьфинальных студенческих состязаний обычно поручается базовым
университетам,
утверждаемым
вышестоящими
структурами.
Директор
полуфинальных состязаний обращается непосредственно к исполнительному директору чемпионата. Остановимся коротко на основных этапах становления организационной структуры полуфинальных соревнований Северо-Восточного Европейского региона. Впервые в чемпионате мира российские вузы приняли участие осенью 1993 года, когда в полуфинальных соревнованиях Восточного Европейского региона выступила команда СПбГУ (5 место). В сезоне 1994/95 гг. в полуфинальных соревнованиях Восточного Европейского региона участвовали команды СПбГУ ИТМО (3 место), МГУ (5 место) и СПбГУ (12 место). 8
Проанализировав результаты выступлений российских команд, петербургские педагоги и ученые, занимающиеся подготовкой одаренных молодых программистов, пришли к выводу о целесообразности проведения в Санкт-Петербурге городских студенческих и школьных олимпиад по правилам чемпионата мира. Эти олимпиады были организованы В.Н. Васильевым, В.Г. Парфеновым и А.А. Сухановым (с 1998 г. работает в США в корпорации Microsoft) в сезоне 1994/95 гг. для студентов (март 1995 г.) и для школьников (ноябрь 1994 г.). В каждой из них приняли участие примерно по двадцать команд ведущих вузов и физико-математических школ города. В отборочных соревнованиях сезона 1995/96 гг. команда СПбГУ ИТМО заняла первое место на полуфинальных соревнованиях Северо-Западного Европейского региона в Амстердаме и стала первой российской командой, вышедшей в финал чемпионата мира. Капитаном этой команды был второкурсник Р.А. Елизаров, который с 1998 года стал бессменным председателем жюри полуфинальных соревнований Северо-Восточного Европейского региона и возглавил по поручению Международного исполнительного комитета работы по разработке автоматической системы тестирования программных решений, которые проводятcя c 1999 года на базе СПбГУ ИТМО. На соревнованиях в Амстердаме
присутствовал
генеральный
директор
чемпионата
мира
профессор
Бэйлорского университета (Baylor University), США, Билл Пучер. Учитывая успешное выступление
российской
команды
на
этих
состязаниях,
которое
в
то
время
воспринималось участниками как сенсация, а также факт проведения подобных состязаний для студентов и школьников в Санкт-Петербурге, он сделал предложение руководителю команды СПбГУ ИТМО профессору В.Г. Парфенову об учреждении новой полуфинальной Cеверо-Восточной Европейской региональной группы, включающей вузы всех стран бывшего СССР за исключением Украины и Молдовы, и проведении состязаний этой новой группы в Санкт-Петербурге на базе СПбГУ ИТМО. На заседании Директората чемпионата в феврале 1996 года в Филадельфии профессор В.Г. Парфенов был назначен региональным директором новой полуфинальной группы. С 2000 года он входит в число членов Международного исполнительного комитета. В ноябре 1996 года состоялись первые полуфинальные соревнования Северо-Восточного Европейского региона. При их организации возникли трудности с обеспечением участия в них команд вузов Сибири и Дальнего Востока из-за больших транспортных расходов. Поэтому организационный комитет по инициативе В.Н. Васильева, В.Г. Парфенова и В.В. 9
Евстигнеева принял смелое по тому времени решение о синхронном проведении соревнований в двух городах: в Санкт-Петербурге и Барнауле, и использовании для их связи в реальном масштабе времени сети Интернет. Организация состязаний в Барнауле была поручена Алтайскому государственному техническому университету. Связь между Санкт-Петербургом
и
Барнаулом
осуществляла
федеральная
университетская
компьютерная сеть RUNNet, один из федеральных узлов которой находился в АлГТУ. Всего в Санкт-Петербург прибыли 52 команды, представлявшие 43 вуза из 30 городов России, Белоруссии, Киргизии и Эстонии, а в Барнаул – 19 команд, представлявших 15 вузов из 10 сибирских городов и Бишкека. Первые проведенные соревнования вызвали огромный
интерес
у
студентов
и
вузовских
преподавателей,
что
обеспечило
беспрецедентный рост числа команд-участниц полуфинальных соревнований СевероВосточного
Европейского
региона
в
последующие
годы
и
создание
системы
четвертьфинальных отборочных соревнований. Первыми четвертьфинальными отборочными соревнованиями за пределами СанктПетербурга стал первый чемпионат Урала по программированию, который был проведен в апреле 1997 года по инициативе и под руководством декана математико-механического факультета Уральского государственного университета М.О. Асанова. В сезоне 1998/99 гг. дополнительно к Северной (Санкт-Петербург, вуз-организатор – СПбГУ ИТМО) и Уральской (Екатеринбург, вуз-организатор ─ УрГУ) четвертьфинальным группам присоединились Западная четвертьфинальная группа (Минск, вуз-организатор ─ Белорусский государственный университет), Южная (Поволжская) (Саратов, вузорганизатор – Саратовский государственный университет), Центральная (Рыбинск, вузорганизатор ─ Рыбинская государственная авиационная технологическая академия), Дальневосточная (Владивосток, вуз-организатор ─ Дальневосточный государственный университет). В 1999 году создается Сибирская четвертьфинальная группа (Новосибирск, вуз-организатор – Новосибирский государственный технический университет), которая через год разделяется на Западно-Сибирскую и Восточно-Сибирскую четвертьфинальные группы (Красноярск, вуз-организатор ─ Красноярский государственный технический университет). В 2000 году к состязаниям подключаются Азербайджан, Армения и Грузия и создается Закавказская полуфинальная подгруппа (Тбилиси, вуз-организатор ─ Грузинский
технический
университет).
В
2000
году
в
составе
Западной
четвертьфинальной группы начинают выступать команды из Литвы, в 2002 году – из Латвии. В 2002 году появляется Узбекистанская полуфинальная группа (Ташкент, вузорганизатор – Ташкентский университет информационных технологий), а в 2003 – 10
Казахстанская (Алма-Ата, вуз-организатор ─ Казахский национальный университет). Соответственно резко возрастает число участвующих в олимпиаде команд, стран и университетов. В 1999 году в четвертьфинальных и полуфинальных соревнованиях приняли участие 237 команд, в 2000 – 273, в 2001 – 282, в 2002 – 364, в 2003 – 549. Рост числа участвующих университетов иллюстрируют следующие цифры: 1999 год – 118, 2000 – 130, 2001 – 133, 2002 – 155, 2003 – 210. Таким образом в текущем сезоне 2003/2004 гг.
соревнования
охватили
11
стран
СНГ
и
ближнего
зарубежья.
Всего
в
четвертьфинальных и полуфинальных соревнованиях сезона 2003/2004 гг. приняли участие 549 команды из 220 вузов, представляющих практически все ведущие классические и технические университеты России, Азербайджана, Армении, Белоруссии, Грузии,
Казахстана,
Киргизии,
Латвии,
Литвы,
Узбекистана
и
Эстонии.
Это
способствовало налаживанию культурных и научно-технических связей между ними. Таким образом к настоящему времени эти соревнования превратились в крупнейший за все время по географии и числу участников творческий научно-технический студенческий форум России и стран ближнего зарубежья. Северо-Восточная Европейская pегиональная полуфинальная гpуппа стала самой большой в чемпионате мира по числу участвующих команд, что позволило увеличить за прошедшие семь лет число мест в финале для этой гpуппы с двух (1996 г.) до одиннадцати (2004 г.). Студенческие олимпиады по информатике и программированию опираются на систему школьных олимпиад. В 2003 году прошла юбилейная пятнадцатая Всероссийская олимпиада школьников по информатике. На ней школьники соревнуются в личном зачете. Эта олимпиада опирается на систему региональных олимпиад, проводимых в субъектах федерации. Обычно в финальных соревнованиях данной олимпиады принимают участие около 130-150 школьников. Организационный комитет олимпиады с самого начала ее проведения возглавляет В.М. Кирюхин, который одновременно руководит и работой жюри. С 1999 года по инициативе В.Н. Васильева и В.Г. Парфенова проводятся Всероссийские командные олимпиады школьников по программированию, на которых школьники
соревнуются
по
правилам
студенческих
чемпионатов
мира
по
программированию. В 2003 году эта олимпиада прошла в четвертый раз. В ней приняли участие более 300 команд. В жюри студенческих и школьных олимпиад входят ведущие российские педагоги, занимающиеся с одаренными в области информатики и программирования студентами и школьниками
из
Москвы,
Санкт-Петербурга,
Барнаула,
Нижнего
Новгорода,
Екатеринбурга, Кирова, Ярославля и других городов России, где исторически сложились соответствующие педагогические школы. В последние годы активное участие в работе 11
оргкомитета и жюри принимают студенты и аспиранты, прошедшие школу участия во Всероссийских
и
Международных
олимпиадах.
По
материалам
прошедших
Всероссийских и Международных олимпиад педагогами, аспирантами и студентами издано большое число книг и учебно-методических пособий. Для выравнивания возможностей школьников из крупных научно-образовательных центров и небольших городов и населенных пунктов проводятся и специальные творческие конкурсы в области информационных технологий. К наиболее известным из них относятся проводимые СПбГУ ИТМО Всероссийская неделя «"Компьютерные технологии ─ школьникам России", которая в 2004 году прошла в четвертый раз, и Всероссийская олимпиада по информатике для учащихся закрытых административнотерриториальных образований (ЗАТО), отдаленных военных городков и гарнизонов, в ноябре 2003 года эта олимпиада прошла во второй раз. 3. Сетевые системы интернет-поддержки творческих конкурсов по информатике и программированию В последнее десятилетие в нашей стране был разработан ряд дистанционных интернетсистем, обеспечивающих информационную, методическую и учебно-тренировочную поддержку творческим конкурсам по информатике и программированию. Исторически системы дистанционной интернет-поддержки одаренных и профильномотивированных учащихся развивались по двум направлениям. Одно из них было связано с непосредственной поддержкой олимпиад по информатике, программированию и компьютерным технологиям. Эти системы предназначены для уже имеющих достаточно обширную базовую подготовку студентов и школьников. На соответствующих олимпиадных сайтах как правило представлены достаточно сложные олимпиадные задачи. Второе направление ориентировалось на учащихся, которые хотели получить начальную
подготовку
по
базовым
фундаментальным
курсам
компьютерных
информационных технологий и в случае успешного освоения материала перейти на следующую образовательную ступень и стать пользователями олимпиадных сайтов. Сайты второго направления обычно назывались интернет-школами или интернет-курсами. 3.1. Олимпиадные интернет-системы Первым в России олимпиадным сайтом была разработанная в СПбГУ ИТМО В.Н. Васильевым,
Р.А.
Елизаровым,
В.Г.
Парфеновым
и
А.А.
Сухановым
система 12
дистанционной интернет-поддержки полуфинальных соревнований Северо-Восточного Европейского
региона
http://neerc.ifmo.ru
,
которая
сначала
выполняла
только
информационную функцию. Затем ее функциональность была расширена и добавлены такие сервисы, как доступ к архивам задач, историческим справкам, ссылкам на региональные сайты, персоналиям и т.д. Примерно по такому же пути развивались и получившие известность олимпиадные системы дистанционной интернет-поддержки, разработанные
в
известных
педагогических
российских
центрах
–
Москве
(http://www.olympiads.ru), Кирове (http://www.informatics.ru, руководитель – С.М. Окулов), Саратове
(http://acm.sgu.ru,
руководитель
─
А.Г.
Федорова),
Екатеринбурге
(http://acm.timus.ru, руководитель – М.О. Асанов) и др. Принципиально новым шагом стало проведение в последние годы интернет-олимпиад и тренировочных интернет-туров, первые
из
которых
были
проведены
екатеринбургским
центром
подготовки
программистов, расположенном на математико-механическом факультете Уральского государственного университета. В настоящее время интернет-олимпиады и интернеттренировки стали достаточно обычным явлением в студенческих командных олимпиадах, что непосредственно связано с уменьшением затрат времени тренеров на подготовку тренировочных туров. Остановимся подробнее на особенностях организации олимпиадных сайтов, иллюстрируя их на примере одного из наиболее продвинутых в мире в функциональном отношении сайта http://neerc.ifmo.ru. Отметим, что в последнее время соревнования по программированию не ограничиваются олимпиадами. Оказалось, что соревнования по программированию можно также применять и в регулярном учебном процессе. Все более широкое применение находят тестирования – контрольные проверки знаний, умений и навыков учащихся, проводимые в форме соревнований в образовательных целях. В таких соревнованиях учащиеся решают задачи, отражающие прочитанный на уроках или лекциях материал. В такой же форме могут проводиться и тренинги учащихся. При этом учащийся, решивший задачу на практике, лучше усваивает материал и в дальнейшем, при необходимости решить подобную задачу как часть некоторой более глобальной проблемы (задачи, предлагаемые на тестированиях и тренингах, носят, как правило, достаточно ограниченный, конкретный характер), сделает это гораздо быстрее, чем в случае, если бы ему приходилось решать ее впервые.
13
Следует отметить, что именно способ определения победителя и построения таблицы результатов командного студенческого чемпионата мира по программированию взят за основу
большинством
современных
соревнований
по
программированию.
На
соревновании, проходящем по схеме чемпионата, участникам предлагается для решения несколько задач, которые они должны решать за ограниченное время и прямо во время соревнования посылать свои программы на проверку. Результатом проверки может являться либо сообщение, что отправленное на проверку решение ─ верное, либо что оно ─ неверное. В последнем случае участнику сообщается причина отклонения его решения и ему дается право еще раз попытаться решить эту задачу. В целом количество попыток не ограничено. Выше в таблице результатов соревнования оказывается участник, решивший большее число задач, а при равенстве количества задач набравший меньше штрафных баллов. Способы начисления штрафных баллов могут варьироваться, но обычно общий штрафной балл представляет собой сумму штрафных баллов, начисленных за каждую решенную задачу. При этом за каждую решенную задачу начисляются штрафные баллы, равные времени в минутах, прошедшему с начала соревнования до момента ее успешной отправки на проверку, и штрафных баллов, начисленных за неудачные попытки сдачи, которые равны числу неудачных попыток сдать задачу, умноженному на двадцать минут (штрафное время за одну неудачную попытку сдачи задачи). Для проверки верности решения используют последовательное исполнение программы на некотором наборе тестов. Если все тесты успешно проходят, то решение считается верным. В настоящее время число тестов, необходимых для надежной проверки правильности программы реальной олимпиадной или учебной задачи, может достигать многих десятков и их составление является весьма трудоемкой задачей, требующей привлечения высококвалифицированных специалистов. Указанный способ оценки решений не является единственным используемым. Так например, иногда применяют систему, когда за каждый успешно пройденный тест участнику начисляются баллы. На таких олимпиадах проверка проходит после их окончания, таким образом, допустима только одна попытка решения каждой задачи. Отметим, что особую популярность олимпиады по информатике и программированию получили лишь в последнее десятилетие, а довольно долгое время число участников оставалось сравнительно небольшим. Это позволяло на всех этапах проводить оценку решений вручную, то есть путем непосредственной оценки членом жюри ответа, выданного программой. Пожалуй, к единственному преимуществу такого метода можно отнести возможность использования достаточно произвольной формулировки формата 14
выходных данных для задачи. Однако по мере развития олимпиад количество участников и соответственно число предъявляемых ими для проверки решений стали быстро увеличиваться, и стала очевидной необходимость автоматизации проверки задач. Тогда появились первые системы автоматической проверки программных решений. Следует также отметить, что с увеличением числа участников олимпиад усложнилась и сама процедура их проведения. Многие соревнования стали проходить одновременно в географически разделенных местах – на различных сайтах. Появилась необходимость в системе автоматического управления соревнованиями по программированию. Еще больше проблема автоматического тестирования задач и управления соревнованиями обострилась, когда стало ясно, что олимпиадные методы можно приложить к обычному регулярному учебному процессу. Действительно, обучение программированию и языкам программирования ─ достаточно сложное занятие, а проверка правильности выполнения заданий чрезвычайно трудоемкий процесс, так что надежная индивидуальная проверка практически неосуществима. В свою очередь автоматическая проверка задач, особенно при наличии автоматической системы управления соревнованием (тестированием), позволяет провести их быстро, надежно и без привлечения большого числа высококвалифицированных специалистов. Исторически одной из первых в России и мире автоматических систем проведения соревнований по программированию стала система NPC, разработанная А.А. Сухановым в СПбГУ ИТМО в 1994 г. Она работала под управлением системы MS DOS и была построена на bat-файлах. Следующая версия системы NPC2 была написана уже на языке Borland Pascal 7.0
и
представляла
собой
программный
комплекс,
позволявший
осуществлять распределенное тестирование решений на нескольких компьютерах. Следующим этапом развития автоматических олимпиадных систем стало разделение системы проведения соревнований на систему проверки задач и систему управления соревнованием. Система проверки задач APPES (Automated Programming Problem Evaluation System) была изолирована от всех данных, связанных с соревнованием, и, получив на вход программу участника и задачу, которую эта программа решает, выдавала на выходе вердикт о правильности решения. Система управления соревнованием PCMS (Programming Contest Management System) в свою очередь занималась интерактивным общением с участниками и APPES, осуществляя управление соревнованием. APPES была написана на языке Java, а PCMS с использованием системы Borland Delphi. Указанные 15
системы были разработаны в СПбГУ ИТМО Р.А. Елизаровым, Г.А. Корнеевым и А.С. Станкевичем в 1999 (APPES)-2001 (PCMS) гг. Однако система PCMS хотя и способствовала появлению многих прогрессивных идей, но показала на практике свои некоторые существенные недостатки, проявившиеся как в неудобстве управления, так и в определенной нестабильности. Следует также отметить, что все упомянутые системы были скорее системами управления соревнованием, а не соревнованиями, поскольку в них не поддерживалось использование одних и тех же объектов в различных соревнованиях. Следует отметить также и альтернативные системы, используемые в соревнованиях. К ним относится, прежде всего, система PC^2, разработанная в Калифорнийском университете в городе Сакраменто, США, используемая в большинстве американских соревнований. Это типичная система управления соревнованием, которая при этом использует ручную проверку решений. Также можно отметить системы автоматической проверки задач, используемые в крупных интернет-архивах задач в испанском городе Вальядолиде и Екатеринбурге. Эти системы в частности характеризуются высокой надежностью, однако в силу специфики использования в основном ориентированы именно на проверку задач. В связи с вышеизложенными проблемами в 2001 году в СПбГУ ИТМО было принято решение о разработке новой сетевой системы интернет-поддержки олимпиад, которая позволяла бы осуществлять как автоматическую проверку задач, так и управление соревнованиями. Данная система получила название PCMS2. В связи с масштабностью проблемы разработка такой системы как единого целого была весьма затруднительна. Разумным решением явилось создание рабочей среды, в которой различные части системы взаимодействуют друг с другом. При этом каждая логически неделимая часть системы реализуется в виде компонента. Компоненты могут предоставлять различные сервисы и использовать сервисы, предоставляемые другими компонентами. Сервис представляет собой набор методов, доступных для вызова. В этом смысле сервис наиболее близок к понятию интерфейса, используемого в современных языках программирования. Каждый компонент имеет конфигурацию. Конфигурация содержит все необходимые для настройки этого компонента данные.
16
Доступ компонентов к конфигурации осуществляется посредством специального интерфейса рабочей среды – контекста компонента, благодаря чему код компонента не зависит от формата хранения конфигурации. Различные реализации рабочей среды могут использовать различные форматы хранения. В настоящее время для основной части системы в качестве формата конфигурации используется XML, а для клиентской части properties-файл. Работа системы построена таким образом, что компоненты запускаются и завершают работу независимо. При этом при изменении конфигурации компонента он автоматически перезапускается. Перезапуск компонента влияет только на те компоненты, которые используют сервисы, предоставляемые перезапускаемым компонентом. В случае либо возникновения непредвиденных обстоятельств, либо выхода какого-то процесса за рамки допустимого компонент также может попросить перезапустить его. Описанный выше метод разработки позволяет достичь высокой стабильности, а также благодаря четкому структурированию позволяет упростить и ускорить разработку отдельных компонентов. Однако при этом большое значение приобретает четкое проектирование
структуры
системы
и
взаимоотношений
между
отдельными
компонентами (предоставление и использование сервисов). Следует также обратить внимание на принципиально новый подход к данным о соревновании, примененный при разработке PCMS2. Ранее в большинстве систем управления соревнованиями данными для обработки считались только подходы участников, а информация о самих участниках и соревновании считалась настройками системы. Этот подход, удовлетворительный при проведении одного соревнования, не может считаться таковым при регулярном проведении соревнований или при проведении серий соревнований. Поэтому в системе PCMS2 к данным относится вся информация о соревновании, а не только подходы. Таким образом, система управления соревнованием стала системой обработки данных. Рассмотрим виды объектов, задействованные в соревновании. Первым и важнейшим объектом является участник соревнования Это может быть команда в командном соревновании или отдельный учащийся в персональном соревновании.
17
Также ключевым объектом является задача. Задача представляет собой некоторое требование, предъявляемое к участнику, результатом исполнения которого является программа на некотором языке программирования, которая решает задачу. Наконец, третьим объектом является подход – попытка участника решить задачу. В различных схемах соревнований может допускаться несколько подходов на одну задачу, либо только один, либо могут накладываться какие-то другие ограничения. Таким образом в любом соревновании существует только три вида объектов – участник, задача и подход. Большинство систем управления соревнованиями ограничиваются этими тремя объектами, в принципе достаточными для управления одним соревнованием. Однако в связи с развитием области применения соревнований появились специфические требования, для удовлетворения которых пришлось разработать новую, более гибкую систему объектов. Приведем основные требования, предъявляемые к модели внешних данных в системе управления соревнованиями, и краткие обоснования их выдвижения. 1. Система должна поддерживать использование одной и той же задачи в различных соревнованиях. Это требование появилось в связи с несколькими причинами. Во-первых, в связи с развитием олимпиадного движения появилась необходимость в проведении регулярных тренировочных соревнований для поддержания команд на конкурентоспособном уровне. При этом целесообразно использовать для тренировок задачи с различных архивных соревнований. Во-вторых, при использовании тестирований в учебном процессе одни и те же задачи могут использоваться либо для тестирования различных потоков, либо аналогичных потоков в различные учебные годы. Очевидно, что при большом количестве тестирований и тренировок невозможно обеспечить достаточное количество задач таким образом, чтобы использовать новые задачи на каждом тестировании и тренировке, поскольку процесс создания задач и систем тестов к ним один из немногих, не поддающихся автоматизации. 2. Задачи одного соревнования должны быть объединены в набор, который затем может полностью использоваться в другом соревновании. Это требование также может быть обосновано как с точки зрения тестирований, так и с точки зрения тренировок. В тестированиях необходимо использовать один и тот же набор задач для разных групп (при недостаточном количестве рабочих мест, что часто имеет место) или разных потоков, а в тренировках использование точного набора задач с реального соревнования позволяет 18
добиться более качественного результата за счет максимального приближения условий тренировки к реальности. 3. Один и тот же участник должен иметь возможность участвовать в нескольких соревнованиях. Действительно, как в учебном процессе, так и на тренировках каждый участник на самом деле принимает участие не в одном соревновании, а в целой серии. Поэтому для подведения суммарных итогов, получения статистических данных и просто для удобства управления соревнованием абсолютно необходима возможность участия одного и того же участника в нескольких соревнованиях. 4. Система должна быть способна одновременно обслуживать несколько соревнований. Это требование является следствием того, что количество рабочих мест и время часто ограничены, а при большом количестве различных тестирований и тренировок неизбежно появляются моменты, когда необходимо одновременно провести несколько соревнований. 5. Система должна быть способна регулярно создавать отчеты с информацией о текущем состоянии соревнования и таблицу результатов. Администратор системы должен иметь возможность произвольным образом исключать некоторых участников из отчета и снова включать их обратно. Это требование связано с необходимостью жюри на ответственных соревнованиях проводить тестирование различных моментов прямо в процессе соревнования и возможно создавать для себя дополнительных участников, которых настоящие участники и зрители, разумеется, не должны видеть в таблице результатов. 6. Система должна быть способна проводить одно и то же соревнование одновременно в нескольких географически разделенных точках (сайтах) и создавать для них общую таблицу результатов. Например, поскольку регион, к которому относится Россия в чемпионате мира, географически очень велик, необходимость проведения многосайтового соревнования обусловлена финансовыми причинами. Следует отметить, что в некоторых регионах соревнование проходит одновременно на девяти сайтах. 7. Система
должна
быть
способна
проводить
одновременно
несколько
соревнований по одному и тому же набору задач и создавать для них отдельные и общую таблицы результатов. Выполнение этого требования позволяет проводить одновременно с 19
очным соревнованием его интернет-версию, позволяющую участникам, по тем или иным причинам не участвующим в очном соревновании, неофициально заочно поучаствовать в соревновании и наглядно сравнить свои текущие результаты с результатами других участников, в том числе и участвующих очно. 8. Администратор системы должен быть способен определить для каждого участника свое время начала соревнования и иметь возможность в любой момент перевести соревнование в состояние “паузы” для каждого участника в отдельности. Это требование связано с возможностью выхода из строя рабочих мест участников в любой момент и соответствующими непредвиденными паузами в работе соответствующих участников. Это также позволяет иметь разные времена начала соревнований для различных сайтов. 9. Система должна быть способна создавать таблицу результатов, в которую были бы включены как результаты участников текущего соревнования, так и результаты участников, ранее участвовавших в соревнованиях, прошедших по тому же набору задач, что используется в текущем состязании. Это необходимо как на тренировках для активного сравнения общих (например, показанных на предыдущих состязаниях) результатов с результатами реальных участников текущей тренировки, так и на тестированиях, для построения общей таблицы результатов участников нескольких групп, решавших один и тот же набор задач. Удовлетворение приведенного набора требований позволило создать весьма гибкую систему управления олимпиадами с максимальными возможностями проведения различных соревнований, как в учебных, так и в тренировочных или олимпиадных целях. При разработке последней версии сетевой системы интернет-поддержки олимпиад были решены следующие задачи: 1. Разработана
концепция,
структура
содержательного
и
функционального
наполнения, спецификация сетевой системы интернет-поддержки олимпиад по информатике и программированию. 2. Создана спецификация задачи, как комплексного объекта, адаптированного для автоматизированной проверки. 3. Проведена
классификация
и
сформирован
банк
олимпиадных
заданий,
структурированный по уровню сложности, тематике и другим классификационным признакам. Банк разноуровневых задач олимпиад различных уровней размещен на 20
сайте http://neerc.ifmo.ru по адресу http://neerc.ifmo.ru/school/problem-index.xhtml. Банк учебных задач, большинство из которых в настоящее время используются в интернет-школе
информатики
и
программирования,
размещен
на
сайте
http://ips.ifmo.ru по адресу http://ips.ifmo.ru/personal/problem_list.jsp (требуется регистрация в интернет-школе). 4. Разработана методика построения и выполнена программная реализация системы автоматического тестирования программных решений. 5. Разработана
методика
построения
и
выполнена
программная
реализация
автоматической системы управления олимпиадами. 6. Разработаны
методические
рекомендации
для
педагогов
и
учащихся
по
использованию сетевой системы интернет-поддержки олимпиад по информатике и программированию в учебных целях. 7. Проведены объемные тестирование и апробация системы на многочисленных творческих конкурсах по информатике и программированию, в число которых в 2003 году входили: •
Полуфинальные
соревнования
Северо-Восточного
европейского
региона
командного чемпионата мира по программированию. В олимпиаде приняли участие 550 команд (1650 студентов) из 210 вузов России и стран ближнего зарубежья. Система использовалась как непосредственно для различных этапов олимпиады, так и для подготовки к ней. •
Всероссийская командная олимпиада школьников по программированию. В олимпиаде приняли участие более 300 команд из 50 городов Российской Федерации.
•
Всероссийская
олимпиада
школьников
закрытых
административных
территориальных образований (ЗАТО), удаленных гарнизонов и военных городков. В финальном туре олимпиады приняли участие более 70 школьников из 20 территориальных образований. •
Санкт-Петербургская и Московская городские олимпиады школьников по информатике, дополнительного
проводимые образования
ведущими
российскими
Санкт-Петербургским
учреждениями
городским
дворцом
творчества юных и Московским центром непрерывного математического образования. 3.2 Интернет-школы информатики и программирования Одной из первых и наиболее известной системой, представляющей интернет-школы и 21
интернет-курсы, была разработанная в СПбГУ ИТМО В.Н. Васильевым, М.А. Казаковым, Г.А. Корнеевым, С.Е. Столяром и рядом других сотрудников интернет-школа информатики и программирования http://ips.ifmo.ru. В этой системе, ориентированной на начальное обучение учащихся основам языков и алгоритмов программирования, наряду с изложением
теоретических
положений
и
показом
визуализаторов
алгоритмов,
допускалось решение задач с автоматическим тестированием решений в различных режимах. Исторически интернет-школа создавалась позже первых олимпиадных систем и поэтому ряд олимпиадных технологических и методических методик был использован в интернет-школе. К ним относились в первую очередь системы автоматической проверки программных решений, которые были использованы еще в первых российских командных олимпиадах в 1994 году. Кроме того, из олимпиадной практики были позаимствованы организация проведения контрольных работ в форме «соревнования» между учащимися, принадлежащими к сформированным по различным принципам группам, а также привитие учащимся навыков групповой интеллектуальной работы путем проведения контрольных работ по схеме командных олимпиад по программированию, в которых команде из трех участников предоставляется для совместного решения задач один компьютер. Остановимся подробнее на особенностях методики дистанционной поддержки учащихся, реализуемой в рамках интернет-школы информатики и программирования. Актуальность разработки подобных систем обусловлена следующими причинами. Сравнение школьных учебников конца 80-х ─ начала 90-х годов с ныне принятыми образовательными стандартами позволяет заметить, что в современных программах имеется крен в сторону "пользовательского" содержания. Соответственно, такие, например,
направления,
как
структуры
данных,
алгоритмика,
технология
программирования, в большинстве учебных программ либо оттеснены на задний план, либо попросту исключены. Можно сказать, что отечественное среднее образование ориентируется, в настоящее время в значительной степени, на подготовку лишь пользователей ПЭВМ.
Следующая проблема возникает в связи с профильным, профессиональным и дополнительным образованием в области информатики и информационных технологий. Помимо собственно содержания образования, в настоящее время актуальной является разработка образовательных технологий, позволяющих проводить селекцию, обучение 22
учащихся и оценку качества знаний, умений и навыков при минимальном привлечении высококвалифицированных педагогов. Почему возник сам вопрос о повышении эффективности труда в преподавании компьютерных дисциплин? Причина в том, что в российских
образовательных
учреждениях
сложилась
критическая
ситуация
с
подготовкой учащихся по фундаментальным дисциплинам компьютерного профиля. Разумеется, введенные в последние годы государственные стандарты в области образования выполняют весьма важную функцию в сохранении потенциала российской средней и высшей школы, но обеспечивают, к сожалению, недостаточное качество подготовки в компьютерных дисциплинах. Причина заключается в несоответствии быстро расширяющегося объема знаний, умений и навыков, которыми должен владеть профессионал в области информационных и коммуникационных технологий, и столь же быстрого сокращения количества преподавателей, способных излагать сложный материал дисциплин компьютерного цикла на уровне, отвечающем международным стандартам. При этом, рассчитывать на быстрое воспроизводство педагогических кадров в ближайшие годы не приходится.
Разрабатываемые интернет-школы должны в частности обеспечить реализацию новой технологии
обучения,
нацеленной
профильномотивированных
учащихся,
на на
качественную основе
подготовку
использования
способных современных
возможностей компьютерных сетевых образовательных технологий. Широкое внедрение новой технологии должно обеспечить надлежащее качество процесса обучения учащихся и в удаленных от крупных образовательных центров регионах. Одним из общих подходов, призванных улучшить ситуацию, принято считать внедрение систем дистанционного обучения. Созданная в рамках данной работы система обеспечивает эффективную реализацию дистанционной формы обучения. Тем самым удастся снизить потребность в преподавателях высокой квалификации и интенсифицировать труд тех, кто занят этой деятельностью. Иначе говоря, целью становится разработка менее дорогой и, одновременно, более эффективной, чем исторически сложившаяся, технологии обучения.
Соответствующие педагогические технологии и методики были разработаны и прошли апробацию в СПбГУ ИТМО в 1998─2003 гг. Они были апробированы при обучении петербургских студентов и школьников, а затем положены в основу деятельности интернет–школы информатики и программирования. Пятилетний опыт проведения этих занятий, технологической основой которых первоначально была рассылка материалов 23
через электронную почту и обратная связь с учащимися с помощью того же механизма, оказался чрезвычайно полезным. Он подтвердил правильность курса на автоматизацию многих рутинных процессов, сопутствующих традиционной педагогической практике. В то же время, оценив трудозатраты преподавателя, определявшиеся использовавшейся в тот период технологией, организаторы и разработчики интернет-школы пришли к выводу о необходимости в большей степени автоматизировать процесс, поскольку круг учащихся расширялся, и индивидуальные контакты затруднились.
По мере накопления опыта работы некоторые первоначальные взгляды на содержание процесса обучения подтвердились, некоторые изменились. В результате, за время, прошедшее с начала работы, сложилось общее представление о новой технологии первоначального обучения, как о существенно "централизованной" системе. Такая система должна:
обеспечить
возможности
селекции
и
обучения
одаренных
и
профильномотивированных учащихся в области информатики и компьютерных технологий в условиях, когда невозможно привлечение высококвалифицированных педагогов для каждой в отдельности организованной группы учащихся;
предоставить возможность обучения в режиме дистанционного доступа;
соблюдать единство методического подхода при построении как очных, так и заочных (дистанционных) занятий;
гарантировать
"методическую
преемственность"
при
переходе
учащегося
от
школьного, допрофессионального, уровня обучения к этапу его профессиональной подготовки в вузе;
обеспечивать механизм оценивания качества знаний обучаемых, максимально лишенный субъективизма со стороны преподавателя;
установить приоритет в содержании обучения профильномотивированных учащихся за освоением фундаментальных основ информатики и компьютерных технологий.
В обеспечение реализации этих требований в интернет-школе информатики и программирования создан комплекс средств, который включает методические материалы, информационную поддержку и автоматическую систему тестирования программных
24
решений учащихся. Собственно учебный процесс в интернет-школе информатики и программирования основан на следующих составляющих.
Учебный курс размещается в виде отдельных тематических Web-уроков на сайте интернет-школы.
Урок в рамках курса сохраняет традиционные черты "обычного" изложения учебной темы, принятого в классических учебниках, но, естественно, расширяется благодаря возможностям включения в текст гиперссылок, задач и проч.
Более специальное расширение тематического урока связано с сопровождающим урок набором заданий учебного характера. При этом результатом выполнения задания является
компьютерный
файл-программа,
который
учащийся,
пользуясь
обеспечиваемым сервисом, отправляет для дальнейшего тестирования на сайт.
Автоматическая система тестирования, размещенная на сервере интернет-школы, получает указанный файл-решение и проводит его проверку. Результаты тестирования система
обработки
отправляет
учащемуся
и,
если
последний
является
зарегистрированным пользователем, заносит в соответствующую базу данных.
К недостаткам такой методики проверки решений, очевидно, следует отнести отсутствие такого
немаловажного
элемента
подготовки
программистов,
как
просмотр
преподавателем и обсуждение текстов программ. Реализация этого элемента учебного процесса является наиболее дорогостоящей операцией, поскольку требует немалых затрат времени педагогов высокой квалификации. Частично устранить этот недостаток можно путем организации эхо-конференции (форума) в рамках интернет-школы информатики и программирования, которая позволяет осуществлять разбор часто встречающихся ошибок, отвечать на вопросы учащихся и т.д.
Другим расширением содержания урока, в сравнении с традиционным подходом, является включение в его состав так называемых визуализаторов алгоритмов, представляющих собой
динамические
иллюстрации
алгоритмов
программирования,
в
которых
используются элементы анимации. В качестве визуализаторов алгоритмов выступают специальные
программы, в процессе работы которых на экране динамически
демонстрируется действие алгоритма на выбранном наборе данных. При этом доступны разнообразные режимы работы использования входных тестовых наборов: заготовленных заранее, либо вводимых пользователем с клавиатуры, либо, наконец, генерируемые 25
случайным образом. Использование визуализаторов алгоритмов в учебном процессе открывает новые возможности. Во-первых, динамическая визуализация, благодаря пошаговой демонстрации, наглядно демонстрирует собственно алгоритмический механизм. Для некоторых же алгоритмов, например, для машины Тьюринга динамический вариант демонстрации вообще представляется более естественным, чем любой набор статических иллюстраций. Вовторых, учащийся может наглядно "в деле" оценить столь важную характеристику алгоритма, как его трудоемкость. В-третьих, "хорошо сделанный" визуализатор обладает несколькими встроенными опциями, описанными ниже. •
Каждый
шаг алгоритма сопровождается
текстовым комментарием. Такой
комментарий призван компенсировать отсутствие лектора при самостоятельном изучении алгоритма. •
Существенной является возможность регулировать скорость динамической пошаговой визуализации. Это важно как для очного лекционного обучения, так и при дистанционном обучении. Благодаря этой возможности легко подобрать скорость
демонстрации,
индивидуальными
руководствуясь
способностями
способностью
учащегося,
при
аудитории
дистанционном
(или
режиме)
усваивать материал. •
Кроме того, полезность режима с регулируемой скоростью очевидна для целей повторной демонстрации алгоритма – при запуске механизма на разных тестовых наборах.
•
Наконец, при изучении работы алгоритмов нередко оказывается полезным и режим "шаг назад".
Очевидно, что у того, кто учится в дистанционном или сетевом режиме, нет возможности немедленно обратиться к лектору с текущими вопросами, связанными с изложением материала.
Наличие
динамических
иллюстраций
дает
ему
возможность
более
продуктивно работать самостоятельно. Поэтому при разработке интернет-школы широко применялась отрабатываемая в СПбГУ ИТМО в течение пяти последних лет технология использования динамических иллюстраций. Таким образом в урок дистанционного курса по
алгоритмам
программирования
включаются
помимо
статического
текста,
визуализаторы алгоритмов, обсуждаемых в уроке. К настоящему времени число визуализаторов алгоритмов, подготовленных для указанного лекционного курса, достигло нескольких десятков. 26
Отметим, что рассчитывать на то, что «отдельно взятый» преподаватель будет способен подготовить для своего курса несколько десятков качественных программных продуктов указанного содержания, не приходится. Причина заключается в том, что разработка таких программ требует привлечения высококвалифицированных программистов и больших трудозатрат. В целом пятилетний опыт проведения обучения при помощи интернет-школы информатики и программирования показал ее высокую эффективность как в режиме дистанционного, так и в режиме очного обучения.
3.3. Единая сетевая среда интернет-поддержки Многочисленные результаты практического использования сайтов первого поколения, интереснейшие технологические и методические решения, предложенные при их эксплуатации и развитии, а также собранный несколькими поколениями разработчиков и педагогов информационный и учебно-методический материал, позволили поставить задачу создания единой сетевой среды для интернет-поддержки учащихся средствами компьютерных
сетевых
технологий
в
сфере
олимпиад
по
информатике,
программированию и информационным технологиям и базовых курсов в области компьютерных технологий. Описанные выше сетевые системы интернет-поддержки олимпиад и интернет-школ информатики
и
программирования
образуют
единую
интегрированную
среду,
обеспечивающую учебно-методическую и программную поддержку многоуровневой непрерывной системе поиска и подготовки высококвалифицированных кадров в области информационных технологий. Эта среда объединяет на единой методологической основе образовательные интернет-сервисы, обеспечиваемые олимпиадными сайтами и сайтами интернет-школ информатики и программирования. В рамках такой среды учащийся может пройти
весь
цикл
фундаментальных
обучения,
дисциплин,
начиная
от
составляющих
первоначального теоретическую
обучения базу
основам
компьютерных
информационных технологий, продолжая его на основе школьного олимпиадного материала различного уровня сложности, и в перспективе развивая свои способности уже в студенческих олимпиадах. В процессе эксплуатации указанной среды были выявлены оригинальные дополнительные возможности и технологии проведения учебных занятий и творческих конкурсов: - предоставление учащемуся возможности делать несколько попыток предъявления 27
решения, - проведение олимпиад, тестирований и контроля знаний с учетом временных затрат учащихся и штрафов за неправильные подходы, - коллективные формы работы при проведении олимпиад и тренинговых занятий, -
использование
соревновательных
элементов
при
проведении
тестирований
и
контрольных занятий. Единая
интегрированная
среда
позволила
эффективно
организовать
сетевое
взаимодействие учащихся и преподавателей в масштабах всей страны, проводить дистанционные занятия, тестирования и конкурсы. Она строилась с учетом требований к функциональным возможностям разрабатываемой системы и ее эксплуатационным характеристикам.
В
предоставляемые
сервисы
входят
доступ
к
специальным
теоретическим и учебно-тренировочным материалам и банкам заданий, новостям, автоматическое тестирование предлагаемых учащимися решений, на котором базируется подсистема тренировочного комплекса олимпиадных задач, доступ к соответствующим региональным сайтам. При этом было проведено ранжирование предлагаемых заданий по уровням сложности, предусмотрено размещение методических рекомендаций для педагогов, а также наличие различных видов коммуникативных сервисов для поддержки взаимодействия пользователей: интернет-гостиные (виртуальные встречи с ведущими учеными и педагогами), виртуальные научно-практические и научно-методические конференции, форумы и круглые столы для свободного обсуждения теоретических и практических проблем. Система удовлетворяет таким технико-технологическим требованиям, как поддержка единой иерархической групповой системы прав доступа к ее модулям, использование единой базы данных для хранения информации, поддержка основных серверных аппаратных платформ и операционных систем, унифицируемый интерфейс пользователя, поддержка групповой работы разработчиков, интегрируемость с другими системами и базами данных. В системе обеспечены механизмы защиты и безопасности данных. Одним из важнейших результатов функционирования такой среды является ее социальная роль, заключающаяся в формировании в масштабе страны неформального сообщества школьников, студентов, учителей и вузовских педагогов, объединенных интересом к дисциплинам, образующим фундамент современных информационных компьютерных технологий, а также поддержке и привлечении в Россию способной молодежи из 28
русскоязычного населения стран ближнего зарубежья. 4. Результаты выступлений российских команд в командном чемпионате мира по программированию Подготовленные в рамках созданной системы команды российских студентов показали за последние пять лет выдающиеся результаты в финалах чемпионата мира по программированию. Они внесли существенный вклад в формирование положительного образа страны в мировом сообществе и оказали сильную поддержку продвижению на мировой рынок российских фирм-разработчиков программного обеспечения. Первым значимым результатом выступлений российских команд в финале чемпионата мира по программированию явилось второе место, завоеванное командой СПбГУ (Виктор Баргачев, Илья Миронов, Олег Семенов, тренер Н.Н. Вояковская) в финале 1998 года в Атланте. В финале 1999 года в Эйндховене третье место заняла команда СПбГУ ИТМО (Александр Волков, Владимир Левкин, Матвей Казаков, тренер М.М. Сандлер). В финалах 2000 года в Орландо и 2001 года в Ванкувере первые места и звание двухкратных чемпионов мира завоевывала команда СПбГУ (Николай Дуров, Андрей Лопатин, Олег Етеревский, Виктор Петров, тренер Н.Н. Вояковская). В финале 2000 года команда СПбГУ ИТМО (Георгий Корнеев, Денис Кузнецов, Андрей Станкевич, тренеры М.М. Сандлер и М.А. Казаков) заняла четвертое место и получила серебряные медали, а в финале 2001 года – третье место и золотые медали. В финале 2002 года в Гонолулу команда Саратовского государственного университета (Андрей Лазарев, Михаил Мирзаянов, Илья Эльтерман, тренеры Н.Л. Андреева и А.Г. Федорова) заняла шестое место, завоевав серебряные медали и титул чемпиона Европы). В финале 2003 года в Беверли Хиллз команды МГУ (Максим Бабенко, Петр Митричев, Евгений Черепанов, тренер Е.В. Панкратьев) и СПбГУ ИТМО (Тимофей Бородин, Александр Штучкин, Евгений Южаков, тренер Андрей Станкевич) занимают соответственно второе и третье места и получают золотые медали, команда Саратовского ГУ (Андрей Лазарев, Михаил Мирзаянов, Илья Эльтерман, тренеры Н.Л. Андреева и А.Г. Федорова) ─ седьмое место и получает серебряные медали. Командный студенческий чемпионат России по программированию проводился восемь раз. По три раза звание чемпионов России выигрывали команды СПбГУ (1997, 1999, 2000 гг.) и СПбГУ ИТМО (1996, 2001, 2003 гг.) и два раза – команда МГУ (1998 и 2002 гг.) 29
Заключение Актуальность
представляемой
работы
определяется
необходимостью
кадрового
обеспечения для решения задач сохранения и развития интеллектуального и экспортного потенциала России в области информационных и коммуникационных технологий, являющихся базой экономики, основанной на знаниях. Созданная
за
последнее
десятилетие
инновационная
система
подготовки
высококвалифицированных кадров, организационно базирующаяся на территориально распределенной многоуровневой системе творческих конкурсов и олимпиад, охватывает практически все регионы и ведущие вузы России и стран ближнего зарубежья и по масштабу не имеет аналогов в системе образования нашей страны и стран ближнего зарубежья. Функционирование указанной организационной структуры обеспечивается единой сетевой средой интернет-поддержки, в состав которой входят такие обладающие существенной
новизной
на
международном
уровне
компоненты,
как
система
автоматической проверки программных решений, автоматическая система управления олимпиадами, банк олимпиадных заданий, структурированный по уровню сложности, тематике и другим классификационным признакам. При разработке указанных компонентов используются оригинальные технологические, программные и методические решения, обладающие новизной на уровне международной системы образования в области информационных и коммуникационных технологий, и собранный за последние полтора десятилетия информационный и учебно-методический материал. В рамках единой интегрированной среды интернет-поддержки учащийся может пройти весь цикл профессиональной подготовки, начиная от первоначального обучения основам фундаментальных
дисциплин,
составляющих
теоретическую
базу
компьютерных
информационных технологий, продолжая его на основе школьного олимпиадного материала различного уровня сложности, и в перспективе развивая свои способности уже в студенческих олимпиадах.
30
Разработанная система прошла многолетние объемные тестирование и апробацию, в ходе которых были реализованы образовательные творческие конкурсы, не имеющие по своим масштабам аналогов в российской и мировой практике. Одним из важнейших результатов функционирования такой среды является ее социальная роль, заключающаяся в формировании в масштабе страны неформального сообщества школьников, студентов, учителей и вузовских педагогов, объединенных интересом к дисциплинам, образующим фундамент современных информационных компьютерных технологий, а также поддержке и привлечении в Россию способной молодежи из русскоязычного населения стран ближнего зарубежья. Подготовленные в рамках созданной системы команды российских студентов показали за последние пять лет выдающиеся результаты в финалах чемпионата мира по программированию, внесшие существенный вклад в формирование положительного образа страны в мировом сообществе и оказавшие сильную поддержку продвижению на мировой рынок российских фирм-разработчиков программного обеспечения. Основные публикации 1. Командный чемпионат мира по программированию АСМ 2003/2004.СевероВосточный Европейский регион/ Под ред. В.Н. Васильева и В.Г. Парфенова – Санкт-Петербург: СПбГУ ИТМО, 2003.-214с. 2. Командный чемпионат мира по программированию АСМ 2002/2003.СевероВосточный Европейский регион/ Под ред. В.Н. Васильева и В.Г. Парфенова – Санкт-Петербург: СПбГУ ИТМО, 2002.-192с. 3. Командный чемпионат мира по программированию АСМ 2001/2002.СевероВосточный Европейский регион/ Под ред. В.Н. Васильева и В.Г. Парфенова – Санкт-Петербург: СПбГУ ИТМО, 2001.-144с. 4. Четвертая командная олимпиада школьников по программированию/ Под ред. В.Н. Васильева, В.Г. Парфенова, А.С. Станкевича – Санкт-Петербург: СПбГУ ИТМО, 2003 – 155 с. 5. Третья командная олимпиада школьников по программированию/ Под ред. В.Н. Васильева, В.Г. Парфенова, А.С. Станкевича – Санкт-Петербург: СПбГУ ИТМО, 2002 – 136 с. 6. Кирюхин
В.М.,
Лапунов
А.В.,
Окулов
С.М.
Задачи
по
информатике.
Международные олимпиады 1989-1996 гг. – Москва, ABF, 1996 – 272 с. 31
7. Асанов М.О. Методы дискретной оптимизации. ─ Екатеринбург, УрГУ, 1991. ─ 168 с. 8. Асанов М.О. Дискретная оптимизация. ─ Екатеринбург, УРАЛНАУКА, 1998. ─ 206 с. 9. Асанов М.О. Баранский В.А., Расин В.В. Дискретная математика: графы, матроиды, алгоритмы. ─ Москва-Ижевск, РХД, 2001. ─ 288 с. 10. Интернет-технологии ─ образованию/ Под ред. В.Н. Васильева, Л.С. Лисицыной ─СПб.: Питер, 2003. ─ 464 с.:ил. 11. Елизаров Р.А., Станкевич А.С. Система управления соревнованиями по программированию как система обработки данных. Телекоммуникации и информатизация образования, № 3, 2003, с. 64-85. 12. Елизаров Р.А., Корнеев Г.А. Автоматическое тестирование решений на соревнованиях по программированию. Телекоммуникации и информатизация образования, № 1, 2003, с. 61-73. 13. Андреева Н.Л., Емельянова О.В., Иванов А.С., Сагаева И.Д., Семенова Т.В., Папшев С.В., Миронов С.В., Федорова А.Г. Олимпиадные задачи по информатике 1999. ─Саратов, Издательство СГУ, 1999. ─ 48 с. 14. Андреева Н.Л., Емельянова О.В., Иванов А.С., Сагаева И.Д., Семенова Т.В., Папшев С.В., Миронов С.В., Федорова А.Г. , Луканов А.С. Олимпиадные задачи по информатике 1999/2000. ─ Саратов, Стилло, 2000 48 с. 15. Андреева Н.Л., Емельянова О.В., Иванов А.С., Сагаева И.Д., Семенова Т.В., Папшев С.В., Миронов С.В., Федорова А.Г. , Тяпаев Л.Б. Олимпиадные задачи по информатике 2000/2001 Саратов, Издательство СГУ, 2001, 52 с. 16. Андреева Н.Л., Федорова А.Г Саратовская школа программистов. Региональный опыт. Компьютерные инструменты в образовании, № 6, 2002, с. 51-55. 17. Станкевич А.С. Разбор задач студенческого чемпионата мира 2001-2002 гг. По программированию АСМ. Компьютерные инструменты в образовании, № 6, 2002, с. 28-50. 18. Елизаров Р.А. Разбор задач 25-го финала командного чемпионата мира АСМ по программированию. Компьютерные инструменты в образовании, № 3-4, 2001, с. 51-59. 19. Асанов М.О., Парфенов В.Г. Фианальные соревнования чемпионата мира по программированию. Потрясающий успех петербургских команд. Компьютерные инструменты в образовании, № 2, 2001, с. 11-18. 20. Алексеев А.С., Ломов Д.С., Станкевич А.С. Разбор задач финальных соревнований чемпионата мира по программированию. Компьютерные инструменты в образовании, № 2, 2001, с. 21-35. 21. Парфенов В.Г. Всероссийские командные олимпиады школьников по программированию. Компьютерные инструменты в образовании, № 6, 2000, с. 6772. 22. Станкевич А.С. Задачи первой Всероссийской командной олимпиады школьников по информатике. . Компьютерные инструменты в образовании, № 6, 2000, с. 73-81. 23. Васильев В.Н., Елизаров Р.А., Парфенов В.Г., Столяр С.Е. Организация дистанционного обучения программистов // Телематика-98. Всероссийская научно32
методическая конференция. Санкт-Петербург, 8-11 июня 1998 г.: Тезисы докладов. СПб., 1998, с.172-173. 24. Васильев В.Н., Казаков М.А., Парфенов В.Г., Столяр С.Е. Прблемы подготовки профессиональных программистов и дистанционное обучение в интернет-школе СПбГИТМО(ТУ) // Дистанционное обучение. Проблемы и перспективы взаимодействия вузов Санкт-Петербурга с регионами России. Материалы II межрегиональной научно-практической конференции. Санкт-Петербург, 15-18 марта 1999г., СПб, 1999, с.45-48. 25. Казаков М.А., Осипова Т.Г., Парфенов В.Г., Столяр С.Е. Интернет-школа программирования в СПбГИТМО(ТУ) // Телематика-99. Всероссийская научнометодическая конференция. Санкт-Петербург, 7-10 июня 1999 г.: Тезисы докладов. СПб., 1999, с.165-166. 26. Казаков М.А., Мельничук О.П., Парфенов В.Г. Интернет-школа программирования в СПбГИТМО(ТУ). Реализация и внедрение // Телематика-2002. Всероссийская научно-методическая конференция. Санкт-Петербург, 3-6 июня 2002 г.: Тезисы докладов. СПб., 2002, с. 308-309.
33