MediaWikiQuizzer или ВикиЭкзамены — тесты, удобные и для преподавателя и для студента (Стас Фомин, OSEDUCONF-2015)

Материал из 0x1.tv

(перенаправлено с «20150125K»)
Докладчик
Стас Фомин.jpg
Стас Фомин

«Тесты с вариантами для проверки знаний» — классический подход для дистанционного и очного обучения. Однако все это работает, когда их легко создавать и поддерживать, когда удобно и преподавателю и студенту. Иначе получается взаимное мучение. Автору доклада, в свое время не удалось найти такой системы, и пришлось изобрести свое, на основе широко известной открытой вики-системы MediaWiki, и ряде собственных доработок MediaWiki, также с открытым исходным кодом.

Видео

on youtube

Посмотрели доклад? Понравился? Напишите комментарий! Не согласны? Тем более напишите.


Тезисы

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

Однако, практически во всех системах, с которыми приходилось сталкиваться автору, при разработке таких систем, почему-то делается упор на что угодно — совместимость с стандартами SCORM, интеграцией с учетными системами ВУЗов, и даже межвузовским взаимодействием[1] … на всем, кроме самого важного — удобства создания и обновления этих самых тестов. Обычно это очень неудобный интерфейс, где путем HTML-форм, медленно и уныло забиваются вопросы, ограниченные унылым плоским текстом, или наоборот, замусоренные HTML-разметкой.

В результате очень сложно:

  • обновлять тесты (с хранением истории);
  • вести совместное редактирование;
  • использовать продвинутое форматирование — формулы, графы, изображения;
  • отслеживать эффективность и автоматический поиск ошибок в тестах — ибо тесты с ошибками, или просто неудачно сформулированные вопросы чудовищно демотивируют обучающегося («ну вас к черту, я же ответил правильно!»);
  • строить целостные варианты (например, комбинировать одни и те же вопросы в различные блоки, в зависимости от содержания курсов).

В целом, проблема в неудобности и недоделанности CMS (Content Management Systems) для ведения тестов, в результате:

  • разработкой тестов обычно занимаются не преподаватели, а студенты, которых не жалко заставить заниматься трудоемким забиванием текста в формы;
  • вопросы страдают примитивизмом, часто составляются по букоедскому принципу, накрывая без понимания предложения из текста курса (в стиле «Мать грозит ему в окно… — А кто грозит ему в окно? А мать грозит ему куда? А мать что делает ему в окно?»), и а затем тесты не изменяются, что приводит к мучению учащихся, (см. отзывы к курсам на сайте intuit.ru);
  • от всего этого страдают студенты («ответы неправильные, вопросы дуратские, этот тест невозможно пройти правильно, ну все это нафиг»).

Решение автора — взять одну из самых удобных CMS, MediaWiki, и расширить ее функциональность средствами контроля представленных знаний. Наиболее распространенная IT-технология контроля знаний — это тесты, являющие собой набор сформулированных вопросов, снабженных вариантами ответа, часть из которых являются правильными, а часть — нет. Это дает как максимальную простоту тестирования, так и точность проверки. Проектировщику обучающих материалов нужно только сформулировать проверочную структуру — набор вопросов, каждый из которых имеет варианты правильных и неправильных ответов, и возможно разьяснение.

Базовые технологии MediaWiki немедленно дают возможности:

  • Удобного совместного редактирования с историей — тесты (вопросы+варианты ответа) ведутся в «плоских» статьях (а не в неудобных веб-формах), в результате их очень легко редактировать, перенося блоки текста из одного вопроса в другой, заводя варианты одного и того же вопроса, или модифицируя «засвеченный» студентами вопрос.
  • MediaWiki-разметка является прекрасным балансом между возможностями форматирования, и незамусоренной читаемостью.
  • Можно, используя механизмы шаблонов MediaWiki, включать в композитные тесты блоки вопросов, и создавать разные тесты для разных курсов, в зависимости от рассмотренных тем, и при этом не терять целостность — т.е. исправление какого-либо теста немедленно исправит ошибки и во всех включающих его тестах.

Дополнительные возможности, с учетом расширений проекта MediaWiki4Intranet делают MediaWiki идеальной технологией для ведения вопросов, и даже целиком дистанционных курсов. В MediaWiki4Intranet можно использовать и удобную для ручного ввода Wiki-разметку, и HTML-код, и дажеLateX-верстку, которая дает неограниченные возможности в представлении математики. Также можно размещать различные диаграммы (посредством Graphviz, Gnuplot, PlantUML), видеоролики, а также просто изображения, включая векторные. Доработаны возможности экспорта статей, так, что в результате очень легко экспортировать-импортировать блоки вопросов (включая необходимую графику и т.п.) между различными системами. И самое главное, с помощью расширения IntraACL из проекта MediaWiki4IntraNet, реализовано самое необходимое — разграничение прав, чтобы «спрятать» вопросы от студентов, ну или даже ввести сложное дискреционное разграничение прав, позволяя часть вопросов редактировать даже студентам, а часть прятать… Остается дело за малым — сделать саму систему тестирования. Автором давно (с 2006 года) разработано расширение MediawikiQuizzer, развитие которого с тех пор непрерывно продолжается сообществом. Оно позволяет описывать, тесты в виде вики-статей, синтаксис которых примерно понятен из примера:

;Title: Эффективные алгоритмы
;Intro: Тест по курсу «Эффективные алгоритмы»
;Shuffle choices: yes
;Shuffle questions:  yes
;Limit questions: 3

==Question: Полиномиальный в среднем для упаковки  ==
Если алгоритму из темы про полиномиальный в среднем алгоритм упаковки
подать на вход единичную матрицу инцидентности, он, если считать от длины входа, затратит время …

=== Answers ===
* Correct answer: экспоненциальное
* линейное
* квадратичное
* полином, но степени больше 2
* <m>np^2 \ln m</m>

== Вопрос: Complexity-P-NP-ZPP-PP-OK ==

Это правильная схема вложенности классов?
<graph>
digraph G{
 P -> ZPP;
 ZPP->RP;
 ZPP->coNP;
 ZPP->PP;
 RP->PP;
 coNP->PP;
}
</graph>

=== Ответы ===

* Правильный ответ: Да
* Нет

и получать:

  • Автоматическую систему тестирования — с рандомизация порядка вопросов и вариантов ответа, с счетчиком времени и автоматическим подсчетом очков в зависимости от сложности случайного прохождения.
  • Систему дистанционного обучения — работа в режиме «тьютора», показывающая и объясняющая учащемуся его ошибки.
  • Возможность быстро подготовить бумажные варианты тестовых заданий, для проведения экзамена там, где нет интернета.
  • Выборку подмножества вопросов из полной базы, что удобно, предоставляя студентам для тренировки тестовые наборы вопросов (например, три или пять случайных вопросов) — это побуждает их отвечать, ибо быстро и несложно.
  • Ведение журнала сдачи тестов — очень интересно наблюдать за активностью студентов, и ростом активности в ночь перед экзаменом.
  • Расчет статистики правильных ответов для всех вопросов, чтобы ориентируясь на них, либо исправлять неудачные вопросы с низким процентом правильных ответов, либо усложнять легкие.
  • Автоматическое исключение вопросов либо большим процентом неверных ответов, либо более легких — т.е. нет смысла следить за курсом, неудачные по статистике вопросы будут автоматически исключаться, и экзаменационные вопросы можно отбирать из тех вопросов, которые прошли уже обкатку в тестировочных раундах.
  • Геймификацию — прошедшим тесты студенты могут получить электронное подтверждение/сертификат — «графический диплом» или даже QR-код с подтвержающей ссылкой, который они смогут считать мобильным телефоном.

И наоборот, некоторые распространенные «фичи» дистанционных тестов мы не стали реализовывать специально. Например, мы принципиально против тестов вида «выбери M правильных вариантов из N» — т.е. экспоненциальный взрыв сложности вопроса, вместо нормальной линейной, при одном правильном варианте. Только тесты с одним правильным ответом можно нормально сбалансировать по сложности ответа, и если кто не в курсе — классические западные тесты (GRE, GMAT…) не только содержат единственный правильный ответ, но и фиксированное (обычно ровно пять) число вариантов.

Также, тесты можно проходить даже не зарегистрировавшись, и в целом, нет специализированной интеграции с классовым учетом студентов — и это даже хорошо, ибо снимает барьер для студентов, мотивируя их «играться», не стесняясь неправильных ответов.

Система уже почти десять лет использовалась и для академического и для внутрикорпоративного обучения, упоминалась и в докладах конференций[2], т.е. система в стабильна, и при этом продолжает развиваться. Живьем систему можно посмотреть на сайте курсов по алгоритмам Института Системного Программирования РАН.

Разумеется, автор не призывает использовать тесты, как единственный возможный источник оценки знаний, и тем более, автоматически конвертировать оценки за тесты в оценку на экзамене. Такой подход методологически вреден — ведь при этом, как известно, студенты будут «зубрить» ответы на тесты, игнорируя глубокое понимание темы. Нужны и задачи для совместного решения и лабораторные работы (что автором также реализовано на MediaWiki4IntraNet), и устное общение на экзамене…

Но. В любом случае,

  • даже «заученные тесты» приносят пользу — запоминаются определения, хотя бы на уровне «вспомню, где это было, чтобы потом посмотреть».
  • на экзамене, тесты мгновенно позволяют
    • увидеть «дыры» в знаниях («не успел прочитать эту тему»), которые потом можно проверить задачами или устным общением.
    • отсеять совершенно неготовых студентов, и сэкономить временной и ментальный ресурс преподавателя — «Видишь, на тест ты ответил хуже, чем случайный выбор. Ты не просто ничего не знаешь, более того — у тебя проблема с кармой, если ты отвечаешь хуже игрового кубика».
  • легкость ведения базы вопросов делает возможным полное покрытие тестами каждой темы любого обучающего материала, практически, как написание тестов для программного кода.

Примечания и отзывы

  1. См. например, «Распределённая система автоматизированного тестирования» или «Технические и организационные аспекты внедрения СДО Moodle в образовательной организации»
  2. «Все блюда для интранета из MediaWiki: ВикиБлоги, ВикиПрезентации, ВикиЭкзамены и ВикиЗакладки», http://lib.custis.ru/312-all-from-mediawiki-add-2010

Plays:134   Comments:0