Как общаются учебный курс и СДО
На протяжении всего процесса обучения происходит обмен информацией между курсом (или, точнее, текущим учебным модулем) и системой управления обучением. Как именно это происходит? Собственно говоря, способов общения учебного модуля и системы управления обучением не так уж и много. И подразделяются они на две группы: обмен файлами и web-обмен.
Первый способ - обмен файлами - появился давно, предусматривал запуск учебных материалов с файлового сервера, сохранение информации учебным модулем в файлы определенных форматов, которые впоследствии загружались в систему управления обучением. В настоящее время можно считать уже устаревшим - его практически полностью вытеснил web-обмен. Поэтому остановим его дальнейшее описание.
Web-обмен предполагает запуск учебных материалов с web-сервера (как правило, выделенного специально под систему управления обучением) с последующим обменом информации по протоколу HTTP (который, собственно, и является основой World Wide Web).
Обычно информация о состоянии учебного модуля принимается/посылается незаметно для обучаемого, что называется "в бэкграунде". Существует две наиболее распространенных схемы обмена данными: прямая и через "посредника" (так называемый адаптер, который запускается на компьютере обучаемого).
Первая схема - прямой обмен - используется в протоколе AICC (Appendix A). Рассмотрим подробно обычную последовательность обмена данными в этом случае.
- Обучаемый нажимает на ссылку запуска учебного модуля. При этом в качестве параметров в строке запуска в учебный модуль передаются идентификатор сессии (уникальный для каждой попытки прохождения модуля) и URL трекинг-агента на сервере (трекинг-агент - программа, работающая на сервере СДО, осуществляющая прием/передачу данных о состоянии учебного модуля, а также их сохранение в базе данных СДО). Происходит загрузка учебного модуля (или его части - зависит от структуры модуля) в браузер на компьютере обучаемого.
- Обычно сразу же после загрузки учебный модуль посылает запрос трекинг-агенту на получение инициализационных данных. Если учебный модуль запускается не в первый раз, то трекинг-агент извлекает из базы данных и возвращает сохраненные ранее данные о состоянии модуля - в этом случае, получив эти данные, модуль восстанавливает свое последнее состояние (переходит на слайд, где ранее было закончено обучение, восстанавливает состояние вопросов и тестов и т.п.). Если это первый запуск, трекинг-агент возвращает начальные или пустые значения параметров - в этом случае учебный модуль стартует с самого начала.
- Обучаемый производит какие-либо действия в учебном модуле (проходит по слайдам, отвечает на вопросы и т.п.). В зависимости от настроек, учебный модуль может посылать данные о своем текущем состоянии на трекинг-агент либо по завершению текущей сессии, либо по таймеру (например, каждые 30 секунд), либо по факту существенного изменения состояния (например, по факту перехода на другой слайд). Очевидно, что наиболее надежным является последний способ. Периодичность отправки данных не определяется стандартами - все зависит от авторов курса и/или программного обеспечения, которое они использовали для создания учебных модулей (например, отправка данных в учебных курсах, сделанных с помощью редактора CourseLab, осуществляется по каждому переходу со слайда на слайд и по закрытию окна учебного модуля).
В случае обмена через адаптер (AICC Appendix B, все версии SCORM) в схему добавляется еще один промежуточный элемент, который служит "интеллектуальным шлюзом" для обмена данных между учебным модулем и системой. Несомненным плюсом такого варианта является то, что от учебного модуля более не требуется наличие собственного механизма посылки данных на сервер - учебный модуль общается только с адаптером, загружающимся обычно на компьютер обучаемого в соседнее с учебным модулем окно браузера, а прием, накопление и передачу данных осуществляет адаптер, являющийся составной частью СДО. Рассмотрим последовательность обмена даннми в этом случае.
- Обучаемый нажимает на ссылку запуска учебного модуля. Идентификатор сессии (уникальный для каждой попытки прохождения модуля) и URL трекинг-агента на сервере (трекинг-агент - программа, работающая на сервере СДО, осуществляющая прием/передачу данных о состоянии учебного модуля, а также их сохранение в базе данных СДО) могут быть переданы в модуль в качестве параметров в строке запуска (например, если СДО поддерживает как стандарт AICC, так и SCORM), но, в отличие от предыдущего способа, могут и не передаваться (например, если используется только SCORM). На компьютер обучаемого загружается адаптер (например, SCORM API), которому обычно уже известны и идентификатор сессии, и URL трекинг-агента. Происходит загрузка учебного модуля (или его части) в браузер на компьютере обучаемого.
- Обычно сразу же после загрузки учебный модуль ищет в соседних окнах адаптер и посылает запрос на инициализацию сессии. В процессе инициализации сессии адаптер обычно получает все необходимые стартовые данные.
- В случае, если адаптер прислал в модуль подтверждение инициализации сессии, модуль начинает запрашивать у адаптера стартовые данные. Если учебный модуль запускается не в первый раз, то адаптер возвращает сохраненные ранее данные о состоянии модуля - в этом случае, получив эти данные, модуль восстанавливает свое последнее состояние (переходит на слайд, где ранее было закончено обучение, восстанавливает состояние вопросов и тестов и т.п.). Если это первый запуск, адаптер возвращает начальные или пустые значения параметров - в этом случае учебный модуль стартует с самого начала.
- Обучаемый производит какие-либо действия в учебном модуле (проходит по слайдам, отвечает на вопросы и т.п.). В зависимости от настроек, учебный модуль может посылать данные о своем текущем состоянии в адаптер либо по завершению текущей сессии, либо по таймеру (например, каждые 30 секунд), либо по факту существенного изменения состояния (например, по факту перехода на другой слайд).
- Однако, заметим, что в отличие от прямой передачи данных, полученная от модуля информация остается в адаптере до тех пор, пока либо не будет получена явная команда "Сохранить данные" (Commit) от модуля, либо в случае окончания сессии модулем. В последнем случае адаптер должен переслать все имеющиеся в нем данные о состоянии модуля в СДО и закрыть сесиию.
Хотя способ передачи через адаптер может показаться более громоздким, чем прямая передача, на практике у него есть несомненные плюсы: учебный модуль может содержать менее сложный код передачи/приема данных, а требования безопасности для такого способа несколько слабее. Однако, нельзя сказать однозначно, что способ с адаптером всегда лучше - очевидно существуют и конфигурации оборудования, когда прямая передача оказывается удобнее.