@startuml left to right direction actor "Пользователь" as user note top of user : Основной пользователь приложения - обучаемый actor "Администратор" as admin note top of admin : Администратор учебного центра (загрузка контента) actor "Монитор" as monitor note top of monitor : Заказчик, проверяющий результаты обучений и тестирований rectangle exam-service { usecase "Создание курса" as courseCreate usecase "Создание теста" as testCreate courseCreate <-- admin testCreate <-- admin usecase "Назначение задания" as target target <-- admin usecase "Подробный просмотр результатов" as resultsView monitor --> resultsView usecase "Авторизация" as auth rectangle "Авторизация" as examServiceAuth { usecase "Внесение сведений об организации" as organization usecase "Внесение сведений о должности" as position usecase "внесение кода действующей учетной записи" as code35 auth ..> organization auth ..> position auth ..> code35 } usecase "Просмотр перечня доступных курсов" as task usecase "Просмотр статусов о прохождении курса" as status usecase "Изучение контента курса" as learn rectangle "Обучение" as examServiceLearn { usecase "Просмотр текста" as text usecase "Скачивание документов" as doc usecase "Просмотр изображений" as image usecase "Просмотр видео" as video learn ..> text learn ..> doc learn ..> image learn ..> video text <.. courseCreate doc <.. courseCreate image <.. courseCreate video <.. courseCreate } usecase "Прохождение проверки знаний" as test rectangle "Проверка знаний" as examServiceTest { usecase "Просмотр вопросов и доступных ответов" as quiz usecase "Выбор ответов" as answer usecase "Отправка ответов в базу" as postAttampt test ..> quiz test ..> answer test ..> postAttampt quiz <.. testCreate answer <.. testCreate postAttampt <.. testCreate } user --> auth user --> task user --> learn user --> test user --> status monitor --> status examServiceTest <.. target examServiceLearn <.. target } @enduml