|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Важливо: один користувач може мати декілька ролей одночасно. Наприклад, користувач може бути автором курсу, викладачем і куратором групи.
|
4. Основні сутності системи
У модулі потрібно передбачити такі сутності:
- курси;
- дерево курсів;
- навчальні програми;
- розділи курсу;
- навчальні елементи курсу;
- контрольні точки;
- автоматичні тести;
- питання тестів;
- відповіді;
- практичні завдання;
- здачі практичних завдань;
- ручні перевірки;
- групи навчання;
- дерево груп навчання;
- учні;
- співробітники;
- викладачі;
- куратори;
- посадові інструкції;
- посадові навчальні плани;
- компетенції;
- навчальні матеріали;
- дедлайни;
- повідомлення;
- рейтинги;
- сертифікати;
- дипломи;
- посвідчення;
- внутрішні допуски;
- шаблони документів;
- журнали подій.
5. Деревовидні структури
У модулі онлайн-навчання потрібно використовувати деревовидні структури там, де інформація має природну ієрархію або потребує смислового групування.
Дерева потрібно використовувати для:
- дерева курсів;
- дерева груп навчання;
- категорій курсів;
- банку тестових питань;
- навчальних матеріалів;
- посадових інструкцій;
- навчальних траєкторій;
- компетенцій;
- організаційної структури;
- прав доступу на рівні гілок.
| Важливо: сам курс не потрібно робити деревом. Курс повинен бути впорядкованим списком розділів і навчальних елементів. Дерева використовуються для групування курсів, груп, компетенцій, матеріалів та інших довідників.
|
6. Дерево курсів
Система повинна дозволяти об’єднувати курси у деревовидну структуру.
Дерево курсів — це окрема ієрархія, яка групує курси між собою за напрямами, рівнями, модулями, професіями, навчальними програмами або типами користувачів.
6.1. Приклад дерева курсів
** Базове навчання;
*** Вступ до K2 ERP;
*** Інтерфейс користувача;
*** Робота з довідниками;
*** Робота з документами;
** Бухгалтерський облік;
*** Первинні документи;
*** Банківські операції;
*** Податковий облік;
*** Звітність;
** CRM;
*** Ліди;
*** Контрагенти;
*** Угоди;
*** Комерційні пропозиції;
** WMS;
*** Складський облік;
*** Приймання товару;
*** Переміщення;
*** Інвентаризація;
** Розробка K2 ERP;
*** Python;
*** TypeScript;
*** API;
*** ER-моделі;
*** BP-моделі;
*** Конструктор звітів;
** Адміністрування;
*** Користувачі та ролі;
*** Права доступу;
*** Налаштування системи;
*** Оновлення.
6.2. Типи елементів дерева курсів
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6.3. Вимоги до дерева курсів
Дерево курсів повинно підтримувати:
- необмежену або налаштовану вкладеність;
- додавання груп курсів;
- додавання конкретних курсів у дерево;
- перенесення курсів між гілками;
- копіювання гілок;
- архівацію гілок;
- приховування гілок;
- зміну порядку курсів;
- drag-and-drop переміщення;
- пошук по дереву;
- фільтрацію за статусом, категорією, рівнем, мовою, автором;
- відображення кількості курсів у гілці;
- відображення кількості активних учнів у гілці;
- відображення середнього прогресу по гілці;
- права доступу на рівні гілки.
6.4. Прив’язка курсу до дерева
Один курс повинен мати можливість:
- входити в одну основну гілку дерева;
- додатково відображатися в інших гілках як пов’язаний курс;
- бути частиною декількох навчальних програм;
- бути обов’язковим для однієї програми і рекомендованим для іншої.
Приклад:
Курс «Робота з контрагентами в K2 ERP» може входити одночасно в:
- базове навчання користувача;
- курс для бухгалтерів;
- курс для менеджерів з продажу;
- програму адаптації нового співробітника;
- навчальну траєкторію CRM.
7. Довідник курсів
Картка курсу повинна містити:
- назву курсу;
- код курсу;
- короткий опис;
- повний опис;
- категорію;
- гілку дерева курсів;
- рівень складності;
- мову курсу;
- тривалість;
- статус;
- автора;
- викладача;
- куратора;
- дату створення;
- дату публікації;
- дату архівації;
- ознаку платного або безкоштовного курсу;
- ознаку обов’язкового курсу;
- ознаку курсу для конкретної посади;
- ознаку видачі сертифікату;
- ознаку видачі диплому;
- шаблон сертифікату;
- шаблон диплому;
- мінімальний відсоток проходження;
- мінімальний бал;
- доступні групи;
- доступні посади;
- прив’язані компетенції;
- загальний дедлайн;
- налаштування рейтингу.
Статуси курсу:
- чернетка;
- на перевірці;
- опублікований;
- прихований;
- архівний;
- заблокований.
8. Структура конкретного курсу
Курс не потрібно реалізовувати як дерево.
Всередині конкретного курсу повинна бути лінійна послідовність розділів і навчальних елементів, які проходяться учнем крок за кроком.
Курс складається з:
- розділів;
- навчальних елементів всередині розділів;
- контрольних точок після елементів;
- правил допуску до наступного етапу.
| Важливо: курс = впорядкований список розділів. Розділ = впорядкований список навчальних елементів. Навчальний елемент = матеріал або контрольна точка. Порядок проходження визначається sort_order. Допуск до наступного елемента визначається правилами контрольної точки.
|
8.1. Розділи курсу
Курс може складатися з розділів.
Розділ повинен містити:
- назву;
- опис;
- порядковий номер;
- поле sort_order;
- статус;
- умови відкриття;
- список навчальних елементів;
- відповідального викладача;
- ознаку обов’язкового проходження;
- дедлайн;
- мінімальний бал, якщо розділ має контроль.
8.2. Навчальні елементи курсу
Елементами курсу можуть бути:
- текстовий урок;
- відеоурок;
- файл або інструкція;
- практичний урок;
- тест;
- практичне завдання;
- контрольна точка;
- фінальний іспит;
- сертифікаційний крок;
- крок видачі диплому.
Кожен елемент курсу повинен мати:
- id;
- course_id;
- section_id;
- sort_order;
- item_type;
- name;
- description;
- content;
- file_id;
- video_url;
- duration_minutes;
- is_required;
- is_visible;
- status;
- unlock_rule_id;
- completion_rule_id;
- deadline_id;
- created_at;
- updated_at.
Типи елементів курсу:
- lesson_text — текстовий урок;
- lesson_video — відеоурок;
- lesson_file — файл або інструкція;
- lesson_practice — практичний урок;
- quiz — автоматичний тест;
- manual_task — завдання з ручною перевіркою;
- mixed_control — змішана контрольна точка;
- final_exam — фінальний іспит;
- certificate_step — крок видачі сертифікату;
- diploma_step — крок видачі диплому.
9. Сортування розділів і елементів курсу
У курсі потрібно передбачити можливість керування порядком проходження розділів і навчальних елементів.
Порядок проходження визначається полем sort_order.
9.1. Сортування розділів курсу
Кожен розділ курсу повинен мати поле sort_order.
Приклад:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рекомендовано використовувати значення sort_order з кроком 10, щоб можна було вставляти нові розділи між існуючими без повного перерахунку всього списку.
Наприклад:
- 10 — Вступ;
- 20 — Інтерфейс;
- 30 — Довідники.
Якщо потрібно вставити новий розділ між «Інтерфейс» і «Довідники», йому можна дати sort_order = 25.
9.2. Сортування уроків, тестів і завдань всередині розділу
Всередині кожного розділу потрібно передбачити сортування навчальних елементів.
Приклад:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9.3. Вимоги до сортування
Сортування повинно підтримувати:
- ручну зміну порядку елементів;
- drag-and-drop переміщення;
- переміщення елемента вгору / вниз;
- вставку нового елемента між існуючими;
- автоматичне оновлення sort_order після переміщення;
- масову зміну порядку;
- копіювання елемента зі збереженням або зміною порядку;
- переміщення елемента в інше місце курсу;
- заборону некоректного порядку, якщо він порушує умови проходження.
| Важливо: порядок елементів у курсі визначає логіку проходження. Якщо автор курсу переміщує розділ, урок, тест або практичне завдання, система повинна правильно перерахувати послідовність проходження та умови допуску до наступного етапу.
|
9.4. Вплив сортування на допуск
Система повинна визначати наступний елемент курсу за порядком сортування.
Логіка:
- Учень проходить поточний елемент.
- Система перевіряє контрольну точку поточного елемента.
- Якщо умови виконані — система шукає наступний доступний елемент з більшим sort_order.
- Якщо наступний елемент належить до наступного розділу — система перевіряє умови відкриття розділу.
- Якщо умов немає або вони виконані — наступний елемент відкривається.
- Якщо умови не виконані — наступний елемент залишається заблокованим.
9.5. Зміна вже опублікованого курсу
Якщо курс уже опублікований і по ньому є активні учні, зміна сортування повинна виконуватися обережно.
Потрібно передбачити варіанти:
- дозволити зміну порядку тільки для нових учнів;
- застосувати новий порядок для всіх учнів;
- створити нову версію курсу;
- залишити старим учням стару версію проходження;
- показати попередження автору курсу перед зміною порядку.
| Критична вимога: не можна безконтрольно змінювати порядок елементів у курсі, якщо його вже проходять учні. Це може зламати прогрес, допуски, результати тестів і логіку сертифікації.
|
10. Контрольні точки та правила допуску
Після кожного елемента курсу система повинна мати можливість налаштувати контрольну точку.
Контрольна точка визначає, чи може учень перейти до наступного елемента курсу.
Контрольна точка може бути:
- автоматичною;
- ручною;
- змішаною;
- інформаційною;
- без перевірки.
| Головна вимога до гнучкості: програміст повинен реалізувати не жорстку логіку «урок → тест → наступний урок», а універсальний механізм контрольних точок. Для кожного елемента курсу окремо налаштовується, що саме треба виконати для переходу далі.
|
10.1. Типи контрольних точок
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10.2. Автоматичний тест
Автоматичний тест — це контрольна точка, де учень відповідає на перелік питань, а система автоматично визначає, чи допускати його до наступного етапу.
Автоматичний тест повинен підтримувати:
- одне правильне значення;
- декілька правильних значень;
- текстову відповідь;
- числову відповідь;
- відповідність;
- сортування;
- випадковий порядок питань;
- випадковий порядок відповідей;
- обмеження часу;
- кількість спроб;
- мінімальний відсоток правильних відповідей;
- мінімальну кількість балів;
- показ або приховування правильних відповідей;
- пояснення після відповіді;
- повторне проходження після невдалої спроби.
Умови допуску для автоматичного тесту:
- набрати не менше X%;
- набрати не менше X балів;
- відповісти правильно на обов’язкові питання;
- використати не більше дозволеної кількості спроб;
- пройти тест у межах заданого часу.
10.3. Завдання з ручною перевіркою
Завдання з ручною перевіркою — це контрольна точка, де учень здає результат роботи, а куратор або викладач приймає рішення: допустити до наступного етапу чи повернути на доопрацювання.
Учень може здати:
- текстову відповідь;
- файл;
- декілька файлів;
- посилання;
- скріншот;
- архів;
- код;
- опис виконаної роботи;
- коментар.
Куратор або викладач може:
- прийняти завдання;
- відхилити завдання;
- повернути на доопрацювання;
- поставити оцінку;
- залишити коментар;
- прикріпити файл із зауваженнями;
- вручну допустити учня до наступного етапу;
- заблокувати подальше проходження до виправлення помилок.
Статуси завдання з ручною перевіркою:
- не розпочато;
- у роботі;
- відправлено на перевірку;
- на перевірці;
- прийнято;
- повернуто на доопрацювання;
- відхилено;
- допущено вручну;
- не допущено.
| Критична вимога: якщо контрольна точка потребує ручного допуску, система не повинна відкривати наступний елемент курсу до рішення куратора або викладача.
|
10.4. Змішана контрольна точка
Змішана контрольна точка використовується тоді, коли для допуску потрібно виконати декілька умов.
Наприклад:
- переглянути урок;
- здати автоматичний тест не нижче 70%;
- прикріпити практичне завдання;
- отримати ручне підтвердження від куратора.
Для змішаної контрольної точки потрібно передбачити логіку:
- усі умови обов’язкові;
- достатньо будь-якої однієї умови;
- достатньо N умов із M;
- автоматичний тест обов’язковий, ручний допуск опціональний;
- ручний допуск може перекрити автоматичний результат;
- ручна заборона може заблокувати автоматичний допуск.
10.5. Гнучкі правила допуску
Для кожного елемента курсу потрібно передбачити налаштування правила допуску до наступного елемента.
Правило допуску повинно містити:
- тип правила;
- перелік умов;
- логіку об’єднання умов;
- мінімальний бал;
- мінімальний відсоток;
- кількість спроб;
- дедлайн;
- відповідального куратора;
- відповідального викладача;
- можливість ручного override;
- статус рішення;
- коментар до рішення.
Типи логіки об’єднання умов:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10.6. Статуси проходження елемента курсу
Для кожного учня по кожному елементу курсу потрібно зберігати статус.
Статуси:
- недоступний;
- доступний;
- відкритий;
- у процесі;
- очікує тестування;
- очікує здачі завдання;
- відправлено на перевірку;
- очікує рішення куратора;
- повернуто на доопрацювання;
- не здано;
- пройдено;
- допущено до наступного етапу;
- заблоковано;
- пропущено вручну;
- завершено.
11. Банк тестових питань
Для великих курсів потрібно передбачити банк питань з деревовидною структурою.
Приклад:
** K2 ERP;
*** Інтерфейс;
*** Довідники;
*** Документи;
*** Звіти;
*** Права доступу;
** Бухгалтерський облік;
*** Первинні документи;
*** Податки;
*** Банківські операції;
** Програмування;
*** Python;
*** TypeScript;
*** API;
*** ER-моделі.
Банк питань повинен дозволяти:
- створювати питання один раз і використовувати їх у різних тестах;
- групувати питання за темами;
- обирати випадкові питання з певної гілки;
- формувати тести автоматично;
- вказувати рівень складності;
- вказувати компетенцію, яку перевіряє питання;
- вести історію змін питання.
12. Дерево груп навчання
У системі потрібно передбачити можливість об’єднання навчальних груп у деревовидну структуру.
Це потрібно для організації потоків, напрямів, підрозділів, клієнтських груп, партнерських груп, внутрішнього навчання та навчання за посадовими програмами.
12.1. Приклад дерева груп навчання
** Потік 2026-07;
*** Бухгалтери;
*** Програмісти Python;
*** Програмісти TypeScript;
*** Бізнес-аналітики;
*** Адміністратори;
** Потік 2026-08;
*** Бухгалтери;
*** HR;
*** Менеджери продажів;
** Внутрішнє навчання K2;
*** Нові співробітники;
*** Відділ підтримки;
*** Відділ розробки;
*** Відділ продажів;
** Навчання клієнтів;
*** Клієнт А;
*** Клієнт Б;
*** Клієнт В;
** Навчання партнерів;
*** Інтегратори;
*** Франчайзі;
*** Консультанти;
*** Викладачі.
| Важливо: дерево груп навчання не повинно обмежувати учня тільки однією групою. Один учень може входити в декілька груп одночасно.
|
12.2. Типи елементів дерева груп навчання
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12.3. Вимоги до дерева груп навчання
Дерево груп навчання повинно підтримувати:
- створення груп і підгруп;
- переміщення груп між гілками;
- копіювання структури груп;
- архівацію завершених потоків;
- приховування архівних груп;
- масове додавання учнів у групу;
- масове видалення учнів із групи;
- призначення курсів на всю гілку дерева;
- призначення викладача на групу;
- призначення куратора на групу;
- перегляд прогресу по групі;
- перегляд прогресу по всій гілці;
- фільтрацію за потоком, напрямом, датою старту, статусом;
- права доступу на рівні групи або гілки.
13. Призначення курсів і навчання
Система повинна дозволяти призначати курс:
- конкретному учню;
- конкретній групі;
- підгрупі;
- усьому потоку;
- усій гілці дерева груп;
- усім групам певного напряму;
- конкретному співробітнику;
- конкретній посаді;
- підрозділу;
- підприємству;
- навчальній програмі;
- посадовому навчальному плану.
Приклад:
Якщо адміністратор призначає курс «Базове знайомство з K2 ERP» на гілку «Потік 2026-07», система повинна автоматично призначити цей курс усім учням, які входять до всіх груп цього потоку.
14. Учні та співробітники
Картка учня повинна містити:
- ПІБ;
- контактні дані;
- email;
- телефон;
- організацію;
- посаду;
- підрозділ;
- навчальні групи;
- призначені курси;
- завершені курси;
- сертифікати;
- дипломи;
- поточний прогрес;
- рейтинг;
- дедлайни;
- історію навчання;
- переписку з викладачами;
- статус активності.
Картка співробітника для посадового навчання повинна додатково містити:
- підприємство;
- підрозділ;
- керівника;
- посаду;
- посадову інструкцію;
- обов’язкові навчальні програми;
- рекомендовані курси;
- індекс відповідності посаді;
- статус посадового навчання;
- прострочені дедлайни;
- активні сертифікати;
- прострочені сертифікати.
15. Посади, посадові інструкції та навчальні траєкторії
Потрібно передбачити можливість проходження навчання згідно посадової інструкції.
Система повинна підтримувати зв’язок:
Підприємство → підрозділ → посада → посадова інструкція → навчальна програма → курси → контрольні точки → сертифікати / дипломи
15.1. Картка посади
Картка посади повинна містити:
- назву посади;
- підрозділ;
- опис функцій;
- посадову інструкцію;
- список обов’язкових курсів;
- список рекомендованих курсів;
- періодичність повторного навчання;
- мінімальні вимоги до знань;
- відповідального HR або керівника;
- дедлайни проходження;
- документи, які повинні бути видані після навчання.
15.2. Посадове навчання
При призначенні співробітника на посаду система повинна автоматично:
- визначити обов’язкові курси для цієї посади;
- визначити рекомендовані курси;
- визначити дедлайни проходження;
- сформувати персональний навчальний план;
- повідомити співробітника про призначене навчання;
- показати це навчання куратору, HR та керівнику.
15.3. Індекс відповідності посаді
Для навчання на підприємстві потрібно передбачити показник індекс відповідності посаді.
Індекс відповідності посаді показує, наскільки співробітник виконав навчальні вимоги своєї посади.
Приклад:
- 100% — співробітник пройшов усі обов’язкові курси;
- 80% — частина навчання ще не завершена;
- 50% — пройдена тільки половина обов’язкової програми;
- 0% — навчання не розпочато.
16. Компетенції
Потрібно передбачити дерево компетенцій.
Приклад:
** Робота з K2 ERP;
*** Базова навігація;
*** Робота з довідниками;
*** Робота з документами;
*** Побудова звітів;
** Бухгалтерія;
*** Первинні документи;
*** Податковий облік;
*** Управлінський облік;
** Розробка;
*** Python;
*** TypeScript;
*** SQL;
*** API;
*** ER-моделювання.
Кожен курс може закривати певні компетенції. Після проходження курсу система повинна показувати, які компетенції користувач уже отримав, а які ще потрібно пройти.
17. Дедлайни
У системі потрібно передбачити гнучке налаштування дедлайнів для навчання.
Дедлайни можуть задаватися:
- для всього курсу;
- для окремого розділу;
- для окремого елемента курсу;
- для тесту;
- для практичного завдання;
- для фінального іспиту;
- для сертифікації;
- для навчальної програми;
- для посадового навчального плану;
- для групи;
- для потоку;
- для конкретного учня;
- для конкретного співробітника.
17.1. Типи дедлайнів
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17.2. Поля дедлайну
Для дедлайну потрібно передбачити такі поля:
- id;
- entity_type;
- entity_id;
- student_id;
- employee_id;
- group_id;
- position_id;
- deadline_type;
- start_date;
- due_date;
- due_days;
- warning_days_before;
- repeat_warning_days;
- is_required;
- priority;
- status;
- created_by;
- created_at;
- updated_at;
- completed_at;
- overdue_at.
Статуси дедлайну:
- заплановано;
- активний;
- виконано;
- прострочено;
- перенесено;
- скасовано;
- заблоковано.
17.3. Контроль дедлайнів
Система повинна автоматично контролювати дедлайни.
Потрібно перевіряти:
- чи розпочато навчання;
- чи відкрито курс;
- чи виконано елемент курсу;
- чи здано тест;
- чи здано практичне завдання;
- чи перевірив куратор завдання;
- чи завершено курс;
- чи отримано сертифікат;
- чи не прострочено навчання.
| Критична вимога: прострочення дедлайну повинно фіксуватися в системі автоматично. Не можна покладатися тільки на ручну перевірку куратором.
|
18. Email-повідомлення про дедлайни
Система повинна автоматично повідомляти учня про наближення дедлайну та про його порушення.
18.1. Події для email-повідомлень
Email-повідомлення повинні надсилатися у таких випадках:
- учню призначено курс;
- учню призначено посадове навчання;
- відкрито новий елемент курсу;
- потрібно здати тест;
- потрібно здати практичне завдання;
- до дедлайну залишилось N днів;
- до дедлайну залишився 1 день;
- дедлайн сьогодні;
- дедлайн прострочено;
- завдання повернуто на доопрацювання;
- куратор прийняв завдання;
- курс завершено;
- сертифікат видано;
- диплом видано.
18.2. Налаштування нагадувань
Для кожного курсу, завдання або посадового навчального плану потрібно передбачити налаштування нагадувань:
- за 7 днів до дедлайну;
- за 3 дні до дедлайну;
- за 1 день до дедлайну;
- у день дедлайну;
- після прострочення;
- повторне нагадування кожні N днів після прострочення.
18.3. Шаблон email-повідомлення учню
|
Тема: Нагадування про дедлайн навчання
Текст:
Вітаємо, {student_name}!
Нагадуємо, що вам потрібно пройти етап навчання:
{course_name} / {item_name}
Дедлайн: {due_date}
Статус: {status}
Посилання для проходження: {course_link}
Якщо виникли питання, зверніться до куратора: {curator_name}.
|
18.4. Повідомлення про прострочення
Якщо дедлайн прострочено, система повинна:
- відправити повідомлення учню;
- відправити повідомлення куратору;
- за потреби повідомити керівника;
- за потреби повідомити HR;
- змінити статус дедлайну на «прострочено»;
- показати прострочення на дашборді.
19. Переписка між учнем, викладачем і куратором
У системі потрібно передбачити внутрішню переписку.
Переписка повинна бути доступна:
- в межах курсу;
- в межах конкретного уроку;
- в межах практичного завдання;
- в межах навчальної групи;
- між учнем і викладачем;
- між учнем і куратором;
- між викладачем і всією групою;
- між співробітником, HR, керівником і куратором у посадовому навчанні.
Функції переписки:
- текстові повідомлення;
- прикріплення файлів;
- коментарі до зданих завдань;
- службові повідомлення системи;
- повідомлення про перевірку роботи;
- повідомлення про повернення на доопрацювання;
- повідомлення про відкриття нового розділу;
- повідомлення про отримання сертифікату або диплому.
20. Рейтинг у межах курсу
У модулі онлайн-навчання потрібно передбачити рейтинг учнів у межах конкретного курсу.
Рейтинг курсу потрібен для того, щоб учні, викладачі, куратори та адміністратори бачили, хто найкраще проходить навчання, хто виконує завдання вчасно, хто має високі бали, а хто відстає.
20.1. Дані рейтингу курсу
У рейтингу курсу потрібно відображати:
- місце учня в рейтингу;
- фото або аватар;
- ПІБ учня;
- посаду або роль;
- навчальну групу;
- індекс успішності;
- кількість виконаних завдань;
- кількість перевірених завдань;
- кількість прострочених завдань;
- середній бал;
- загальну кількість балів;
- відсоток проходження курсу;
- дату останньої активності;
- статус проходження курсу.
Приклад таблиці рейтингу:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20.2. Формування рейтингу курсу
Рейтинг курсу повинен формуватися на основі таких показників:
- кількість виконаних обов’язкових елементів;
- кількість зданих тестів;
- кількість прийнятих практичних завдань;
- кількість правильних відповідей;
- сумарний бал;
- середній бал;
- проходження без прострочень;
- швидкість проходження;
- кількість повернень на доопрацювання;
- активність учня;
- виконання дедлайнів.
Формула індексу успішності повинна бути налаштовуваною.
Базовий варіант індексу успішності:
- 40% — прогрес проходження курсу;
- 30% — результати тестів;
- 20% — практичні завдання;
- 10% — дотримання дедлайнів.
| Важливо: формула рейтингу не повинна бути жорстко зашита в коді. Потрібно передбачити налаштування ваги показників для кожного курсу або типу навчання.
|
20.3. Види рейтингу курсу
Потрібно передбачити декілька видів рейтингу:
- рейтинг усіх учнів курсу;
- рейтинг у межах навчальної групи;
- рейтинг у межах потоку;
- рейтинг у межах організації;
- рейтинг за балами;
- рейтинг за прогресом;
- рейтинг за швидкістю проходження;
- рейтинг за дедлайнами;
- рейтинг за практичними завданнями;
- рейтинг за фінальним іспитом.
21. Рейтинг співробітників підприємства
Окрім рейтингу в межах курсу, потрібно передбачити рейтинг співробітників підприємства.
Цей рейтинг використовується тоді, коли навчання проходить не як окремий відкритий курс, а як обов’язкове навчання згідно посад, посадових інструкцій, адаптації, внутрішніх регламентів або вимог підприємства.
21.1. Дані рейтингу співробітників
У рейтингу співробітників потрібно відображати:
- місце в рейтингу;
- ПІБ співробітника;
- посаду;
- підрозділ;
- керівника;
- призначені навчальні програми;
- кількість обов’язкових курсів;
- кількість завершених курсів;
- кількість незавершених курсів;
- кількість прострочених курсів;
- кількість активних дедлайнів;
- кількість порушених дедлайнів;
- середній бал;
- індекс навчальної дисципліни;
- індекс відповідності посаді;
- кількість активних сертифікатів;
- кількість прострочених сертифікатів.
21.2. Рейтинг по підрозділах
Потрібно передбачити рейтинг не тільки по співробітниках, а й по підрозділах.
У рейтингу підрозділів потрібно показувати:
- назву підрозділу;
- керівника;
- кількість співробітників;
- кількість призначених курсів;
- середній прогрес навчання;
- середній бал;
- кількість прострочених дедлайнів;
- кількість завершених навчальних програм;
- кількість співробітників із невиконаним навчанням.
22. Дашборди та аналітика
У системі потрібно передбачити дашборди для різних ролей.
22.1. Дашборд учня
Учень повинен бачити:
- призначені курси;
- поточний прогрес;
- завершені курси;
- відкриті розділи;
- заблоковані розділи;
- дедлайни;
- здані завдання;
- завдання на доопрацюванні;
- оцінки;
- рейтинг;
- сертифікати;
- дипломи;
- повідомлення від викладачів.
22.2. Дашборд викладача
Викладач повинен бачити:
- свої курси;
- активні групи;
- кількість учнів;
- завдання на перевірці;
- прострочені завдання;
- середній бал по курсу;
- учнів із ризиком відставання;
- переписку;
- статистику проходження уроків.
22.3. Дашборд куратора
Куратор повинен бачити:
- список груп;
- прогрес кожної групи;
- прогрес кожного учня;
- учнів, які не розпочали навчання;
- учнів, які давно не заходили в курс;
- учнів, які не виконують курс;
- учнів, які порушили дедлайни;
- учнів, у яких завдання очікують перевірки;
- учнів, яким потрібно надати ручний допуск;
- учнів, яким завдання повернено на доопрацювання;
- учнів із низьким рейтингом;
- учнів із ризиком не завершити курс;
- учнів, у яких прострочені сертифікати.
22.4. Індикатори ризику для куратора
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22.5. Дії куратора
Куратор повинен мати можливість:
- відкрити картку учня;
- переглянути прогрес;
- переглянути здані завдання;
- прийняти завдання;
- повернути завдання на доопрацювання;
- надати ручний допуск;
- заблокувати допуск;
- перенести дедлайн;
- залишити коментар;
- написати учню повідомлення;
- надіслати повторне нагадування;
- повідомити керівника або HR.
22.6. Дашборд керівника
Керівник повинен бачити:
- навчання своїх підлеглих;
- відповідність навчання посадовим інструкціям;
- хто пройшов обов’язкові курси;
- хто не пройшов обов’язкові курси;
- прострочене навчання;
- сертифікати співробітників;
- дипломи співробітників;
- рейтинг успішності підрозділу.
22.7. Дашборд курсу
По кожному курсу потрібно бачити:
- кількість учнів;
- кількість активних учнів;
- кількість завершених проходжень;
- середній прогрес;
- середній бал;
- відсоток успішного завершення;
- складні уроки;
- складні тести;
- середній час проходження;
- кількість виданих сертифікатів;
- кількість виданих дипломів;
- кількість незавершених проходжень.
22.8. Дашборд навчальної групи
По групі потрібно бачити:
- список учнів;
- прогрес кожного учня;
- середній прогрес групи;
- середній бал групи;
- виконані завдання;
- невиконані завдання;
- учнів, які відстають;
- учнів, які завершили навчання;
- видані сертифікати;
- видані дипломи.
22.9. Дашборд посадового навчання
По посадовому навчанню потрібно бачити:
- підприємство;
- підрозділ;
- посаду;
- список співробітників;
- обов’язкові курси;
- рекомендовані курси;
- середній індекс відповідності посаді;
- співробітників, які не почали навчання;
- співробітників, які прострочили дедлайни;
- співробітників, які завершили навчання;
- видані посвідчення, дипломи або внутрішні допуски.
23. Сертифікати, дипломи, посвідчення та внутрішні допуски
У модулі онлайн-навчання K2 ERP потрібно передбачити можливість видачі навчальних документів.
Сертифікат підтверджує проходження окремого курсу, тесту, модуля або навчального етапу.
Диплом підтверджує проходження повної навчальної програми, спеціалізації, професійної траєкторії, посадового навчання або комплексу курсів.
Посвідчення підтверджує проходження обов’язкового навчання або інструктажу.
Внутрішній допуск підтверджує право співробітника виконувати певні функції в межах підприємства.
| Важливо: диплом і сертифікат повинні реалізовуватися через єдиний механізм навчальних документів, але мати різні типи, шаблони, умови видачі, дизайн і правила перевірки.
|
23.1. Типи навчальних документів
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23.2. Умови видачі документа
Документ може видаватися після виконання однієї або декількох умов:
- завершено всі обов’язкові курси навчальної програми;
- завершено всі обов’язкові розділи;
- здано фінальний тест;
- виконано всі практичні завдання;
- отримано ручне підтвердження куратора;
- отримано підтвердження викладача;
- набрано мінімальний середній бал;
- не порушено критичні дедлайни;
- завершено посадове навчання;
- отримано всі необхідні сертифікати всередині програми;
- пройдено фінальну сертифікацію.
23.3. Картка навчального документа
Картка документа повинна містити:
- тип документа;
- номер документа;
- ПІБ власника;
- користувача / співробітника;
- назву курсу;
- назву навчальної програми;
- організацію, яка видала документ;
- дату видачі;
- строк дії, якщо він передбачений;
- статус документа;
- шаблон документа;
- QR-код;
- публічне посилання для перевірки;
- PDF-файл;
- зображення / preview;
- відповідального викладача;
- відповідального куратора;
- підписанта;
- підставу видачі;
- пов’язані курси;
- пов’язані сертифікати;
- історію змін.
Статуси документа:
- чернетка;
- сформований;
- виданий;
- активний;
- анульований;
- замінений;
- прострочений;
- архівний.
24. Шаблони документів
Потрібно передбачити довідник шаблонів дипломів, сертифікатів, посвідчень і внутрішніх допусків.
Шаблон документа повинен містити:
- назву шаблону;
- тип документа;
- мову;
- орієнтацію сторінки;
- фон;
- логотип;
- шрифти;
- розміщення текстових блоків;
- місце для QR-коду;
- місце для підпису;
- місце для печатки, якщо використовується;
- змінні шаблону;
- статус шаблону.
Приклади змінних шаблону:
- {student_name};
- {course_name};
- {program_name};
- {issue_date};
- {certificate_number};
- {diploma_number};
- {study_hours};
- {lessons_count};
- {organization_name};
- {teacher_name};
- {curator_name};
- {verification_url};
- {qr_code}.
| Технічна рекомендація: генератор документів повинен бути універсальним. Один механізм повинен формувати сертифікати, дипломи, посвідчення та внутрішні допуски на основі різних шаблонів.
|
25. Публічна сторінка перевірки документа
Для кожного виданого документа потрібно формувати публічну сторінку перевірки.
Публічна сторінка повинна мати унікальне посилання, наприклад:
/education/document/{verification_token}
або
/certificate/{verification_token}
На публічній сторінці потрібно показувати:
- тип документа;
- ПІБ власника;
- назву навчальної програми;
- назву курсу або спеціалізації;
- дату видачі;
- статус документа;
- організацію, яка видала документ;
- підтвердження дійсності;
- preview документа;
- QR-код;
- кнопку переходу до навчальної платформи;
- кнопки поширення;
- кнопку завантаження PDF.
25.1. Перевірка дійсності документа
Дійсність документа повинна перевірятися:
- за QR-кодом;
- за унікальним номером;
- за verification_token;
- через публічне посилання;
- через API, якщо це потрібно для інтеграцій.
Результати перевірки:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Критична вимога: публічне посилання на документ не повинно дозволяти змінювати дані. Воно використовується тільки для перегляду, перевірки, поширення та завантаження.
|
26. Завантаження та поширення дипломів і сертифікатів
На публічній сторінці документа та в особистому кабінеті учня потрібно передбачити можливість завантаження документа.
Формати завантаження:
- PDF;
- PNG або JPG preview;
- архів із PDF і QR-кодом, якщо потрібно.
Кнопки:
- «Скачати PDF»;
- «Завантажити диплом»;
- «Завантажити сертифікат»;
- «Скопіювати посилання»;
- «Перейти до навчальної платформи».
26.1. Поширення документа
Система повинна дозволяти учню поширити диплом або сертифікат.
Потрібно передбачити кнопки:
- скопіювати посилання;
- поділитися у Facebook;
- поділитися у LinkedIn;
- поділитися в Telegram;
- поділитися через email;
- завантажити PDF для ручної відправки.
Для LinkedIn бажано передбачити окремий сценарій:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27. Особистий кабінет учня
В особистому кабінеті учня потрібно передбачити розділ «Мої документи» або «Дипломи та сертифікати».
У цьому розділі потрібно показувати:
- всі сертифікати;
- всі дипломи;
- посвідчення;
- внутрішні допуски;
- статус кожного документа;
- дату видачі;
- строк дії;
- кнопку перегляду;
- кнопку завантаження;
- кнопку поширення;
- QR-код;
- посилання на публічну перевірку.
28. Інтерфейс системи
28.1. Головна сторінка модуля
На головній сторінці модуля потрібно показати:
- доступні курси;
- дерево курсів;
- призначені курси;
- активне навчання;
- прогрес користувача;
- найближчі дедлайни;
- нові повідомлення;
- сертифікати;
- дипломи;
- рекомендовані курси;
- рейтинг.
28.2. Сторінка курсу
Сторінка курсу повинна містити:
- обкладинку курсу;
- назву;
- опис;
- викладача;
- куратора;
- тривалість;
- список розділів;
- список елементів поточного розділу;
- прогрес проходження;
- статус доступу;
- кнопку продовження навчання;
- блок тестів;
- блок практичних завдань;
- блок дедлайнів;
- блок рейтингу;
- блок сертифікату або диплому;
- переписку по курсу.
28.3. Сторінка уроку
Сторінка уроку повинна містити:
- назву уроку;
- матеріал уроку;
- відео або текст;
- прикріплені файли;
- посилання;
- кнопку «Позначити як пройдено»;
- кнопку переходу до наступного уроку;
- блок коментарів;
- статус проходження;
- дедлайн, якщо він є.
28.4. Сторінка тесту
Сторінка тесту повинна містити:
- назву тесту;
- опис;
- кількість питань;
- час проходження;
- кількість спроб;
- поточний результат;
- форму відповідей;
- кнопку завершення тесту;
- результат після здачі;
- пояснення помилок, якщо це дозволено налаштуваннями;
- інформацію, чи відкрито наступний етап.
28.5. Сторінка практичного завдання
Сторінка практичного завдання повинна містити:
- опис завдання;
- інструкцію;
- критерії оцінювання;
- дедлайн;
- форму здачі;
- прикріплення файлів;
- поле коментаря учня;
- статус перевірки;
- коментар викладача або куратора;
- історію здачі та доопрацювань.
28.6. Вимоги до інтерфейсу дерев
Для деревовидних структур потрібно передбачити:
- розгортання та згортання вузлів;
- drag-and-drop переміщення елементів;
- зміну порядку елементів;
- пошук по дереву;
- фільтрацію;
- контекстне меню;
- швидке додавання дочірнього елемента;
- копіювання гілки;
- перенесення гілки;
- архівацію гілки;
- відображення статусів елементів;
- відображення прогресу по гілці;
- масові дії по вибраній гілці.
29. Права доступу
Права доступу повинні налаштовуватися через рольову модель K2 ERP.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30. Журналювання та історія змін
Потрібно вести історію таких подій:
- створення курсу;
- редагування курсу;
- публікація курсу;
- зміна дерева курсів;
- зміна порядку розділів;
- зміна порядку елементів;
- створення групи;
- зміна дерева груп;
- призначення курсу користувачу;
- призначення курсу групі;
- призначення курсу гілці дерева;
- призначення посадового навчання;
- відкриття розділу;
- проходження уроку;
- здача тесту;
- здача практичного завдання;
- перевірка завдання;
- ручний допуск;
- перенесення дедлайну;
- прострочення дедлайну;
- формування сертифікату;
- формування диплому;
- анулювання документа;
- завантаження документа;
- поширення документа;
- зміна ролей;
- зміна прав доступу.
Журнал повинен містити:
- дату та час події;
- користувача;
- тип події;
- об’єкт;
- старе значення;
- нове значення;
- коментар.
31. Інтеграції з іншими модулями K2 ERP
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32. Бізнес-процеси
32.1. Створення курсу
- Автор курсу створює картку курсу.
- Додає опис, категорію, рівень складності.
- Вказує місце курсу в дереві курсів.
- Створює розділи курсу.
- Задає sort_order розділів.
- Додає елементи всередині розділів.
- Задає sort_order елементів.
- Додає контрольні точки.
- Налаштовує правила допуску.
- Налаштовує дедлайни.
- Налаштовує рейтинг.
- Налаштовує сертифікат або диплом.
- Передає курс на перевірку.
- Адміністратор або відповідальна особа публікує курс.
32.2. Проходження курсу
- Учень отримує доступ до курсу.
- Система відкриває перший розділ.
- Учень проходить перший елемент розділу.
- Система перевіряє контрольну точку.
- Якщо контроль автоматичний — система сама визначає результат.
- Якщо контроль ручний — куратор або викладач приймає рішення.
- Якщо умови виконані — відкривається наступний елемент.
- Якщо умови не виконані — елемент залишається заблокованим або завдання повертається на доопрацювання.
- Після завершення всіх обов’язкових елементів курс переходить у статус «Завершено».
- Якщо передбачено документ — система формує сертифікат або диплом.
32.3. Посадове навчання
- HR або адміністратор створює навчальну траєкторію для посади.
- До посади прив’язуються обов’язкові курси.
- Для курсів задаються дедлайни.
- Співробітника призначають на посаду.
- Система автоматично формує навчальний план.
- Співробітник отримує повідомлення.
- Керівник, HR і куратор бачать прогрес.
- Після завершення навчання формується документ: сертифікат, диплом, посвідчення або внутрішній допуск.
32.4. Перевірка практичного завдання
- Учень здає завдання.
- Система переводить завдання у статус «Відправлено на перевірку».
- Викладач або куратор отримує повідомлення.
- Перевіряє файли, текст, посилання.
- Виставляє оцінку.
- Додає коментар.
- Приймає або повертає на доопрацювання.
- Учень отримує повідомлення.
- Якщо завдання прийнято — система відкриває наступний етап.
32.5. Видача документа
- Система перевіряє, чи пройдені всі обов’язкові елементи.
- Перевіряє мінімальний бал.
- Перевіряє статус практичних завдань.
- Перевіряє дедлайни.
- Формує документ.
- Генерує унікальний номер.
- Генерує QR-код.
- Генерує PDF.
- Зберігає документ у профілі учня.
- Відправляє повідомлення учню.
- Відкриває публічну перевірку документа.
33. Орієнтовна структура даних
Фінальна структура повинна бути деталізована під ER-модель K2 ERP.
33.1. Courses
Поля:
- id;
- name;
- code;
- description_short;
- description_full;
- category_id;
- course_tree_node_id;
- level;
- language;
- status;
- author_id;
- teacher_id;
- curator_id;
- duration_hours;
- is_required;
- is_public;
- is_paid;
- has_certificate;
- has_diploma;
- certificate_template_id;
- diploma_template_id;
- min_progress_percent;
- min_score;
- rating_formula_id;
- created_at;
- updated_at;
- published_at;
- archived_at.
33.2. CourseSections
Поля:
- id;
- course_id;
- sort_order;
- name;
- description;
- status;
- is_required;
- unlock_rule_id;
- deadline_id;
- created_at;
- updated_at.
33.3. CourseItems
Поля:
- id;
- course_id;
- section_id;
- sort_order;
- item_type;
- name;
- description;
- content;
- file_id;
- video_url;
- duration_minutes;
- is_required;
- status;
- unlock_rule_id;
- completion_rule_id;
- deadline_id;
- created_at;
- updated_at.
33.4. CourseItemControls
Поля:
- id;
- course_item_id;
- control_type;
- name;
- description;
- is_required;
- sort_order;
- pass_logic;
- min_score;
- min_percent;
- attempts_limit;
- time_limit_minutes;
- deadline_days;
- manual_override_allowed;
- manual_block_allowed;
- reviewer_role;
- reviewer_user_id;
- status;
- created_at;
- updated_at.
33.5. ControlQuestions
Поля:
- id;
- control_id;
- question_type;
- question_text;
- score;
- sort_order;
- is_required;
- explanation;
- created_at;
- updated_at.
33.6. ControlAnswers
Поля:
- id;
- question_id;
- answer_text;
- is_correct;
- sort_order;
- created_at;
- updated_at.
33.7. StudentItemProgress
Поля:
- id;
- student_id;
- course_id;
- section_id;
- course_item_id;
- status;
- sort_order_snapshot;
- started_at;
- completed_at;
- allowed_next;
- allowed_next_at;
- allowed_next_by;
- blocked_reason;
- updated_at.
33.8. StudentControlAttempts
Поля:
- id;
- student_id;
- course_id;
- course_item_id;
- control_id;
- attempt_number;
- status;
- score;
- percent;
- submitted_text;
- submitted_file_id;
- reviewer_id;
- reviewer_comment;
- decision;
- started_at;
- submitted_at;
- reviewed_at.
33.9. TreeNodes
Універсальна таблиця для дерев.
Поля:
- id;
- tree_type;
- parent_id;
- entity_type;
- entity_id;
- name;
- code;
- sort_order;
- level;
- path;
- status;
- is_group;
- created_at;
- updated_at.
33.10. LearningGroups
Поля:
- id;
- name;
- code;
- description;
- group_tree_node_id;
- status;
- start_date;
- end_date;
- teacher_id;
- curator_id;
- created_at;
- updated_at.
33.11. LearningGroupStudents
Поля:
- id;
- group_id;
- student_id;
- status;
- added_at;
- removed_at.
33.12. LearningDeadlines
Поля:
- id;
- entity_type;
- entity_id;
- student_id;
- employee_id;
- course_id;
- course_item_id;
- group_id;
- position_id;
- organization_id;
- deadline_type;
- start_date;
- due_date;
- due_days;
- warning_days_before;
- repeat_warning_days;
- is_required;
- priority;
- status;
- created_by;
- created_at;
- updated_at;
- completed_at;
- overdue_at.
33.13. DeadlineNotifications
Поля:
- id;
- deadline_id;
- recipient_user_id;
- recipient_role;
- notification_type;
- channel;
- subject;
- message_text;
- status;
- planned_send_at;
- sent_at;
- error_text;
- created_at.
33.14. CourseRatings
Поля:
- id;
- course_id;
- student_id;
- group_id;
- place_number;
- success_index;
- progress_percent;
- completed_tasks_count;
- checked_tasks_count;
- overdue_tasks_count;
- average_score;
- total_score;
- last_activity_at;
- calculated_at.
33.15. EmployeeLearningRatings
Поля:
- id;
- employee_id;
- organization_id;
- department_id;
- position_id;
- manager_id;
- required_courses_count;
- completed_courses_count;
- active_courses_count;
- overdue_courses_count;
- active_deadlines_count;
- overdue_deadlines_count;
- average_score;
- position_compliance_index;
- learning_discipline_index;
- active_certificates_count;
- expired_certificates_count;
- calculated_at.
33.16. LearningDocuments
Універсальна таблиця для сертифікатів, дипломів, посвідчень і внутрішніх допусків.
Поля:
- id;
- document_type;
- document_number;
- student_id;
- employee_id;
- course_id;
- program_id;
- position_learning_plan_id;
- organization_id;
- department_id;
- position_id;
- template_id;
- status;
- issue_date;
- valid_until;
- verification_token;
- verification_url;
- qr_code_file_id;
- pdf_file_id;
- preview_file_id;
- issued_by;
- approved_by;
- revoked_at;
- revoked_by;
- revoked_reason;
- replaced_by_document_id;
- created_at;
- updated_at.
33.17. LearningDocumentTemplates
Поля:
- id;
- name;
- document_type;
- language;
- orientation;
- template_html;
- template_css;
- background_file_id;
- logo_file_id;
- is_active;
- created_by;
- created_at;
- updated_at.
33.18. LearningDocumentShareLog
Поля:
- id;
- document_id;
- user_id;
- share_type;
- channel;
- shared_url;
- created_at.
33.19. LearningDocumentVerificationLog
Поля:
- id;
- document_id;
- verification_token;
- ip_address;
- user_agent;
- referrer;
- checked_at;
- result_status.
34. Технічні вимоги до дерев
Для реалізації дерев у базі даних потрібно передбачити стандартні поля:
- id;
- parent_id;
- tree_id або tree_type;
- sort_order;
- level;
- path;
- name;
- code;
- status;
- is_group;
- entity_type;
- entity_id;
- created_at;
- updated_at.
Для великих дерев бажано передбачити поле path або materialized path, щоб швидко отримувати всі дочірні елементи певної гілки.
| Технічна рекомендація: для K2 ERP варто уніфікувати механізм дерев, щоб його можна було використовувати не тільки в модулі навчання, а й у CRM, WMS, документообігу, HR, проєктах, довідниках, категоріях товарів, статтях витрат та інших модулях.
|
35. Нефункціональні вимоги
35.1. Продуктивність
Система повинна працювати стабільно при:
- великій кількості курсів;
- великій кількості учнів;
- великій кількості співробітників;
- великій кількості навчальних груп;
- великих деревах курсів і груп;
- одночасному проходженні тестів;
- завантаженні файлів;
- формуванні сертифікатів;
- формуванні дипломів;
- побудові дашбордів;
- розрахунку рейтингів;
- масовій перевірці дедлайнів.
35.2. Безпека
Потрібно передбачити:
- перевірку прав доступу;
- захист персональних даних;
- захист документів від підробки;
- унікальні токени перевірки;
- журналювання критичних дій;
- обмеження доступу до приватних навчальних матеріалів;
- захист від повторного використання чужих документів;
- права доступу на рівні гілок дерев;
- захист публічних сторінок перевірки від редагування.
35.3. Масштабованість
Модуль повинен підтримувати:
- багато організацій;
- багато курсів;
- багато груп;
- багато викладачів;
- багато потоків навчання;
- багато посадових навчальних програм;
- різні мови навчальних матеріалів;
- розгортання в публічній або приватній хмарі K2 ERP.
35.4. Локалізація
Потрібно передбачити можливість локалізації:
- інтерфейсу;
- назв курсів;
- уроків;
- тестів;
- сертифікатів;
- дипломів;
- повідомлень;
- шаблонів email.
36. Контроль якості та тестування
Тестувальникам потрібно перевірити такі сценарії.
36.1. Курси
- створення курсу;
- редагування курсу;
- публікація курсу;
- приховування курсу;
- архівація курсу;
- додавання курсу в дерево курсів;
- перенесення курсу між гілками дерева;
- створення розділів;
- зміна порядку розділів;
- додавання уроків;
- зміна порядку уроків;
- додавання тестів;
- додавання практичних завдань;
- налаштування контрольних точок;
- налаштування сертифікату;
- налаштування диплому.
36.2. Групи навчання
- створення групи;
- створення дерева груп;
- додавання групи в гілку;
- перенесення групи між гілками;
- додавання учнів у групу;
- призначення курсу групі;
- призначення курсу всій гілці дерева груп;
- перевірка доступів куратора до своєї гілки.
36.3. Проходження навчання
- учень бачить призначений курс;
- учень не бачить закритий курс;
- учень проходить перший урок;
- наступний урок відкривається після виконання умов;
- розділ не відкривається без здачі тесту;
- розділ відкривається після ручного допуску куратора;
- прогрес рахується правильно;
- завершення курсу працює правильно.
36.4. Тести
- створення тесту;
- додавання питань;
- проходження тесту;
- автоматична перевірка;
- ручна перевірка;
- обмеження кількості спроб;
- обмеження часу;
- випадковий порядок питань;
- мінімальний прохідний бал;
- повторне проходження.
36.5. Практичні завдання
- здача текстової відповіді;
- здача файлу;
- повернення на доопрацювання;
- повторна здача;
- прийняття завдання;
- нарахування балів;
- відкриття наступного етапу після прийняття.
36.6. Дедлайни
- створення дедлайну;
- нагадування за 7 днів;
- нагадування за 3 дні;
- нагадування за 1 день;
- нагадування в день дедлайну;
- прострочення дедлайну;
- повідомлення учню;
- повідомлення куратору;
- відображення прострочення на дашборді;
- перенесення дедлайну користувачем із правами.
36.7. Рейтинги
- рейтинг курсу рахується правильно;
- рейтинг групи рахується правильно;
- рейтинг співробітників рахується правильно;
- рейтинг підрозділів рахується правильно;
- формула рейтингу враховує прогрес, бали, завдання і дедлайни;
- учень бачить своє місце;
- куратор бачить рейтинг своєї групи;
- керівник бачить рейтинг підлеглих.
36.8. Документи
- сертифікат не видається до завершення курсу;
- сертифікат видається після виконання умов;
- диплом видається після завершення програми;
- документ видається після посадового навчання;
- генерується унікальний номер;
- формується QR-код;
- відкривається публічна сторінка перевірки;
- документ можна завантажити у PDF;
- документ можна поширити через посилання;
- анульований документ показується як недійсний;
- прострочений документ показується як прострочений.
37. Мінімальний MVP
Для першої версії модуля потрібно реалізувати:
- довідник курсів;
- дерево курсів;
- розділи курсу;
- сортування розділів;
- навчальні елементи курсу;
- сортування елементів;
- контрольні точки;
- автоматичні тести;
- практичні завдання з ручною перевіркою;
- навчальні групи;
- дерево груп навчання;
- призначення курсів учням;
- призначення курсів групам;
- послідовне проходження;
- ручний допуск куратора;
- дедлайни;
- email-нагадування про дедлайни;
- дашборд учня;
- дашборд викладача;
- дашборд куратора;
- базовий рейтинг курсу;
- базовий рейтинг співробітників;
- генерацію сертифікату;
- генерацію диплому;
- перевірку документа через веб-сторінку;
- завантаження PDF;
- поширення документа через посилання.
38. Наступні етапи розвитку
Після MVP можна додати:
- вебінари;
- інтеграцію з календарем;
- автоматичний розклад занять;
- оплату курсів;
- маркетплейс курсів;
- рейтинг викладачів;
- рейтинг учнів;
- гейміфікацію;
- бейджі;
- повторне навчання через певний період;
- AI-перевірку відкритих відповідей;
- AI-помічника для учня;
- AI-генерацію тестів на основі уроків;
- автоматичний переклад матеріалів;
- SCORM/xAPI-сумісність;
- мобільний застосунок;
- API перевірки дипломів і сертифікатів;
- інтеграцію з LinkedIn Credentials.
39. Критерії приймання
Модуль вважається реалізованим, якщо:
- адміністратор може створити курс;
- автор може наповнити курс розділами, уроками, тестами та завданнями;
- курси можна групувати в дерево курсів;
- групи навчання можна групувати в дерево груп;
- розділи курсу можна сортувати;
- елементи всередині розділу можна сортувати;
- учень може пройти курс поетапно;
- система блокує наступні етапи до виконання умов;
- автоматичний тест сам визначає допуск за кількістю правильних відповідей;
- куратор може вручну прийняти завдання і допустити учня далі;
- куратор може повернути завдання на доопрацювання;
- курс можна призначити окремому учню, групі або цілій гілці дерева;
- навчання можна призначити згідно посади;
- система контролює дедлайни;
- учень отримує email-нагадування про дедлайни;
- куратор бачить, хто не виконує навчання;
- куратор бачить прострочені дедлайни;
- по курсу формується рейтинг;
- по підприємству формується рейтинг співробітників;
- після завершення курсу формується сертифікат;
- після завершення програми формується диплом;
- після посадового навчання може формуватися посвідчення або внутрішній допуск;
- документ можна перевірити через веб-сторінку;
- документ можна завантажити у PDF;
- документ можна поширити через посилання, Facebook, LinkedIn, Telegram або email;
- права доступу працюють згідно ролей;
- усі ключові дії журналюються.
| Результат реалізації: K2 ERP повинна отримати повноцінний модуль онлайн-навчання, який можна використовувати для курсів, внутрішнього навчання співробітників, навчання клієнтів, підготовки партнерів, освітніх програм, посадового навчання, контролю дедлайнів, рейтингів, сертифікації, видачі дипломів та перевірки документів через веб-систему.
|
40. Короткий опис для задачі в розробку
Реалізувати модуль онлайн-навчання K2 ERP з підтримкою курсів, дерева курсів, навчальних груп, дерева груп навчання, посадового навчання, сортування розділів і елементів курсу, автоматичних тестів, ручної перевірки завдань, гнучких контрольних точок, дедлайнів, email-нагадувань, дашбордів, рейтингів, сертифікатів, дипломів, PDF-завантаження, поширення документів і публічної перевірки дійсності документів через веб-систему.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|