ПКС / ПКС. Практическая 3
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА» (СПбГУТ)
Кафедра информационных управляющих систем
Практическая работа № 03
по Б1.О.12 «ПРОГРАММИРОВАНИЕ КРИТИЧЕСКИХ СЕРВИСОВ»
Студент гр. ИСТ-111_____________________________ П.П. Иванов
(подпись)
Проверил ___________________________ А. В. Параничев
(оценка и подпись)
Санкт-Петербург
2023 год
Построение UML-диаграмм последовательности для прецедентов создания сервиса
[выделенное зеленым прочитать и перед отправкой отчета удалить; выделенное желтым поменять на свое; в данном задании нужно создать и заполнить информацией по теме своего сервиса; файл переназвать по шаблону.
Создать 2 диаграммы по 2м прецедентам из практической работы 02]
Использовать https://www.planttext.com/ или https://www.plantuml.com/plantuml]; можно использовать скрипт из примера.
Указать не менее 2х ролевых объектов, и не менее 3 спецификаций действий логики: alt/opt/loop/break;]
Составление диаграмм последовательности приведено для двух прецедентов (рис. 1 и рис. 2) проекта "Создание Telegram-бота …": [взять формулировку своего сервиса и любые 2 значимые прецедента, раскрывающие последовательность работы сервиса]
1) прецедент Администратора (Admin) "Управление защитой веб-сервиса";
2) прецедент … "";
Рис. 1. UML-диаграмма последовательности для прецедента Администратора (Admin) "Управление защитой веб-сервиса"
…
Рис. 2. UML-диаграмма последовательности для прецедента …
Исходный код PlantUML-диаграммы, представленной на рис. 1:
@startuml
actor Admin
box Service
queue Config as "Configurator"
boundary Remote as "Remote\nTools"
end box
actor User
autonumber 1.1
hide footbox
== 1. Initialization ==
activate Admin
Admin -> Config : bot_settings()
activate Config
Config -> Remote : run_service()
activate Remote
Remote -> Remote : initialize()
activate Remote
deactivate Remote
Remote --> Admin : work_report()
deactivate Admin
== 2. Maintenance ==
autonumber inc A
User -> Remote : query()
activate User
critical Secure web service (Защищенный веб-сервис)
Remote -> Remote : __accept()__
activate Remote
deactivate Remote
alt __0 (Нормальная работа сервиса)__
Remote -> User : anwser()
else __>0 (Предупреждение в работе сервиса)__
Remote --> Admin : warning_report()
activate Admin
Remote -> Remote : stop()
activate Remote
deactivate Remote
deactivate Remote
Admin -> Remote : repair()
opt 0 (Нормальная работа может быть восстановлена)
Admin -> Config : bot_activate()
Config -> Remote : restore_service()
activate Remote
Remote -> Remote : restore()
activate Remote
deactivate Remote
deactivate Remote
end
else __<0 (Ошибка в работе сервиса)__
activate Remote
Config --> Admin : error_report()
deactivate Admin
Config ->x Remote : stop_service()
deactivate User
deactivate Config
end
end
@enduml
Исходный код PlantUML-диаграммы, представленной на рис. 2:
@startuml
…
@enduml
Вывод: об планировании алгоритмов для основных прецедентов с помощью диаграммы последовательности, и об использованных блоках UML-диаграммы последовательности: 5-7 строк.