Программный аналитический комплекс для образовательной платформы Открытое образование

Содержание

Слайд 2

Актуальность

Существует множество образовательных платформ, но наиболее популярные из них в РФ:
- «Открытое

Актуальность Существует множество образовательных платформ, но наиболее популярные из них в РФ:
образование» - современная образовательная платформа, предлагающая онлайн-курсы по базовым дисциплинам, изучаемым в российских университетах
- Moodle
- DonorsChoose
Все образовательные платформы имеют возможность сохранять активность (действия) пользователей на сайте во время прохождения обучения на курсе или выполнения тестовых и экзаменационных заданий (ведение аудита действий пользователя)
Но далеко не все образовательные платформы предоставляют возможность анализировать активность пользователей и преподавателей с целью совершенствования контента курса, ресурса и платформы.
Платформа «Открытое образование» одна из наиболее активно использующихся систем образования всей России, в том числе СПбПУ, и к сожалению, имеет крайне ограниченный набор аналиьтических возможностей.

Поэтому актуальной является задача разработки программного аналитического комплекса для платформы «Открытое Образование»

Слайд 3

Аудит активности пользователя в платформе «Открытое образвание»

Платформа позволяет
Логгировать каждое действие пользователя

Аудит активности пользователя в платформе «Открытое образвание» Платформа позволяет Логгировать каждое действие
(студента, преподавателя, администратора).
Формат логирования JSON.
Возможность вручную скачать аудит в виде лог-файла
Необходим специальный доступ. Не каждому пользователю доступно такое действие.
Сопутствующие ограничения:
Большой объем файлов лога (например, 18Гб, 100 000 000 записей)
невозможность человеку вручную проанализировать лог файлы и собрать статистику
открыть файл для просмотра стандартными программными средствами
Наличие «пустых», неинформаитивных строк
Наличие более 200 разных типов событий пользователей
Необходимо предоставить возможность анализа логов за счет создания программного средства объединяющего в себе выгрузку, хранение и обработку

Слайд 4

Цель работы и ее актуальность

Цель: предоставить возможность проведения анализа логов портала «Открытое

Цель работы и ее актуальность Цель: предоставить возможность проведения анализа логов портала
образование» за счет создания программного аналитического средства, реализующего в себе выгрузку, хранение, обработку и отображение результатов анализа.
Для достижения поставленной цели необходимо решить следующие задачи:
Исследовать структуру и формат логов, предоставляемых образовательной платформой «Открытое образование».
Развернуть тестовый стенд с API платформы для сбора тестовых данных, реализации программного взаимодействия и проведения экспериментов.
Предложить программную структуру программного средства, позволяющего анализировать логи.
Реализовать программное средство (удобное для конечного пользователя).
Продемонстрировать работу приложения.

Слайд 5

Структура логов

Каждый пользователь имеет уникальный идентификатор
Каждое событие имеет свой тип
Типы строго задокументированы

Структура логов Каждый пользователь имеет уникальный идентификатор Каждое событие имеет свой тип
платформой, например
edx.course.enrollment.activated -событие, при котором студент записался на курс;
edx.course.enrollment.deactivated - событие,при котором студент вышел из курса
Каждая строчка лога представляет собой отдельное событие
Вложенные структуры различны в зависимости от события
Обрабатывая и комбинируа анализ различных событий можно получать «интересные» результаты

Слайд 6

Примеры решаемых задач

1. Анализ активности пользователя и преподавателя курса
2. Карта активности на

Примеры решаемых задач 1. Анализ активности пользователя и преподавателя курса 2. Карта
курсе
Подразумевается как пользователь перемещался по разделам курса.
По каждому пользователю должен быть построен граф перемещения по разделам. В узлах графа раздел, переходы между узлами - перемещения. Переходы должны быть подписаны порядковым номером перехода.
Итоговый вид - табличка в csv, которая потом может быть подана на блок визуализации и построения графа.
3. Определение махинаций студентов
Например, время нахождения на тесте 1 мин, или время просмотра всех видеолекций 1 мин, или наоборот человек уснул на просмотре видео.
4. Прогнозирование поведения студента на курсе.
Сможет ли этот пользователь завершит курс или он на него зарегистрировался просто так.
5. Определение наиболее интересного материала курса и материала курса, который стоит переработать, доработать
Наиболее плохие вопросы в тестах, по которым у пользователей возникает больше всего вопросов.
6. Сравнение результатов запуска курса из года в год

Слайд 7

Активность действий пользователя на курсе

Представление активности пользователя на сайте в виде сводной

Активность действий пользователя на курсе Представление активности пользователя на сайте в виде
многомерной таблицы позволяет оценивать зависимости показателей и строить выборки по срезам
Таблица активности преподавателя отличается от таблицы активности студента

Слайд 8

Конечный вид программной системы для пользователя

Портал «Открытого образования»
OpenEdu

Запуск OpenAnalysis.exe

Ввод данных для

Конечный вид программной системы для пользователя Портал «Открытого образования» OpenEdu Запуск OpenAnalysis.exe
программы:
Ввод данных адреса OpenEdu (файл настроек)
имя пользователя и пароль для доступа к логам
Идентификатор курса
Идентификатор пользователя (опционально)
Выбор задачи анализа

Внутренняя работа системы
незримая для конечного пользователя

Результат анализа
(понятный пользователю)

Слайд 9

Развертывание системы администратором

Система может быть установлена
Локально – для демострации работоспособности
На удаленном

Развертывание системы администратором Система может быть установлена Локально – для демострации работоспособности
сервере с мощными аппаратными возможностями для достижения наилучшей производительности
Для установки системы требуется:
JDK 11
Настроенная БД PostgreSQL (лучше конечно сделать embedded BD, чтобы она незримо устанавливалась)
Что еще?

Слайд 10

Ключи к успешности проекта

Продумать сводную табличку анализа активности пользователей: студентов и преподавателей.

Ключи к успешности проекта Продумать сводную табличку анализа активности пользователей: студентов и

Реализация на начальном этапе должна быть максимально простой и расширяемой (без Spark и Flink)
Возможность простой установки и использования
Наличие крайне простой и интуитивной документации
Наглядное и интуитивное отображение результатов анализа
Наличие тестового стенда

Слайд 11

Пользовтельский интерфейс

Модуль анализа

Модульная схема программной аналитической системы

Портал «Открытого образования»
OpenEdu

Модуль аутентификации пользователя на

Пользовтельский интерфейс Модуль анализа Модульная схема программной аналитической системы Портал «Открытого образования»
портале OpenEdu

Модуль выгрузки логов курса
В ZIP-архиве

Предобработка логов (фильтрация и парсинг)

Запись логов в аналитическую базу данных

PostgreSQL

Задача 1

Задача 2

….

Задача N

Интерфейс запуска задачи

Интерфейс предоставления результатов

Результат в виде файлов
(csv, файлы, картинки, графики)

Слайд 12

План работ

Развернуть тестовый стенд edx, доступный по внешнему IP
Реализовать модуль утентификации и

План работ Развернуть тестовый стенд edx, доступный по внешнему IP Реализовать модуль
выгрузки лога в ZIP-архиве
Реализовать несколько простых задач анализа
Реализовать модуль сохранения результатов анализа в файл csv
Обернуть «каркас» программного решения в конечный дистрибутив
Проверить работоспособность и интеграцию модулей
Провести демонстрацию и нагрузочное тестирование
Расширить и усложнить аналитические задачи
Расширить форматы отображения результатов
Применить современные программные средства для обработки: Spark и Flink

Слайд 13

Стркуктура дистрибутива программного аналитического средства

Дистрибутив поставляется в види ZIP-архива – openEduAnalytics.zip
Скачать последний

Стркуктура дистрибутива программного аналитического средства Дистрибутив поставляется в види ZIP-архива – openEduAnalytics.zip
дистрибутив можно с репозитория
https://github.com/mandarinSh/OpenPolyEdu
Дистрибутив self-contained и содержит все необходимое для установки

OpenEduAnalytics.zip

OpenEduAnalytics
- bin
- start.bat - скрипт запуска
- config
- application.yml - основной файл настроек или любой другой формат
- libs
- - зависимости (для Java, для Pyhon, и т.д.)
- soft
- PostgreSQL_x.x.x.zip - используемые ПО, чтобы пользователь никуда не лезть качать
- JDK_11.zip
- Python x.x.x
- workdir - рабочая директория для временных файлов и БД
- results - директория с результатами запусков

Слайд 14

Скрипт запуска

start.bat выполняет следующие действия
очищает “workdir”
распаковывает jdk в workdir/install_soft
распаковывает PostgreSQL в workdir/install_soft
распаковывает

Скрипт запуска start.bat выполняет следующие действия очищает “workdir” распаковывает jdk в workdir/install_soft
Python в workdir/install_soft
прописывает JAVA_HOME/Phyton/etc. для локального старта
осуществляет настройку PostgeSQL (копирует приготовленный заранее файл)
запускает сервисы PostgreSQL
запускает модуль аутентификации и выгрузки логов и ждет завершения его работы
запускает модуль фильтрации и загрузки логов в PostgreSQL и ждет завершения работы компонента
запускает модуль аналитики и предлагает пользователю выбрать требуемую задачу
генерирует файл с результатами
просит пользователя выбрать другую задачу и также генерирует результат
по завершении работы аналитического модуля осуществляется остановка сервисов PostgeSQL.

Везде можно делать оптимизацию и смотреть на наличие уже выполенных шагов, пропуская, например, установку или выгрузку. Все это очень легко настраивается передаваемыми опциями bat

Слайд 15

Демонстрация

Демонстрация