Профессиональная подготовка программистов в рамках специальностей и направлений государственных образовательных стандартов
С.А.Ивановский, А.Р.Лисс, Романцев В.В., Экало А.В.,
Рассматривается содержание подготовки дипломированных специалистов в области разработки программного обеспечения. Анализируются государственные образовательные стандарты специальностей 220400 - "Программное обеспечение вычислительной техники и автоматизированных систем", 351500 - "Математическое обеспечение и администрирование информационных систем", 010200 - "Прикладная математика и информатика" и 073000 - "Прикладная математика". Дано сопоставление с Computing Curricula 2001: Computer Science. Сформулированы предложения по развитию ГОС и по позиционированию специальности 220400.
Государственные образовательные стандарты высшего профессионального образования, дипломированные специалисты, программное обеспечение, технология разработки программных систем
Новое поколение Государственных образовательных стандартов (ГОС) высшего профессионального образования (ВПО) действует с 2000 года совместно с Перечнем направлений подготовки и специальностей ВПО [1]. Перечень включает в себя как направления подготовки бакалавров и магистров, так и направления подготовки дипломированных специалистов, объединяющие в себе специальности, сгруппированные в направления по критерию общей научной базы подготовки студентов. В динамично развивающейся научно-практической области информатики и информационных технологий содержание Перечня неоднократно анализировалось. Например, в [2] даны предложения по корректировке Перечня с учетом потребностей общества в специалистах по информационным системам и технологиям. В дискуссионной статье [3] термин Информационные технологии (ИТ) трактуется в расширительном смысле, на основе этого анализируются направления подготовки бакалавров и магистров по профилю ИТ и предлагается дополнение Перечня новым образовательным направлением "Информационные технологии" ("Computing" [4] ).
Рассмотрим вопрос подготовки специалистов более узкого профиля, а именно специалистов по разработке программного обеспечения. Долгое время подготовка по программированию составляла (и сейчас, как правило, составляет) ядро подготовки по информатике в соответствующих технических специальностях, а с другой стороны именно усиленная подготовка по программированию специалистов по прикладной математике давала им возможность в дальнейшем выходить на рынок труда как программистам. В 1988 появилась отдельная специальность 220400 - "Программное обеспечение вычислительной техники и автоматизированных систем" (с квалификацией инженер-программист). При разработке ГОС ВПО нового поколения (2000 г.) и соответствующего Перечня в области подготовки профессиональных программистов проявились две разнонаправленные тенденции: 1) специальность 220400 была интегрирована вместе с другими специальностями 22-й группы (220100, 220200 и 220300) в направление 654600 - "Информатика и вычислительная техника" и из-за усиления общенаучной базы этого направления (на наш взгляд не во всем оправданного и в некоторой степени архаичного) потеряла часть своей специфики; 2) появились другие специальности и направления, по которым заявлена подготовка программистов. Так наряду с традиционным направлением подготовки бакалавров и магистров 510200 - "Прикладная математика и информатика", в рамках которого возможна реализация усиленной программистской подготовки, появилось новое направление 511800 - "Математика. Компьютерные науки" (анализ содержания подготовки по этому направлению дан в [3]). Аналогичная ситуация и в подготовке дипломированных специалистов. Рассмотрим её подробнее.
Во-первых, согласно новому Перечню подготовка программистов ведется по специальности 220400 - "Программное обеспечение вычислительной техники и автоматизированных систем" (в рамках направления 654600 - "Информатика и вычислительная техника"). Квалификация - инженер (для всего направления, а для специальности 220400 "подразумевается" инженер - программист). В качестве объектов профессиональной деятельности в ГОС выделены: программное обеспечение средств вычислительной техники и автоматизированных систем (программы, программные комплексы и системы), а также соответствующее математическое, информационное, техническое, эргономическое, организационное и правовое обеспечение [6].
Во-вторых, подготовка программистов возможна на солидном математическом фундаменте в рамках традиционной для нашей страны специальности "Прикладная математика". В новом Перечне имеется две разновидности некогда одной специальности. Это (с ориентацией на классические университеты) специальность 010200 - "Прикладная математика и информатика". Квалификация - математик, системный программист. Объекты профессиональной деятельности в ГОС явно не указаны, но могут быть извлечены из общей характеристики подготовки выпускника по этой специальности: "Математик, системный программист подготовлен преимущественно к выполнению исследовательской деятельности в областях, использующих методы прикладной математики и компьютерные технологии; созданию и использованию математических моделей процессов и объектов; разработке и применению современных математических методов и программного обеспечения для решения задач науки, техники, экономики и управления; использованию информационных технологий в проектно-конструкторской, управленческой и финансовой деятельности" [9]. Для подготовки специалистов по прикладной математике и программированию в технических вузах (в том числе технических университетах) введено направление подготовки дипломированного специалиста 657100 - "Прикладная математика", содержащее одноименную специальность 073000 - "Прикладная математика". Квалификация - инженер-математик. Объектами профессиональной деятельности выпускников по направлению подготовки дипломированного специалиста "Прикладная математика" являются математические модели, методы и наукоемкое программное обеспечение, предназначенное для проведения анализа и выработки решений в производственной, хозяйственной, экономической, социальной, управленческой деятельности, в науке, технике, медицине, образовании [7].
В-третьих, в Перечне появилась новая специальность 351500 - "Математическое обеспечение и администрирование информационных систем". Квалификация выпускника - математик-программист. Объектами профессиональной деятельности математика-программиста являются: математические и алгоритмические модели, программы, программные системы и комплексы, методы проектирования и реализации, способы производства, сопровождения, эксплуатации и администрирования в различных областях, включая междисциплинарные. Объектами профессиональной деятельности могут быть имитационные модели сложных процессов управления, программные средства, администрирование вычислительных, информационных процессов [8]. Следует отметить, что "генетически" ГОС по этой специальности был образован из "старого" (предыдущего поколения) ГОС по специальности 220400 в основном путем сокращения общеинженерной подготовки и усиления фундаментальной математической составляющей, а также добавлением дисциплины "Администрирование информационных систем".
Для более детального сравнения подготовки специалистов по перечисленным специальностям содержание их подготовки, определяемое ГОС, сведено в таблицу. При этом специальности 010200 - "Прикладная математика и информатика" и 073000 - "Прикладная математика" в силу значительного совпадения их содержания представлены "инженерно-ориентированной" специальностью 073000 - "Прикладная математика". Итак, в таблице сопоставляется содержание подготовки по специальностям: 220400, 351500 и 073000. Поскольку в ГОС по этим специальностям похожие дисциплины отнесены к разным циклам, то для удобства анализа здесь введена несколько иная разбивка дисциплин на циклы, а именно, выделены следующие группы дисциплин (циклы): математические дисциплины, общие естественнонаучные дисциплины, общие инженерные дисциплины, программирование и смежные дисциплины. Кроме того, национально-региональный (вузовский) компонент и дисциплины по выбору студента, устанавливаемые вузом, даны в таблице суммарно (в ГОС они рассредоточены по разным циклам), для того, чтобы обозначить общий резерв, который может быть использован в каждой из специальностей для усиления той или иной составляющей подготовки (общематематической, общеинженерной или профессионально программистской). Для специальности 351500 знаком "*" (звездочка) отмечены дисциплины, отсутствующие в новом ГОС (2000 г.) по специальности 220400, но имевшиеся в старом стандарте (1994 г.) этой специальности.
В целом различия между специальностями 220400 и 351500 меньше, чем их отличие от специальности 073000. Специальность 073000 - "Прикладная математика" имеет максимально усиленную подготовку по математическим дисциплинам (2152 часа в сравнении с 960 часами для специальности 220400 и 1530 часами для специальности 351500), средний объем общих естественнонаучных дисциплин, близкий к специальности 220400 объём общих инженерных дисциплин и примерно вдвое меньший по сравнению с двумя другими специальностями объём дисциплин, связанных с программированием. Конечно, уровень программистской подготовки в рамках специальности 073000 можно поднять за счёт использования вузовского компонента и дисциплин специализаций, однако общий объём этого резерва незначительно отличается от аналогичных возможностей в ГОС по двум другим специальностям. Следовательно, можно считать, что дипломированный специалист по специальности 073000 - "Прикладная математика" это всё же специалист именно по прикладной математике с усиленной подготовкой (и с углубленными знаниями) в области программирования и информационных технологий.
Сопоставление содержания подготовки специальностей 220400 и 351500 показывает, что
Объем математических дисциплин специальности 351500 примерно в полтора раза больше, чем для специальности 220400 (в основном за счет наличия таких традиционных для математического образования дисциплин, как дифференциальные уравнения, уравнения математической физики, функциональный анализ);
Объем общих естественнонаучных дисциплин несколько больше для специальности 220400 (за счет физики);
Общие инженерные дисциплины представлены для специальности 220400 в существенно большем объеме (760 часов в сравнении с 200 часами для специальности 351500);
Объем дисциплин, связанных с программированием и информационными технологиями, почти одинаков (2200 часов для специальности 220400 и 2050 часов для специальности 351500), а их номенклатура (с точностью до вариаций в названиях и некоторых различиях в объемах) в значительной степени совпадает. Отметим основные отличия в содержании. Дисциплины специальности 220400, в явном виде (и в соответствующем объеме) отсутствующие в ГОС специальности 351500: Сети ЭВМ и телекоммуникации, Методы и средства защиты компьютерной информации, Объектно-ориентированное программирование, Теория языков программирования и методы трансляции, Человеко-машинное взаимодействие. Все эти дисциплины (за исключением традиционной - Теория языков программирования и методы трансляции) отражают современные тенденции развития программирования и информационных технологий. С другой стороны, в ГОС специальности 351500 присутствует новая дисциплина - Администрирование информационных систем, а также ряд дисциплин старого стандарта специальности 220400, не включенных в федеральную компоненту нового ГОС по этой специальности и помеченных в таблице знаком "*" (Системы искусственного интеллекта, Параллельное программирование, Системы реального времени, Экономико- правовые основы рынка програм-много обеспечения - общий объем 350 часов). Вопросы метрологии программного обеспечения (отдельная дисциплина для специальности 351500, также представленная в старом стандарте 220400) включены в новом ГОС для специальности 220400 в дисциплину Технология разработки программного обеспечения (с соответствующим увеличением часов).
В целом, сравнивая содержание подготовки по специальностям 220400 и 351500, можно отметить, что 1) для специальности 351500 предусмотрена более глубокая базовая математическая подготовка; 2) для специальности 220400 характерна явно выраженная инженерная составляющая; 3) профессиональная (программистская) составляющая по обеим специальностям соответствует целям подготовки профессиональных программистов, при этом подготовка по специальности 220400 в большей степени имеет направленность в сторону технологии разработки программ, а подготовка по специальности 351500 с одной стороны тяготеет к области теоретического программирования, а с другой - к более широкому прикладному полю.
Таблица
Специальность 220400 |
Специальность 351500 |
Специальность 073000 |
Наименование дисциплин |
Объем |
Наименование дисциплин |
Объем |
Наименование дисциплин |
Объем |
Математические дисциплины |
Алгебра и геометрия |
140 |
Алгебра и теория чисел |
150 |
Алгебра и аналитическая геометрия |
360 |
-- |
-- |
Геометрия и топология |
150 |
-- |
-- |
Математический анализ |
340 |
Математический анализ |
350 |
Математический анализ |
576 |
-- |
-- |
-- |
-- |
Теория функций комплексного переменного |
108 |
Теория вероятностей, математическая статистика и случайные процессы |
100 |
Теория вероятностей и математическая статистика |
150 |
Теория вероятностей и математическая статистика |
180 |
-- |
-- |
-- |
-- |
Теория случайных процессов |
90 |
-- |
-- |
Дифференциальные уравнения |
150 |
Дифференциальные уравнения |
144 |
-- |
-- |
Уравнения математической физики |
100 |
Уравнения в частных производных |
144 |
-- |
-- |
Функциональный анализ |
100 |
Функциональный анализ |
144 |
Дискретная математика |
140 |
Дискретная математика |
130 |
Дискретная математика 180 |
Математическая логика и теория алгоритмов |
100 |
Математическая логика |
150 |
- |
- |
Вычислительная математика |
140 |
Вычислительная математика |
100 |
Численные методы |
72 |
- |
- |
- |
- |
Методы оптимизации |
82 |
- |
- |
- |
- |
Теория игр и Исследование операций |
72 |
Всего в цикле |
960 |
Всего в цикле |
1530 |
Всего в цикле |
2152 |
Общие естественнонаучные дисциплины |
Информатика |
140 |
Информатика |
200 |
Информатика. Прог-раммные и аппаратные средства информатики |
90 |
Физика |
400 |
Физика |
200 |
Физика |
414 |
Экология |
70 |
Экология |
70 |
Экология |
70 |
Всего в цикле |
610 |
Всего в цикле |
470 |
Всего в цикле |
547 |
Общие инженерные дисциплины |
Инженерная графика |
100 |
- |
- |
- |
- |
Электротехника и электроника |
250 |
- |
- |
Общая электротехника и электроника |
100 |
Метрология, стандартизация и сертификация |
110 |
- |
- |
Метрология, стандартизация и сертификация |
90 |
Безопасность жизнедеятельности |
100 |
Безопасность жизнедеятельности |
50 |
Безопасность жизнедеятельности |
100 |
Организация и планирование производства |
80 |
- |
- |
Организация и планирование производства |
100 |
Основы теории управления |
120 |
- |
- |
Теория управления |
102 |
- |
- |
Компьютерное моделирование* |
150 |
Математическое моделирование |
180 |
Всего в цикле |
760 |
Всего в цикле |
200 |
Всего в цикле |
672 |
Программирование и смежные дисциплины |
Программирование на языке высокого уровня |
260 |
Программирование |
250 |
Информатика. Алгоритмические языки и программирование |
246 |
Организация ЭВМ и систем |
140 |
- |
- |
- |
- |
Архитектура вычислительных систем |
100 |
Архитектура вычислительных систем и компьютерных сетей |
150 |
Архитектура электронно-вычислительных машин, системное программное обеспечение |
360 |
Операционные системы |
140 |
Операционные системы и оболочки |
150 |
- |
- |
Сети ЭВМ и телекоммуникации: |
170 |
- |
- |
- |
- |
Методы и средства защиты компьютерной информации: |
110 |
- |
- |
- |
- |
Базы данных |
140 |
Базы данных и СУБД |
150 |
Базы данных |
72 |
Структуры и алгоритмы обработки данных |
210 |
Структуры и алгоритмы компьютерной обработки данных |
150 |
- |
- |
Функциональное и логическое программирование |
140 |
Функциональное программирование |
100 |
- |
- |
- |
- |
Рекурсивно-логическое программирование |
100 |
- |
- |
Объектно-ориентированное программирование |
140 |
- |
- |
- |
- |
Теория языков программирования и методы трансляции |
140 |
- |
- |
- |
- |
Теория вычислительных процессов |
100 |
Теория вычислительных процессов и структур |
100 |
- |
- |
- |
- |
- |
- |
Компьютерные технологии обучения |
72 |
Компьютерная графика |
140 |
Компьютерная графика |
150 |
Компьютерная графика |
100 |
Технология разработки программного обеспечения |
170 |
Технология разработки программного обеспечения |
100 |
Прикладное программное обеспечение |
156 |
- |
- |
Метрология и качество программного обеспечения* |
100 |
- |
- |
Человеко-машинное взаимодействие |
100 |
- |
- |
- |
- |
- |
- |
Системы искусствен-ного интеллекта* |
100 |
Интеллектуальные системы |
72 |
- |
- |
Параллельное программирование* |
100 |
- |
- |
- |
- |
Системы реального времени* |
100 |
- |
- |
- |
- |
Экономико-правовые основы рынка программного обеспечения* |
50 |
- |
- |
- |
- |
Экономико-правовые основы рынка программного обеспечения* |
50 |
- |
- |
- |
- |
Администрирование информационных систем |
200 |
- |
- |
Всего в цикле |
2200 |
Всего в цикле |
2050 |
Всего в цикле |
978 |
Национально-регио-нальный (вузовский) компонент и дисциплины по выбору студента, устанавливаемые вузом |
680 |
Национально-регио-нальный (вузовский) компонент и дисциплины по выбору студента, устанавливаемые вузом |
800 |
Национально-регио-нальный (вузовский) компонент и дисциплины по выбору студента, устанавливаемые вузом |
580 |
Дисциплины специализаций |
800 |
Дисциплины специализации |
962 |
Дисциплины специализации |
956 |
Всего |
6010 |
Всего |
6010 |
Всего |
6010 |
Для оценки содержания профессиональной подготовки по специальностям 220400 и 351500 полезно сравнить ее с международными стандартами [5]. Дадим соответствие между дисциплинами типового учебного плана специальности 220400 (на примере СПбГЭТУ "ЛЭТИ", курсивом выделены дисциплины вузовского компонента и специализации) и областями совокупности знаний по информатике (выделено жирным курсивом), принятыми в "Computing Curricula 2001: Computer Science" по рекомендации специальной, объединенной комиссии ACM и IEEE Computer Science [4]:
- Дискретные структуры: Дискретная математика, Математическая логика и теория алгоритмов;
- Основы программирования: - Информатика, Программирование на языке высокого уровня;
- Алгоритмы и теория сложности - Алгоритмы и структуры данных, Комбинаторные алгоритмы;
- Архитектура и организация ЭВМ - Информатика, Организация ЭВМ и систем, Архитектура вычислительных систем;
- Операционные системы - Операционные системы, Системы реального времени;
- Распределенные вычисления - Архитектура вычислительных систем, Теория вычислительных процессов, Сети ЭВМ и телекоммуникации, Параллельное программирование;
- Языки программирования - Теория языков программирования и методы трансляции, Функциональное и логическое программирование, Объектно-ориентированное программирование, Разработка языковых процессоров;
- Взаимодействие человека и машины - Человеко-машинное взаимодействие.
- Графика и визуализация - Компьютерная графика, Инженерная графика;
- Интеллектуальные системы - Системы искусственного интеллекта, Функциональное и логическое программирование;
- Управление информацией - Базы данных; Методы и средства защиты компьютерной информации;
- Социальные и профессиональные вопросы программирования - Экономико-правовые основы рынка программного обеспечения, Процесс разработки программных изделий;
- Программная инженерия - Технология разработки программных систем, Метрология программного обеспечения; Метрология, стандартизация и сертификация, Объектно-ориентированные технологии разработки программных систем, Качество и надежность ПО;
- Методы вычислений - Вычислительная математика; Теория вероятностей, математическая статистика и случайные процессы; Основы теории управления.
Этот перечень показывает, что профессиональная подготовка программистов на базе Российских ГОС по содержанию в целом соответствует международным рекомендациям.
Проведенный анализ рассмотренных ГОС показывает, что
Специальности 010200 - "Прикладная математика и информатика" и 073000 - "Прикладная математика" ориентированы прежде всего на подготовку математиков с углубленными знаниями программирования и информационных технологий; для этих специалистов программное обеспечение это в большей степени либо инструмент (моделирования и исследования), либо источник интересных и актуальных проблем теоретического программирования;
Специальности 220400 - "Программное обеспечение вычислительной техники и автоматизированных систем" и 351500 - "Математическое обеспечение и администрирование информационных систем" ориентированы на подготовку профессиональных программистов, для которых программное обеспечение - основной объект профессиональной деятельности;
Необходимо более точно позиционировать эти специальности (220400 и 351500) на образовательном поле. На наш взгляд ГОС специальности 220400 следует развивать в направлении технологии разработки программных систем (программная инженерия), приведя в соответствие специфики этой специальности её общеинженерную составляющую (аналогично рекомендациям [4]). В рамках другой специальности (или этой же, но с соответствующими изменениями стандарта) целесообразно было бы в содержании подготовки сделать акцент на теоретическое и системное программирование.
СПИСОК ЛИТЕРАТУРЫ
- Приказ Минобразования России от 08.11.2000 г. № 3200 "О частичном изменении приказа Минобразования России от 02.03.2000 г. № 686 "Об утверждении Государственных образовательных стандартов высшего профессионального образования".
- Федоров И.Б., Коршунов С.В., Советов Б.Я. Новые специальности направления подготовки специалистов "Информационные системы" // Информационные технологии, №8, 2002, с.2-8.
- Сухомлин В.А. "Информационные технологии" - актуальное образовательное направление // Информационные технологии, №8, 2002, C.9-17.
- Computing Curricula 2001: Computer Science // Association for Computing Machinery and Computer Society IEEE.
- Рекомендации по преподаванию информатики в университетах: Пер. с англ.СПб., 2002
- Государственный образовательный стандарт высшего профессионального образования. Направление подготовки дипломированного специалиста 654600 - Информатика и вычислительная техника. Квалификация - инженер. М.: Министерство образования Российской Федерации. 2000. (Специальность 220400 - Программное обеспечение вычислительной техники и автоматизированных систем).
- Государственный образовательный стандарт высшего профессионального образования. Направление подготовки дипломированного специалиста 657100 - Прикладная математика. Квалификация - инженер-математик. М.: Министерство образования Российской Федерации. 2000. (Специальность 073000 - Прикладная математика).
- Государственный образовательный стандарт высшего профессионального образования. Специальность 351500 - Математическое обеспечение и администрирование информационных систем. Квалификация - математик-программист. М.: Министерство образования Российской Федерации. 2000.
- Государственный образовательный стандарт высшего профессионального образования. Специальность 010200 - Прикладная математика и информатика. Квалификация - математик, системный программист. М.: Министерство образования Российской Федерации. 2000.
Презентация к докладу (MSPowerPoint, 206Kb)...
|