Ограничение доступа к курсам на время прохождения теста

Ограничение доступа к курсам на время прохождения теста

от Дмитро Білик -
Количество ответов: 14

Имеется несколько категорий курсов. В отдельную категорию вынесены курсы, каждый из которых представляет собой тест. Есть ли способ ограничить доступ ко всем курсам во всех категориях на время прохождения теста? То есть как только испытуемый начинает тест - он не может зайти ни в один курс, кроме курса с тестом, и как только тест завершен, доступ сразу открывается.

В ответ на Дмитро Білик

Re: Ограничение доступа к курсам на время прохождения теста

от Alexandre Scherbyna -

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

В ответ на Alexandre Scherbyna

Re: Ограничение доступа к курсам на время прохождения теста

от Дмитро Білик -
Довольно радикальный метод. Но хотелось бы обойтись без установки дополнительного ПО, так как с этим могут быть проблемы из-за отсутствия у меня физического доступа к компьютерам студентов.

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

Но если другого решения нет, подскажите, где именно в настройках теста можно указать ограничение на запуск только в SEB? Или для єтого нужно установить какой-то плагин? Используется Moodle 3.1

В ответ на Дмитро Білик

Re: Ограничение доступа к курсам на время прохождения теста

от Alexandre Scherbyna -

Нет доступа? А где установлены компьютеры студентов? Если дома, то можно не беспокоится. Там, даже если вы заставите студента установить SEB, у него найдется сколько угодно других шпаргалок, компьютеров и прочих средств и способов получить подсказку. SEB - это решение для компьютеров, установленных в классе, где тестирование проходит под вашим контролем.

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

Если на сайте включить enablesafebrowserintegration, то в параметре теста Безопасность браузера можно потребовать, чтобы этот тест выполнялся только в SEB.

В ответ на Alexandre Scherbyna

Re: Ограничение доступа к курсам на время прохождения теста

от Дмитро Білик -
Не хотелось вдаваться в подробности, но видимо лучше обрисовать ситуацию подробнее. У нас не ВУЗ, а предприятие. На базе Moodle создана база знаний с документацией корпоративного ПО, правилами работы с клиентами и прочей технической информацией. Руководство хочет провести аттестацию, но сотрудники об этом не знают, так как раньше такого не было. Поэтому шпаргалки никто готовить не будет. Единственное место, с которого можно списать - сам Moodle.

Проблема в том, что офис, в котором будет проходить тестирование, находится в другом городе. Поэтому у меня нет физического доступа к оборудованию, чтобы установить SEB самому. А решать этот вопрос через их сисадмина не хотелось бы.

Я крайне удивлён, что на Moodle нет описанного мною ранее механизма. Это ведь довольно логично. Может всё-таки есть какой-то плагин, который полностью решает этот вопрос со стороны сервера?

В ответ на Дмитро Білик

Re: Ограничение доступа к курсам на время прохождения теста

от Alex Djachenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода Изображение пользователя ООО "Открытые Технологии" Изображение пользователя Тестер Moodle Изображение пользователя Эксперт по Moodle

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

Инструмент поставляется вместе с профессиональной версией для территории РФ и стран экономического содружества - Русским Moodle.

В ответ на Alexandre Scherbyna

Re: Ограничение доступа к курсам на время прохождения теста

от Алексей Харламенков -

В таком случае...

Хорошо, что Вы описали конкретную ситуацию. В Вашем случае - это не массовый, не циклический (регулярный) процесс.

Раз Вам известен день тестирования, то в горячем режиме, возможно ручное решение задачи - в назначенный день через админку Муудла просто заблокируйте доступ ко всем элементам, кроме теста.

На текущий момент - задача решена.

Для дальнейшего - можно продолжить поиск автоматизированного решения - меня оное тоже интересует.

В ответ на Алексей Харламенков

Re: Ограничение доступа к курсам на время прохождения теста

от Дмитро Білик -
К сожалению, этот вариант не подходит, так как нельзя ограничивать доступ сразу всем сотрудникам. Тестирование будет проходить определённая группа людей (конкретный отдел), в то время как большая часть других сотрудников будет работать, и материалы с Moodle могут понадобиться в любой момент.

В крайнем случае можно каждого сотрудника персонально временно отписать от курсов - благо сейчас тестирование будут проходить всего около десяти человек (один отдел). Но если руководство решит заняться и другими отделами - то этот вариант уже не очень подойдёт. Поэтому я и занялся поиском автоматизированного решения.

В ответ на Дмитро Білик

Re: Ограничение доступа к курсам на время прохождения теста

от Alex Djachenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода Изображение пользователя ООО "Открытые Технологии" Изображение пользователя Тестер Moodle Изображение пользователя Эксперт по Moodle

Если речь идет о небольшой группе, то, действительно, проще их отписать от курса и записать обратно с временной ролью "экзаменуемый". Дальше, при ручном варианте, эта роль не должна включать права на доступ к материалам курса, а на конкретном тесте должно быть установлено переопределение прав, чтобы обеспечить доступ (примерно, как Вам до этого советовали), при автоматизированном - модуль "Управляемый доступ" можно настроить так, что он будет блокировать только пользователей с ролью "Экзаменуемый".

Либо, аналогичную механику можно настроить с помощью другой нашей разработки, модуля "Логика курса". Например, это могло бы работать так:

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

Re: Ограничение доступа к курсам на время прохождения теста

от Alexandre Scherbyna -

Дмитрий, решение вашей задачи зависит от того, как вы записывали сотрудников на курсы. Если они у вас записаны одной "общей толпой", то сделать что-то будет крайне трудно. Но если у вас в "Методах записи на курс" всё четко структурировано и каждый отдел проходит отдельной строкой, то достаточно одного клика мышки в этой строке, чтобы превратить открытый "глаз" в закрытый или наоборот, т.е. разрешить или запретить всем сотрудникам этого отдела доступ к курсу. Такое решение, наверное, будет менее трудоёмким, чем то, что предлагает Алексей Дьяченко, - для каждого отдела наперед прописать даты когда его сотрудникам разрешен доступ, а когда нет.

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

В ответ на Alexandre Scherbyna

Re: Ограничение доступа к курсам на время прохождения теста

от Alex Djachenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода Изображение пользователя ООО "Открытые Технологии" Изображение пользователя Тестер Moodle Изображение пользователя Эксперт по Moodle

Я не предлагал даты прописывать для отделов - предлагал по-факту вручную роли им менять: нам же помимо "закрытия глазика" надо еще дать доступ к определенному элементу. Поэтому если тест и материалы в одном курсе, надо именно менять роль.

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

В ответ на Alex Djachenko

Re: Ограничение доступа к курсам на время прохождения теста

от Alexandre Scherbyna -

Так вот я как раз и предлагаю: теорию собрать в одном курсе, а тестирование - в другом. Во время тестирования сотрудников отдела Х в первом курсе их "глаз" закрываем, а во втором - открываем. Вот и всё решение поставленной задачи.

В ответ на Alexandre Scherbyna

Re: Ограничение доступа к курсам на время прохождения теста

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

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

Развиваю ту же мысль. Если нужно индивидуально. Перед тестом ставите элемент типа страница. Ставите правило отслеживания завершения - просмотр страницы. На тест ставите условный доступ - по завершению страницы перед тестом. И условие завершения - сдача с любым баллом. На секцию с теорией ставите условный доступ - или не завершена страница перед тестом, или завершен тест. 

Таким образом, пока не просмотрит страницу, будет доступна теория, но недоступен тест. Когда просмотрите страницу, закроется теория, но откроется тест. Когда будет пройден тест, теория снова откроется.