- •ВВЕДЕНИЕ
- •1. ТРЕБОВАНИЯ
- •1.1. Глоссарий
- •1.2. Бизнес-требования
- •1.3. Пользовательские требования
- •1.4. Системные требования
- •1.5. Функциональные требования
- •1.6. Нефункциональные требования
- •2. АРХИТЕКТУРНОЕ ОПИСАНИЕ
- •2.1. Архитектурное обоснование
- •2.2. Модели
- •2.3. UML-описание
- •2.3.1. Варианты использования
- •2.3.2. Диаграмма классов
- •2.3.3. Диаграмма деятельности
- •2.3.4. Диаграмма развёртывания
- •3. ТЕСТЫ
- •ЗАКЛЮЧЕНИЕ
- •СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
2.3.3. Диаграмма деятельности
Для каждого пользователя, описанного ранее, существует определённый набор активностей. Так неавторизованные пользователи могут авторизоваться как модератор или авторизованный пользователь. Также неавторизованным пользователям доступны поиск комнат, подключение к открытым комнатам и комнатам с паролем.
Следующей группой пользователей являются авторизованные пользователи. Им, помимо действий доступных предыдущей группе, также доступны действия подключения к комнатам для авторизированных пользователей, комнатам с подтверждениями и комнатам с приглашениями, а также создание своей комнаты.
Пользователи, подключённые к какой-либо комнате, получают дополнительные возможности отправления/получения текстовых сообщений в эту комнату, переключения состояния микрофона и камеры и отключения от комнаты. В случае авторизованного пользователя в этот список добавляется возможность приглашения нового пользователя в комнату.
Создав свою комнату, авторизированный пользователь становится её владельцем, вследствие чего, помимо возможностей подключённого к комнате пользователя, добавляются права на исключение текущих участников из комнаты, пропуск пользователей в комнату по подтверждению, переключение микрофона и камеры у любого участника комнаты и изменение настроек комнаты, среди которых изменение ограниченности входа, изменение пароля, передача прав владельца и удаление комнаты.
Последняя самостоятельная группа пользователей – модераторы. Модератору доступна отладочная информация о комнатах и пользователях, он может просматривать трафик, используемый комнатами и удалять их в случае нарушения правил платформы.
На рисунке 4 приведена диаграмма деятельности для данного проекта.
30
Рисунок 4. Диаграмма деятельности
31
2.3.4. Диаграмма развёртывания
Для развёртывания готового проекта необходим сервер с установленным контейнером сервлетов Apache Tomcat и сервером БД PostgreSQL. Диаграмма развёртывания готового проекта приведена на рисунке 5.
Рисунок 5. Диаграмма развёртывания
32
Пользователь со своего ПКотправляет спомощьюбраузера HTTPS-запрос наbackend-сервер;серверобрабатываетзапрос,изменяетсостояниебазыданных если того требует запрос, и отправляет ответ в виде динамически сгенерированной HTML-страницы, которую отображает браузер пользователя.
Вслучае голосовой и видеосвязи каждый пользователь транслирует голос
ивидео, после чего сервер переадресует эти потоки данных остальным пользователямвреальномвремени.Обновлениекартинкиупользователейтакже происходит в реальном времени без необходимости обновлять страницу.
33