- •Оглавление
- •Теоретические сведения
- •Способы применения uml
- •Диаграммы uml
- •Диаграмма классов (Class diagram)
- •Свойства
- •Атрибуты
- •Кратность
- •Операции
- •Отношения
- •Зависимость
- •Ассоциация
- •Двунаправленные ассоциации
- •Агрегация и композиция
- •Обобщение
- •Реализация
- •Примечания и комментарии
- •Ключевые слова
- •Статические операции и атрибуты
- •Диаграмма последовательности (Sequence diagram)
- •Создание и удаление участников
- •Циклы, условия
- •Синхронные и асинхронные вызовы
- •Практическая часть Инструментарий
- •Начало работы
- •Создание первого проекта
- •Пример создания uml-диаграмм архитектуры проекта с помощью PlantUml
- •Создание диаграммы классов
- •Создание диаграммы последовательностей
- •Сценарий нахождения чего-либо в библиотеке по имени
- •Сценарий удаления чего-либо из библиотеки по идентификатору
- •Коррекция диаграммы классов
- •Задания для самостоятельной работы
Диаграммы uml
UML 2 описывает 13 официальных типов диаграмм, перечисленных в табл. 1, классификация которых приведена на рис. 1. Хотя эти виды диаграмм отражают различные подходы многих специалистов к UML, авторы UML не считают диаграммы центральной составляющей языка. Поэтому диаграммы определены не очень строго. Часто вполне допустимо присутствие элементов диаграммы одного типа в другой диаграмме. Стандарт UML указывает, что определенные элементы обычно рисуются в диаграммах соответствующего типа, но это не догма.
В данной лабораторной работе будут подробно рассмотрены диаграммы классовидиаграммы последовательности. Дополнительную информацию по этим и остальным типам диаграмм можно найти в списке литературы в конце описания лабораторной работы.
Таблица 1. Официальные типы диаграмм UML
Диаграмма |
Цель диаграммы |
Деятельности |
Процедурное и параллельное поведение |
Классов |
Классы, свойства и отношения |
Взаимодействия |
Взаимодействие между объектами; акцент на связях |
Компонентов |
Структура и взаимосвязи между компонентами |
Составных структур |
Декомпозиция класса во время выполнения |
Развертывания |
Развертывание артефактов в узлы |
Обзора взаимодействий |
Комбинация диаграммы последовательности и диаграммы деятельности |
Объектов |
Вариант конфигурации экземпляров |
Пакетов |
Иерархическая структура времени компиляции |
Последовательности |
Взаимодействие между объектами; акцент на последовательности |
Конечных автоматов |
Как события изменяют объект в течение его жизни |
Временная |
Взаимодействие между объектами; акцент на синхронизации |
Прецедентов |
Как пользователи взаимодействуют с системой |
Рис. 1. Классификация типов диаграмм UML
Диаграмма классов (Class diagram)
Диаграмма классов описывает типы объектов системы и различного рода статические отношения, которые существуют между ними. На диаграммах классов отображаются также свойства классов, операции классов и ограничения, которые накладываются на связи между объектами.
Описание классаможет включать множество различных элементов, и чтобы они не путались, в языке предусмотрено группирование элементов описания класса по секциям. Стандартных секций три:
секция имени— наряду с обязательным именем может содержать также стереотип, кратность и список именованных значений;
секция свойств— содержит список описаний свойств класса;
секция операций— содержит список описаний операций класса.
Как и все основные сущности UML, класс обязательно имеет имя, а стало быть, секция имени не может быть опущена. Прочие секции могут быть пустыми или отсутствовать вовсе.
Класс изображается прямоугольником. Если секций более одной, то внутренность прямоугольника делится горизонтальными линиями на части, соответствующие секциям.
На рис. 2 изображена упрощенная диаграмма классов системы, занимающейся обработкой заказов клиентов. Прямоугольники на диаграмме представляют классы и разделены на три части: имя класса (жирный шрифт), его атрибуты и его операции. На рис. 2 также показаны два вида связей между классами: ассоциации и обобщения.