Опыт использования интегрированной системы учебных курсов

1. Олейник П.П. Унифицированная модель для тестирования инструментов объектнореляционного отображения, Объектные системы - 2011: материалы III Международной научно-практической конференции - Ростов-на-Дону: ШИ ЮРГТУ, 2011. - с. 65-69.

2. Фаулер М. Архитектура корпоративных программных приложений, Пер. с англ. - М.: Издательский дом Вильямс, 2004. - 544 с.: ил. - Парал. тит. англ.

УДК 681.3

ОПЫТ ИСПОЛЬЗОВАНИЯ ИНТЕГРИРОВАННОЙ СИСТЕМЫ УЧЕБНЫХ КУРСОВ1

Грегер Сергей Эдуардович, доцент, Уральский федеральный университет имени первого Президента России Б.Н.Ельцина, Нижнетагильский технологический институт (филиал), Россия,

Нижний Тагил, segreger@gmail.com

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

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

Стремление сформировать у студентов некоторое цельное представление об объектной технологии как о технологии, имеющей системный характер, применимой в различных областях научного знания, привело к необходимости построения интегральной системы учебных курсов [1]. Интегральный курс строился в рамках трех дисциплин:

• «Прикладное программное обеспечение»;

• «Web-дизайн»;

• «Проектирование информационных систем».

Цель разработки сформулирована следующим образом: разработать интегральный курс, представленный отдельными модулями (каждый из которых формально может быть соотнесен с ранее представленными дисциплинами), но концептуально единый, формирующий цельное представление об использование объектных технологий при проектировании и реализации информационных web-систем.

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

• «Объектно-ориентированый язык программирования Python»;

• «Разработка web-приложений с использованием сервера приложений Zope и CMS Plone»;

• «Объектно-ориентированное проектирование информационных систем».

Хотя формально это независимые курсы, в реальности они сильно связаны между собой единым объектно-ориентированным языком программирования, использованием

1 Лауреат номинации "Лучший доклад о методах преподавания объектных технологий в ВУЗе". Автор доклада награждается правом бесплатной публикации одного доклада по данной тематике на следующей конференции

19

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

Курс «Объектно-ориентированный язык программирования Python» состоит из двух модулей. В первом модуле рассматриваются основы языка программирования, формируются представления о классах, объектных моделях, рассматриваются примеры реализации классов, используемых как при программировании в различных областях, так и в специфичных для web-программирования. При изучении модуля постоянно подчеркивается объектно-ориентированный характер языка, приводятся примеры использования такого подхода, рассматриваются некоторые паттерны программирования и проектирования. Уже на этом этапе изучение ведется с активным использованием элементов языка UML.

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

В курсе «Разработка web-приложений с использованием сервера приложений Zope и CMS Plone» рассматривается компонентный подход разработки web-приложений, методы организации, категоризации и классификации объектов различных классов, использование объектной базы. В качестве системы реализации выбрана система управления содержимым (CMS) Plone. При разработке web-приложений на базе Plone основное внимание уделяется вопросам организации большого числа разнотипных объектов в единую систему, выявлению способов разработки интерфейса пользователя. Студенты разрабатывают курсовой проект, задачей которого является построение объектно-ориентированного веб-приложения с помощью объектов существующих классов, используя метафору «Лего» - построение системы из существующих «кубиков», а также реализация пользовательского интерфейса.

В курсе «Объектно-ориентированное проектирование информационных систем» вопросы проектирования на языке UML рассматриваются в контексте разработки информационных систем на основе Plone. Используется специализированный UML-профиль, позволяющий создавать различные диаграммы UML для проектов, реализуемых на базе CMS Plone. Изучается весь цикл проектных работ в рамках технологии RUP, от формирования требований, разработки различных UML-моделей, до автоматической генерации программного модуля, его модификации и установки в существующую систему. В курсовом проекте учебного модуля предусмотрено проектирование дополнительных модулей для ранее разработанного web-приложения.

В результате студенты приобретают ряд компетенций, позиционирующих их как профессиональных разработчиков систем на языке программирования Python и CMS Plone. Сквозная тематика курсовых проектов часто приводит студентов к стремлению продолжать работы над выбранной темой в рамках дипломной работы.

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

20

Как правило, такие результаты являются основой для публикаций на различных конференциях [14-16].

Опыт первых лет чтения курса показал, что студенты испытывают сложности в его изучении, и связано это как с отсутствием учебных материалов на русском языке, так и с недостаточной практикой использования объектно-ориентированного подхода при разработке программного обеспечения. В течение почти шести лет преподавания был создан большой объем учебно-методического обеспечения. Кроме комплектов лекций и лабораторных работ, созданы и опубликованы различные учебно-методические материалы [2, 4-9]. Опубликовано учебное пособие «Сервер приложений Zope» [3], получившее сертификацию УМО.

При изучении курса студенты используют специально разработанный портал учебных ресурсов кафедры информационных технологий, размещенный во внутренней сети вуза. Портал разработан с использованием CMS Plone, и в разработке принимали и принимают участие студенты. Полученные результаты используются в курсовых и выпускных работах, для выступления на конференциях [11-16]. Для оперативного взаимодействия используются такие средства электронной коммуникации, как электронная почта и Skype. Вопросы и обсуждения дублируются в специализированный блог (http://greger-sergey.blogspot.com/).

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

• Интерпретатор языка Python;

• Пакет wxPython для разработки графического интерфейса пользователя;

• Пакет SqlAlchemy для разработки объектно-реляционных преобразователей;

• CMS Plone в качестве системы web-разработки;

• Редактор UML ArgoUML с профилем ArchgenXML;

• Генератор классов ArchgenXML для разработки пакетов расширения CMS Plone;

• Система разработки paster + ZopeSkel для разработки пакетов расширения CMS Plone с использованием специфического языка предметной области (DSL).

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

Литература

1. Грегер С.Э. Объектно-модельные отношения как способ интеграции обучения //. В сб. Ребенок в современном мире. - Нижний Тагил, 2002. - С. 26-28

2. Грегер С.Э. Использование сервера приложений «ZOPE» в учебном процессе вуза. // Педагогические науки. - 2006 - №2.- С.136-137

3. Грегер С.Э. Сервер приложений «Zope». Учебное пособие для вузов -М.:Горячая линия - Телеком, 2009.-256 с.:ил.

4. Грегер С.Э. Учебно-методический комплекс «Web-дизайн»: электронный УМК: учебное мультимедийное издание. Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. - Нижний Тагил: НТИ(ф) УГТУ-УПИ. Лаборатория электронных изданий ИВЦ . 2006. Рег. учетный номер 07001

5. Грегер С.Э. Учебно-методический комплекс «Язык программирования Python»: электронный

21

УМК: учебное электронное издание. Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. - Нижний Тагил: НТИ(ф) УГТУ-УПИ. Лаборатория электронных изданий ИВЦ . 2007. Рег. учетный номер 07031

6. Грегер С.Э. Использование языка программирования Python: электронное учебное пособие: электронное учебное издание электронная Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. -Нижний Тагил: НТИ(ф) УГТУ-УПИ.

7. Грегер С.Э. Web-сервер приложений Zope. Разработка динамических сайтов (Методические указания к изучению курса «Web-дизайн») Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. -Нижний Тагил: НТИ(ф) УГТУ-УПИ. 2007. -32с.

8. Грегер С.Э. Web-сервер приложений Zope. Установка и интерфейс (Методические указания к изучению курса «Web-дизайн») Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. -Нижний Тагил: НТИ(ф) УГТУ-УПИ. 2007.-32с.

9. Грегер С.Э.Учебно-методический комплекс «Сервер приложений ZOPE»: электронный УМК: учебное электронное издание. Нижнетагил. технол. ин-т(фил.) УГТУ-УПИ. -Нижний Тагил: НТИ(ф) УГТУ-УПИ. Лаборатория электронных изданий ИВЦ . 2008. Рег. учетный номер 14/23-08043-23

10. Грегер С.Э. Администрирование и интерфейс пользователя CMS Plone (монография). Федер. Агентство по образованию, ГОУ ВПО "УГТУ-УПИ им.первого Президента России Б.Н.Ельцина". Нижнетагил. технол. ин-т (фил.). -Нижний Тагил: НТИ(ф) УГТУ-УПИ, 2009. -140с.

11. Грегер С.Э. Пакет компонентов обеспечения информационной поддержки образовательного процесса для учебного портала на базе CMS Plone. Тезисы докладов V конференции «Свободное программное обеспечение в высшей школе» . М:Институт логики 2010г. с.15-17

12. Грегер С.Э. Разработка дополнительных компонентов для обеспечения информационной поддержки образовательного процесса для учебного портала на базе CMS Plone. Новые образовательные технологии в вузе: сборник материалов седьмой международной научнометодической конференции, 8 - 10 февраля 2010 года. В 2-х частях. Часть 1. Екатеринбург: ГОУ ВПО «УГТУ-УПИ имени первого Президента России Б.Н.Ельцина», 2010. С.97-100

13. Грегер С.Э. Реализация задач дистанционного обучения средствами CMS Plone. Актуальные вопросы использования инновационных технологий в образовательном процессе: Материал всероссийской научно-практической конференции, Нижний Тагил, Россия, 2010г. /НТГСПА — Нижний Тагил, 2010.С 166-169.

14. Грегер С.Э., Сковородин Е.Ю. Построение онтологического портала с использованием объектной базы // Объектные системы - 2010: Материалы I Международной научнопрактической конференции. Россия, Ростов-на-Дону, 10-12 мая 2010 г / под общ. ред. П.П. Олейника. - Ростов-на-Дону, 2010. С. 74-78.

15. Грегер С.Э., Гурова О.И. Разработка системы мониторинга знаний для CMS Plone. //Молодежь и наука : материалы региональной науч.-практ. конф. (21 мая 2010 г., г. Нижний Тагил) / Федер. агентство по образованию, ГОУ ВПО «УГТУ-УПИ имени первого Президента России Б.Н.Ельцина», Нижнетагил. технол. ин-т (фил.). - Нижний Тагил : НТИ (ф) УГТУ-УПИ, 2010. С. 63-66

16. Грегер С. Э., Баклаев Д. А., Разработка компонента управления группами и профилями персон учебного заведения на базе LDAP-каталога для CMS Plone //Молодежь и наука : материалы региональной науч.-практ. конф. (21 мая 2010 г., г. Нижний Тагил) / Федер. агентство по образованию, ГОУ ВПО «УГТУ-УПИ имени первого Президента России Б.Н.Ельцина», Нижнетагил. технол. ин-т (фил.). - Нижний Тагил : НТИ (ф) УГТУ-УПИ, 2010. С.66-68

УДК 681.3

СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ ОНТОЛОГИЧЕСКОЙ МОДЕЛИ И ОБЪЕКТНОЙ МОДЕЛЕЙ ПРИ ПРОЕКТИРОВАНИИ И РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ WEB-СИСТЕМ

Грегер Сергей Эдуардович, доцент, Уральский федеральный университет имени первого Президента России Б.Н.Ельцина, Нижнетагильский технологический институт (филиал), Россия,

Нижний Тагил, segreger@gmail.com

22