Онлайн-обучение имеет сложившиеся практики взаимодействия с учащимися и они отличаются от таковых в очном формате. Синхронные формы работы на семинарах дополняются онлайн-инструментами, которые могут иметь как ручную, так и автоматическую проверку ответов. Программы автоматической проверки называются грейдерами (от слова grade - оценка).
Проверка может не только подтвердить правильность решения, но и дать пояснения, продиагностировать вероятную причину неправильного решения. В таком случае это уже не просто грейдер, а тренажёр.
При разработке онлайн-курсов, особенно для потоковых курсов и курсов "по запросу" особый интерес представляют именно такие грейдеры-тренажёры, перекладывающие рутинную проверку с человека на программу, при этом, не ограничивающие автора рамками выбора ответов из списка. Ниже рассмотрены доступные в МИЭМ инструменты. Они включают стандартные для используемой LMS Classroom и расширенные, создаваемые собственными силами в МИЭМ.
Мы призываем преподавателей рассматривать онлайн-сопровождение курсов как неотъемлимую часть обучения и планировать курсы с учетом имеющихся возможностей. Разработка грейдеров -- это трудоёмкая задача, их встраивание в курс требует понимания возможностей и ограничений используемых технологий. Поэтому мы предлагаем всем познакомиться с этой темой поближе, чтобы планировать разработку этих инструментов для ваших курсов.
Закрытые вопросы -- это вопросы с предопределенным ответом (выбор из списка, шкала...)
Открытые вопросы подразумевают ввод своего ответа. В простейшем случае это ответ, проверяемый на точное соответствие. В чуть более сложном -- ответ, проверяемый по маске или регулярному выражению.
К открытым вопросам относятся и свободные ответы, но их, как правило, проверить автоматически крайне сложно. В формате открытых вопросов собираются домашние/контрольные работы, порой -- в виде фотографий написанных на бумаге решений.
Внутренние грейдеры -- это программы обработки ответов студентов, полученных в виде "строки" или "свободного ответа" из формы Google. Внутренними их называют потому, что они выполняются непосредственно в среде Google -- это программы Apps Script (аналог JavaScript), выполяемые из таблиц или форм Google.
Проверка, как правило, заключается в поиске ключевых слов, стоп-слов или пар ключ-значение. Например, таким образом могут проверяться команды или фрагменты программного кода без его выполнения: грейдер ищет в ответе слова или выражения, заданные автором теста.
Для создания таких тестов могут использоваться конструкторы. Первый такой конструктор готовится к запуску летом 2020 года и позволит дополнить обычные инструменты Google Classroom / Forms более глубокой автоматической проверкой свободных ответов.
Внешние грейдеры -- это программы, выполняемые на внешних относительно среды Google серверах. Основное отличие внешнего грейдера от проверки ответа внутри LMS -- решение студента выполняется и проверяется не только полученный код, но и результат его выполнения. При этом, проверка может быть комплексной и ресурсоёмкой, а ответ, который получит студент, содержать подробный разбор проверки. Более того, полученная от студента программа может выполняться на лабораторном оборудовании и подтверждение корректности выполнения программы может давать задействованное устройство.
Если такой грейдер совместим со стандартом EdX External Grader, это позволяет включать его не только в собственные курсы, но и в курсы на внешних платформах (Coursera, EdX, Stepik, ...). Но это не единственный вариант для проверки заданий внешним сервером.
При программной разработке используется методика CI/CD (continuous integration/delivery), позволяющая не только автоматически тестировать создаваемый код на корректность получаемого результата, но и снизить риски нестыковки программного кода от разных разработчиков при сборке проекта. Для проверки программного кода используются модульные тесты (unit tests). Тесты могут быть любой сложности и это позволяет использовать технологию для проверки программного кода в учебных целях и заодно прививать культуру ведения программной разработки.
В МИЭМ мы используем Gitlab и ведем разработку грейдеров в виде юнит-тестов. Полученный программный код выполняется и результат выполнения с комментариями отправляется студенту в чат, а оценка -- в LMS Classroom.
Внешний модуль -- это самостоятельное веб-приложение со своим веб-интерфейсом, поддерживающее бесшовный переход из LMS в свой интерфейс без необходимости авторизации и передачу результатов выполнения заданий. Для этого используется протокол LTI.
Такие приложения могут подключаться к курсам на популярных образовательных платформах (Coursera, EdX, Stepik) и LMS (например, MOODLE).
Внешние модули используются там, где требуется специфический пользовательский интерфейс -- для рисования, написания формул и т.д.
В МИЭМ был разработан "решебник" для математических заданий -- solver.miem.hse.ru. Поддерживается генерация вариантов, проверка решений в численной и аналитической форме, вывод комментариев, заданных автором задания. Ввод заданий и решений -- в графическом виде.
Внешние модули могут быть разнообразными по виду и области применения, но трудоёмки в создании. В МИЭМе в рамках проектной работы ведется разработка подобных инструментов. Если вы видите, что в вашем курсе могут пригодиться подобные инструменты, напишите в техподдержку МИЭМ -- с вами свяжутся и предложат решение.