DATA MNU
ДОКУМЕНТАЦИЯ ПРОЕКТА DATA.MNU
1. НАЗНАЧЕНИЕ СИСТЕМЫ
data.mnu — единая платформа сбора и хранения данных университета. Система автоматически получает, очищает и связывает данные о студентах и сотрудниках MNU из разных внешних систем, после чего предоставляет их через единый веб-интерфейс и REST API.
2. ИСТОЧНИКИ ДАННЫХ
На текущий момент используются три источника:
- Platonus — студенты, контингент, документы, результаты ЕНТ, транскрипты, ИУП, РУП, посещаемость и тьюторы;
- Canvas — курсы, задания, попытки сдачи, оценки и тесты;
- 1С — сведения о сотрудниках и кадровые события.
Для связи студенческих данных используется StudentID. Данные сотрудников связываются по ИИН или ФИО с присвоением единого person_id.
3. КАКИЕ ДАННЫЕ ОБРАБАТЫВАЮТСЯ
Данные студентов:
- анкета, ИИН, год обучения, программа и школа;
- статус и жизненный цикл: активный студент, академический отпуск, выпуск или отчисление;
- документы и результаты ЕНТ;
- GPA, транскрипт и сведения о пересдачах;
- индивидуальный и рабочий учебные планы;
- посещаемость и активность в Canvas.
Данные сотрудников:
- персональные и кадровые сведения из 1С;
- журнал кадровых событий;
- история занятости;
- связь сотрудника с ролью тьютора в Canvas.
Для каждого поля сохраняется источник происхождения данных. Изменения фиксируются в формате «было → стало», а исходные записи хранятся в JSONB.
4. КАК ПЕРЕДАЮТСЯ ДАННЫЕ
Данные автоматически поступают из Platonus, Canvas и 1С, обрабатываются и сохраняются в PostgreSQL.
Внешние сервисы получают сведения через REST API data.mnu. Для доступа в веб-интерфейсе создаются сервисные API-ключи. Данные выдаются только после авторизации по ключу, а обращения фиксируются в журнале доступа.
В настоящее время API используют системы Admission и Hub. Перечень подключённых сервисов будет расширяться.
5. РАЗДЕЛЫ ВЕБ-ИНТЕРФЕЙСА
- Студенты — поиск, досье, история изменений и происхождение полей;
- Сотрудники (HRM) — кадровые данные, единый профиль и история занятости;
- Тестирование — тесты и попытки прохождения из Canvas;
- Аналитика — витрины и показатели по контингенту;
- Сбор данных — включение источников, расписание, ручной запуск и журнал выполнения;
- Интеграции — управление сервисными API-ключами и журналом доступа;
- Пользователи — управление учётными записями, авторизацией и пользовательскими сессиями.
ТЕХНОЛОГИЧЕСКАЯ ОСНОВА
PostgreSQL, JSONB, REST API, веб-интерфейс, сервисные API-ключи, журналирование изменений и доступа. Пароли пользователей хранятся в виде хешей с использованием bcrypt.