Скачиваний:
83
Добавлен:
20.12.2021
Размер:
1 Мб
Скачать
☆

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М. А. Бонч-Бруевича»

(СПбГУТ)

Факультет инфокоммуникационных сетей и систем Кафедра программной инженерии и вычислительной техники

ЛАБОРАТОРНАЯ РАБОТА №3

по дисциплине «Проектирование и архитектура программных систем»

UML

студент гр. ИКПИ-84

__________________

Коваленко Л. А.

преподаватель каф. ПИиВТ

__________________

д.т.н., проф. Фомин В. В.

Санкт-Петербург

2021

ПОСТАНОВКА ЗАДАЧИ

Прикладное решение «АИС-КТ» предназначено для сбора и хранения информации, а также формирования отчетов о наличии, движении, ремонте и модернизации офисного компьютерного оборудования и его комплектующих.

«АИС-КТ» служит для ведения учета офисного компьютерного оборудования и его комплектующих, в том числе для оформления фактов поступления оборудования, регистрации поступления комплектующих,

оформления передачи оборудования в эксплуатацию, проведения ремонтных работ и формирования соответствующих отчетов.

«АИС-КТ» предназначена для сотрудников материально-технического отдела небольшой организации, которые будут её эксплуатировать на персональных компьютерах.

ОПИСАНИЕ ИСПОЛЬЗУЕМОГО ПАКЕТА

Для построения UML диаграмм использовался программный продукт

Draw.io — сервис для создания схем и диаграмм. С помощью него можно создавать любые схематические изображения — от схем электрических цепей до структур бизнес-моделей. В числе возможностей — построение диаграмм,

графиков и UML-моделей. В библиотеке форм присутствует несколько десятков фигур, сгруппированных по категориям. Объекты можно форматировать, меняя шрифты, цвет, градиент, толщину линий, уровень прозрачности. Готовые изображения можно сохранять на жёстком диске ПК или вставлять в вики-сайты и блоги.

2

ДИАГРАММЫ UML

Unified Modeling Language (унифицированный язык моделирования).

Язык графического описания для объектного моделирования в области разработки программного обеспечения, для моделирования бизнес-процессов,

системного проектирования и отображения организационных структур.

Задача UML — служить средством коммуникации внутри команды и при общении с заказчиком.

Возможные варианты использования диаграмм:

Проектирование. UML-диаграммы могут помочь при моделировании архитектуры больших проектов, в которой можно собрать как крупные,

так и более мелкие детали и нарисовать каркас (схему) приложения. По нему впоследствии разработчики будут писать код.

Реверс-инжиниринг. Создание UML-модели из существующего кода приложения (обратное построение). Может применяться, например, на проектах поддержки, где есть написанный код, но документация неполная или отсутствует.

Документирование. Текст и графика дополняют друг друга.

Диаграммы UML делятся на две группы: структурные диаграммы

идиаграммы поведения. Такая классификация соответствует концепции сложности. Сложность системы зависит как от организации элементов системы (т.е. структуры), так и от способа их взаимодействия друг с другом

(т.е. поведения).

3

1. Структурные диаграммы Структурные диаграммы используются для демонстрации

статической структуры элементов в системе. Они могут изображать архитектурную организацию системы, ее физические элементы, текущую конфигурацию, а также специфические элементы предметной области.

1.1. Диаграмма пакетов

Диаграмма пакетов (Package diagram) — диаграмма, отображающая зависимости между пакетами. Используется для иллюстрации многоуровневой архитектуры.

Диаграмма пакетов системы «АИС-КТ» приведена на рис. 1.

Рисунок 1. Диаграмма пакетов «АИС-КТ»

4

1.2. Диаграмма классов

Диаграмма классов (Class diagram) — структурная диаграмма,

демонстрирующая общую структуру иерархии классов системы, их коопераций, атрибутов (полей), методов, интерфейсов и взаимосвязей между ними. Целью создания диаграммы классов является графическое представление статической структуры декларативных элементов системы

(классов, типов и т. п.). Для удобства восприятия диаграмму классов можно также дополнить представлением пакетов, включая вложенные.

Видимость членов класса:

+ — публичный (Public);

− — приватный (Private);

# — защищённый, для наследников (Protected);

~ — в пределах пакета (Package).

Типы взаимосвязей представлены на рис. 2.

Рисунок 2. Типы взаимосвязей на диаграмме классов

Ассоциация (Association) представляет собой статическое отношение, разделяемое между объектами двух классов. Например,

класс «Человек» − ассоциация «учится в» → класс «Школа».

Ассоциация может быть именованной, и на концах представляющей её линии могут быть подписаны роли, принадлежности и др.

Двойные ассоциации представляются линией без стрелок на концах,

соединяющей два классовых блока. Например, класс полета связан с классом самолета двунаправленно.

5

Обобщение (Generalization) или Наследование (Inheritance)

показывает, что один из двух связанных классов (от которого идет стрелка) является частной формой другого (к которому идет стрелка).

Например: приматы → млекопитающие → животные.

Реализация (Realization) или Имплементация (Implementation) —

отношение между двумя элементами, в котором один элемент (от которого идет стрелка) реализует поведение, заданное другим (к

которому идет стрелка). Элемент, задающий поведение, как правило,

является абстрактным классом или классом-интерфейсом.

Например: поиск Бойера — Мура → поиск подстроки в строке.

Зависимость (Dependency) — это слабая форма отношения использования, при которой изменение в спецификации одного влечёт за собой изменение другого, причём обратное не обязательно.

Возникает, когда объект выступает, например, в форме аргумента метода или локальной переменной в методе.

Например: автозавод → («зависит от») электричество (автозавод не может работать без электричества).

Агрегация (Aggregation) — разновидность ассоциации при отношении между целым и его частями. Агрегация встречается, когда один класс является коллекцией или контейнером других. Если контейнер будет уничтожен, то его содержимое — нет.

Например: профессора → факультеты (профессора остаются жить после разрушения факультета).

Композиция (Composition) — более строгий вариант агрегации.

Известна также как агрегация по значению. Если контейнер будет уничтожен, то всё его содержимое будет также уничтожено.

Например: факультеты → университет (факультеты уничтожаются после разрушения университета).

6

Мощность отношения означает число связей между каждым экземпляром класса (объектом) в начале линии с экземпляром класса в её конце. Различают следующие случаи:

0..1 — ноль или один экземпляр;

1 — обязательно один экземпляр;

0..* или * — ноль или более экземпляров;

1..* — один или более экземпляров.

В 1С принято различать процедуры и функции, а также стороны выполнения процедур/функций — клиент или сервер. Таким образом, «КП» означает «на клиенте, процедура», «СП» — «на сервере, процедура», «КФ» означает «на клиенте, функция», «СФ» — «на сервере, функция».

В случае регистров сведений: «И» означает измерение (часть составного первичного ключа), «Р» означает ресурс.

7

Диаграмма классов пакета «Служебное» приведена на рис. 3.

Рисунок 3. Диаграмма классов пакета «Служебное»

8

Диаграмма классов пакета «Администрирование» приведена на рис. 4.

Рисунок 4. Диаграмма классов пакета «Администрирование»

9

1.3. Диаграмма развертывания

Диаграмма развёртывания (Deployment diagram) моделирует физическое развертывание артефактов на узлах. Узлы (программные или аппаратные физические сущности) представляются как прямоугольные параллелепипеды с артефактами (конкретные элементы: библиотеки,

исполняемые файлы и т.п.), расположенными в них, изображёнными в виде прямоугольников. Узлы могут иметь подузлы. Один узел диаграммы развертывания может концептуально представлять множество физических узлов, таких как кластер серверов баз данных.

Существует два типа узлов:

Узел устройства;

Узел среды выполнения.

Узлы устройств (Device) — это физические вычислительные ресурсы со своей памятью и сервисами для выполнения программного обеспечения,

такие как обычные ПК, мобильные телефоны.

Узел среды выполнения (Execution Environment) — это программный вычислительный ресурс, который работает внутри внешнего узла и который представляет собой сервис, выполняющий другие исполняемые программные элементы.

Диаграмма развертывания «АИС-КТ» приведена на рис. 5.

Рисунок 5. Диаграмма развертывания «АИС-КТ»

10