Educational Technology & Society 6(2) 2003
ISSN 1436-4522
pp. 94-107

Авторская система TeachLab CourseMaster

А.А. Пугачев
кафедра математики и информатики
Улан-Удэнский филиал Восточно-Сибирского института МВД России,
Улан-Удэ, Россия
teachlab@km.ru

АННОТАЦИЯ
В статье описывается программный комплекс для разработки адаптивных электронных учебных курсов TeachLab CourseMaster. Кратко описаны основные принципы реализации и предоставляемые возможности.

Ключевые слова
авторская система, ЭУК, адаптация, педагогические агенты, тестирование.

 

Введение

Анализ опыта внедрения в школах, вузах и различных предприятиях, компьютерных программ учебного назначения показывает, что важным фактором, препятствующим их широкому применению, является неполное соответствие предлагаемого материала идеям и методам преподавания той или иной дисциплины. Многие педагоги проявляют значительную осторожность в использовании обучающих программ и педагогических программных средств. Идеальным решением этой проблемы является полный учет требований пользователя (преподавателя), что практически недостижимо. В настоящее время в сфере разработки обучающих и других учебных программ доминируют интересы и предпочтения производителя, то есть программистов-разработчиков компьютерных программ. В печати и на конференциях различного уровня не раз высказывалось мнение, что современному педагогу, скорее нужен не диск с полным мультимедийным курсом по предмету, а некоторые элементарные кирпичики, которые он мог бы использовать в качестве красочных иллюстраций своих идей и методов и которые более органично вписались бы в традицию использования наглядных пособий, подбираемых педагогом для своего занятия.
В связи с этим представляется целесообразным создание не законченной обучающей продукции, а своеобразных электронных конструкторов - инструментальных программных средств (авторских систем) для создания педагогом собственных ЭУК. В настоящее время существует довольно много таких систем, как коммерческих, так и исследовательского уровня, различающихся простотой освоения, предоставляемыми возможностями, стоимостью и т.д. В рамках данной статьи рассмотрена авторская система TeachLab CourseMaster ( http://teachlab.km.ru). Система TeachLab CourseMaster предназначена, в первую очередь, для создания адаптивных электронных учебных курсов.
Основные возможности системы, приведены ниже:

Представление знаний в системе

Система обеспечивает представление в электронном учебном курсе предметных, педагогических и диагностических знаний [Норенков Ю. И., 1993].
К предметным знаниям отнесены: учебный материал, знания, способствующие поиску требуемой информации, и знания о структуре предметной области.
В системе CourseMaster учебный материал представлен в виде страниц учебного курса, которые обладают следующими свойствами:

Рисунок 1. Содержание ЭУК.


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

Представление педагогических знаний

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

Атрибут = Значение

где Атрибут - символьный идентификатор элемента Реестра: Значение - значение данного элемента Реестра, принадлежащее к одному из следующих типов: логический (Boolean), целый (Integer), вещественный (Float), строковый (String), поток (Stream), компонент (Component).
Для анализа и модификации содержимого Реестра используются продукционные правила, генерируемые автоматически при проектировании курса или разрабатываемые автором курса.
Каждое продукционное правило имеет следующий формат:

Список условий > Список действий

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

Диагностические знания

Диагностические знания содержат сведения о способах и методах контроля знаний, умений и навыков обучаемого (вопросы и упражнения).
В рассматриваемой системе, по способу получения ответа, выделены следующие типы (варианты) контрольных вопросов (упражнений): Поддержка вопросов с заданным множеством ответов - обязательное условие для любой авторской системы современного уровня. Однако более полно контролировать процессы усвоения знаний, формирования умений и навыков позволяют вопросы с присоединенной процедурой вывода и анализа ответов (свободно конструируемые вопросы).
В чем суть вопросов этого типа? Практика показывает, что гораздо эффективнее, при проверке знаний и умений, вместо вопроса, например, "Как создать новую папку на Рабочем столе Windows?", потребовать - "Используя контекстное меню, создайте папку на Рабочем столе Windows". В этом случае, тестируемый, не выбирает правильный ответ из предложенных вариантов, а выполняет набор действий, который приводит к желаемому результату. Именно такое тестирование и позволяют реализовать свободно конструируемые вопросы.
Вопросы этого типа - наиболее эффективный способ проверки знаний и умений, но платой за эффективность является довольно высокая сложность разработки данных вопросов, связанная с необходимостью знания основ программирования. Однако в будущем, благодаря разработки специализированных компонент (в рамках данного проекта - обучающих компонент), сложность проектирования данных вопросов значительно снизится.
Для вопросов любого типа в системе CourseMaster могут быть определены метаданные, наличие которых позволяет генерировать тесты, индивидуализированные и соответствующие параметрам запроса автора курса или системы, т.е. авторы могут точно определить различные параметры опроса обучаемых, необходимые в некоторой точке учебного курса: общее количество вопросов, пропорцию вопросов специфического вида или специфичных тем, трудность, важность и т.д. В частности, использование метаданных позволило реализовать такую функцию система как "Работа над ошибками".
По способу активации множество диагностических знаний разделено на следующие подмножества: Автоматизированное оценивание уровня знаний и умений является в достаточной мере формальной процедурой и его качество напрямую зависит от используемых алгоритмов. Для информирования о результатах обучения и отражения динамики развития обучаемого в системе CourseMaster использован алгоритм, в основу которого положена многозначная логика с векторной семантикой VTF [Аршинский Л. В., 1998, Аршинский Л. В., Пугачев А. А., 2001; Гаврилова, Хорошевский, 2000]. Данный алгоритм обеспечивает: Важным достоинством алгоритма является возможность естественным образом учитывать вес каждого вопроса в тесте. Механизм задания весовых коэффициентов может быть различен. В рассматриваемой системе вес вопроса (упражнения) определяется в соответствии с системой дидактических показателей предложенных В.П. Беспалько [Беспалько В.П., 1977]: В соответствии с данными показателями вес i-вопроса, определяется выражением
,
где - коэффициенты, определяющие приоритет того или иного показателя, - поправочный коэффициент.
Существенным, в данном подходе, является использование, наряду с понятием вес вопроса, понятия - вес ответа, который определяется как степень соответствия j ответа текущему вопросу, выраженная в процентах или долях единицы.
Итоговый балл, получаемый тестируемым, при выполнении i задания теста определяется выражением:
,
где
t - тип вопроса (в настоящей работе: 0 - "одиночный выбор", 1- "множественный выбор", 2 - "ввод с клавиатуры", 3 - "область на рисунке", 6 - "соответствие" и 4, 5 - "конструктор вопросов");
kij - степень соответствия j ответа содержанию i вопроса;
NF - число ответов выбранных неправильно (для вопросов "множественный выбор" и "соответствие");
NT - число ответов выбранных правильно (для вопросов "множественный выбор" и "соответствие").

Адаптация к предметной области

Адаптация к предметной области позиционирует систему CourseMaster, как совокупность инструментальных средств, на базе которых появляется возможность разработки учебных курсов из различных областей знаний. Технология положенная в основу авторской системы инвариантна к различным предметным областям. Разумеется, инвариантность не следует трактовать в абсолютном смысле. При переходе от одной предметной области к другой отдельные составляющие технологии могут модифицироваться (адаптироваться), однако ядро системы, реализующее общие принципы и механизмы построения электронных учебных курсов, остается неизменным.
Процедуры адаптации к новым предметным областям достаточно гибкие, в результате чего затраты, на настройку системы на новую предметную область, как минимум, на порядок меньше затрат на разработку новой системы "с нуля".
Практической стороной решения этой проблемы явилось: Процесс конструирования страниц курса аналогичен процессу разработки программ в любой среде визуального программирования, например, Delphi (Рисунок 2): проектирование интерфейса путем манипуляции набором компонент и связывание их с помощью кода на Object Pascal (VBScript или JavaScript).

Рис. 2. Конструктор страниц.

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

Рис. 3. Подключение компонент и элементов ActiveX.

Решение некоторых типовых задач в системе TeachLab CourseMaster

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

Объединение вопросов и упражнений в тесты

Тест - объективное и стандартизированное измерение, легко поддающееся количественной оценке, статистической обработке и сравнительному анализу.
Структурно тест представляет собой взаимосвязанный набор из серий заданий равной трудности, направленных на один объект исследования (тему, умение, навык и т.п.).
При проведении тестов с целью итогового контроля, определения общего уровня владения предметом, диагностики знаний возникает задача проверки и оценки знаний, умений и навыков испытуемого по широкому перечню областей, в то время, как каждый конкретный тест обычно направлен на какой-то один объект тестирования. В этом случае применяют так называемые "тестовые батареи". Формально тестовая батарея представляет собой один большой тест, измеряющий сразу несколько характеристик испытуемого.
Структура тестовой батареи определяется структурой предметной области, и для ее формирования разработан механизм, который позволяет из базового набора вопросов и упражнений (тестов) формировать произвольные тестовые батареи.
Для работы с тестовыми батареями, в системе TeachLab CourseMaster можно использовать обучающий компонент TTestButton и/или встроенную функцию.
Обучающий компонент TTestButton. Компонент имеет большое количество настраиваемых свойств, но непосредственно на сеанс тестирования влияют только следующие:

Таблица 2. Свойства обучающего компонента TTestButton .

Свойство Пример Описание
Test3 50 Процентное соотношение набранных баллов к возможному числу баллов для получения оценки "три".
Test4 75 Процентное соотношение набранных баллов к возможному числу баллов для получения оценки "четыре".
Test5 85 Процентное соотношение набранных баллов к возможному числу баллов для получения оценки "пять".
TestCount 15 Количество вопросов в сеансе тестирования.
TestQuery Tema=0 and Gamma=1
Строка, определяющая фильтр, по которому будут выбираться вопросы для данного теста (см. следующую таблицу).
TestTime 20 Время для прохождения данного теста в минутах. Если время равно 0, то время не ограничено.
TestTitle Основные понятия Определяет строку для заголовка окна тестирования и переменную, в которой будут сохранены результаты тестирования в Модели пользователя.

Наиболее существенным является свойство TestQuery, определяющее фильтр, по которому будут выбираться вопросы для данной тестовой батареи.

Таблица 3. Параметры фильтра.

Переменная Алиас Диапазон значений Описание
Tema Тема 0..N Включить в тестовую батарею вопросы только по указанной теме тестирования. N - число тем.
Alfa Уровень усвоения 0..2 Включить в тестовую батарею вопросы только указанного уровня усвоения учебного материала.
Beta Уровень представления 0..3 Включить в тестовую батарею вопросы только указанного уровня научности учебного материала.
Gamma Уровень осознанности 0..2 Включить в тестовую батарею вопросы только указанного уровня осознанности.
TypeQuest Тип вопроса 0..6 Включить в тестовую батарею вопросы только указанного типа.
Page Страница курса 0..M Включить в тестовую батарею только вопросы, соответствующие определенной странице учебного курса. M - число страниц учебного курса.
Impotent Важность 0..2 Включить в тестовую батарею только вопросы определенной степени важности.

Настройка данного свойства осуществляется с помощью визуального построителя запросов.

Рисунок 5. Настройка фильтра.

Обеспечение интеграции учебных курсов

Практически в каждой учебной дисциплине может потребоваться наличие знаний из другой дисциплины, т.е. при изучении тем одного учебного курса могут потребоваться сведения из другого.
Физическое объединение всех необходимых знаний в рамках одного учебного курса неизбежно приведет к их дублированию, и, как следствие, к увеличению сроков и стоимости разработки и сопровождения. Кроме того, такое объединение может оказаться неэффективным ввиду быстрого изменения самих предметных знаний.
В связи с этим обязательное свойство современной обучающей системы - возможность интеграции информации из различных учебных курсов и внешних источников (файлы на жестком диске, данные Intranet и Internet).
Для решения проблем, связанных с интеграцией знаний, в системе TeachLab CourseMaster можно использовать обучающий компонент TMHotSpot и/или встроенные функции.
Использование компонента TMHotSpot. Компонент TMHotSpot имеет большое количество настраиваемых свойств, но наиболее существенными, для решения проблемы интеграции знаний, являются следующие:

Таблица 4. Свойства обучающего компонента TMHotSpot.

Свойство Пример Описание
HotSpotType hstInternet Значение данного свойства определяет способ организации перехода:
- hstMainWnd - при активизации гиперссылки новая страница замещает текущую в главном окне программы;
- hstPopUp - при активизации гиперссылки новая страница открывается в дополнительном окне;
- hstInternet - при активации гиперссылки запускается браузер (например, IE) и открывается указанная страница;
- hstCourse - при активации гиперссылки запускается копия Проигрывателя курсов и открывается курс, указанный в свойстве
- PageName (без повторной регистрации пользователя);
- hstCustom (только для опытных разработчиков) - при активизации гиперссылки вызывается событие OnClick данного компонента.
PageName http://teachlab.km.ru Имя страницы для перехода
PopUpModal False Определяет, будет ли дополнительное окно модальным (PopUpModal=True) или нет (PopUpModal=False)
PopUpHeight 400 Определяет высоту дополнительного окна
PopUpWidth 600 Определяет ширину дополнительного окна

В результате использования данного компонента создается гиперссылка на определенную страницу курса (другой курс, сайт и т.д.). Для пользователя активизация такой ссылки означает переход между страницами курса, от одного учебного курса к другому и т.д., с обеспечением возможности возврата и сохранения состояния динамической модели обучаемого.
Число учебных электронных курсов, доступных для одновременной работы, ограничено только аппаратными возможностями используемого ПК.

Применение педагогических агентов

Стремительный рост масштабов создания и практического использования обучающих программных средств сопровождается расширением исследований, направленных на поиск новых эффективных форм представления учебной информации и способов взаимодействия учащихся с образовательной средой. Одним из современных и перспективных способов организации диалога пользователя с компьютером является применение интерфейсных агентов - анимированных персонажей, присутствие которых на экране монитора делает общение с программой более человечным.
Интерфейсных агентов, действующих в образовательных программных средах, называют педагогическими агентами. Исследования показали, что взаимодействие обучаемых с педагогическими агентами усиливает мотивацию, активизирует восприятие информации и укрепляет доверие к получаемым сообщениям, а это все в совокупности, в свою очередь, повышает эффективность образовательных программных средств.
Перечисленные достоинства педагогических агентов послужили основанием для включения в авторскую систему TeachLab CourseMaster поддержки педагогических агентов.
В настоящее время можно выделить три технологических варианта реализации педагогических агентов: Учитывая требования, предъявляемые к технологии авторских систем, в качестве базового было выбрано решение фирмы Microsoft - MS Agent.
Microsoft Agent - это набор программных сервисов, которые поддерживают воспроизведение интерактивных анимированных персонажей в рамках интерфейса Microsoft Windows.
Программный интерфейс Microsoft Agent позволяет управлять воспроизведением персонажей, вводом и выводом информации. В дополнение к поддержке обычного способа вывода информации (текстовое сообщение), персонажи могут воспроизводить синтезированную речь (text-to-speech, TTS) и аудиофрагменты. Персонажи отображаются в собственных окнах, что делает интерфейс более удобным и гибким. В состав Microsoft Agent входит компонент ActiveX, на основе которого реализован обучающий компонент TAgent.
Для программного управления объектом TAgent в распоряжение разработчика электронного курса предоставляется объектная модель.
В центре объектной модели располагается невидимый пользователям объект Agent, а также объект Request. Персонажи представлены коллекцией Character, доступные команды - коллекцией Command, а специальное окно для вывода информации - объектом Balloon. Также объект Agent включает объекты SpeechInput, CommandsWindow, AudioOutput и PropertySheet.
С точки зрения управления в рамках ЭУК отдельными персонажами, наибольший интерес представляет объект Characters. Так как технология Microsoft Agent позволяет одновременно использовать несколько педагогических агентов, данный объект представляет собой коллекцию, к которой можно обращаться либо напрямую, либо через объект Character.
Список основных методов, используемых для управления конкретным педагогическим агентом, достаточно обширен (см. соответствующую документация по MS Agent), однако для реализации интерактивного диалога с обучаемым функциональные возможности, предоставляемые технологией MS Agent, несколько расширены. В частности, дополнительно реализован ряд процедур и функций (Таблица 1).

Таблица 4. Дополнительные процедуры и функции для работы с педагогическими агентами.

Процедуры и функции Описание
MoveToControl(Control:TControl; Character: IAgentCtlCharacterEx; Speed:Integer):integer; Перемещает фигурку педагогического агента Character к заданному обучающему компоненту с заданной скоростью перемещения параметром Speed. Если параметр 0, персонаж сразу же окажется в указанном месте экрана. Чем больше число Speed, тем медленнее персонаж будет перемещаться. Во время движения проигрываются анимации группы Moving.
Если функция возвращает значение -1, то агент расположился слева от компонента Control, если 1 - то справа.
HSShowMessage(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer); Выводит диалоговое окно с сообщением Msg, связанное с агентом Character. Параметры AXCursorOffset, AYCursorOffset необязательны и задают смещение окна относительно фигуры агента.
HSShowError(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer); Выводит диалоговое окно с сообщением Msg о возможной ошибке. Остальные параметры совпадают с HSShowMessage.
HSShowWarning(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer); Выводит диалоговое окно с предупреждением Msg. Остальные параметры совпадают с HSShowMessage.


HSShowInfo(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer); Выводит диалоговое окно с информационным сообщением Msg. Остальные параметры совпадают с HSShowMessage.
HSConfirmMessage(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer) : Boolean; Выводит диалоговое окно с запросом Msg и кнопками Да и Нет. Остальные параметры совпадают с HSShowMessage.
Возвращает Истину, если обучаемый нажал кнопку Да, и Ложь в противном случае.
HSAskYesNoCancel(const Msg: string; AEditorControl : IAgentCtlCharacter; AXCursorOffset, AYCursorOffset : Integer) : Integer; Выводит диалоговое окно с запросом Msg и кнопками Да, Нет и Отмена. Остальные параметры совпадают с HSShowMessage.
Возвращает 0, если обучаемый нажал кнопку Да, 1 - если нажата кнопка Нет, и 2 - для кнопки Отмена.

Рис. 4. Редактор диалогов.

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

Создание и использование понятийных карт (concept maps)

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

Таблица 5. Свойства обучающего компонента TConceptMap.

Свойство Описание
Options Определяет опции концепт-карты
fcoCanDelete- разрешает удалять элементы концепт-карты;
fcoCanDrag- разрешает перетаскивать элементы концепт-карты;
fcoCanSelect- разрешает выделять элементы концепт-карты;
fcoMultiSelect- разрешает выделять несколько элементов концепт-карты одновременно.
Zoom Задает масштаб концепт-карты. Принимает значения от 0 до 100%. Если равно 0, то карта масштабируется для полного помещения.
Connections Коллекция связей между концептами концепт-карты.
Objects Коллекция концептов предметной области
SelectedObject Концепт предметной области, выбранный пользователем
SelectedConnection Связь между концептами предметной области, выбранная пользователем.


Рис. 6. Создание понятийной карты.

Заключение

Разработанная система может использоваться как для работы с артикулируемыми, так и с неартикулируемыми знаниями, используя, соответственно, тематический и задачный подходы или их комбинацию [Атанов Г.А., 2001]. Это позволяет разрабатывать в системе различные педагогические программные средства: электронные учебные курсы, компьютеризированные учебники, контролирующие программы, тренажеры, справочники, энциклопедии и т.д. Причем, анализ решения типовых задач, возникающих при разработке данных педагогических средств, позволяет утверждать, что, в зависимости от потребностей разработчика и уровня его знаний, одни и те же задачи могут быть решены различными методами.

Литература

[Гаврилова Т. А., Хорошевский В. Ф., 2000] Гаврилова Т. А., Хорошевский В. Ф., Базы знаний интеллектуальных систем /Т. А. Гаврилова, В. Ф. Хорошевский - СПб: Питер, 2000. - 384 с.: ил.
[Норенков Ю. И., 1993] Норенков Ю. И., Исследование и разработка принципов построения адаптивных обучающих систем: Дис. на соискание ученой степени кандидата тех. наук - М:, 1993.
[Беспалько В. П., 1977] Беспалько В. П. Основы теории педагогических систем. Воронеж: Изд-во Воронеж. ун-та, 1977. 303 с.
[Пугачев А. А., 2001] Пугачев А. А. Адаптивные компьютерные обучающие системы // Материалы международной научно-практической конференции "Информационные технологии в науке и образовании". - Шахты, 2001. C. 29-31.
[Аршинский Л. В., 1998] Аршинский Л. В. Методы обработки нестрогих высказываний. Иркутск: ВСИ МВД РФ, 1998. - 40 с.
[Аршинский Л. В., Пугачев А. А., 2002] Аршинский Л. В., Пугачев А. А. Программный комплекс диагностики знаний TeachLab TestMaster// Информатика и образование. №7, 2002. С. 68-74
[Атанов Г.А., 2001] Атанов Г.А. Деятельностный подход в обучении. - Донецк: ЕАИ-пресс, 2001.