Скачиваний:
151
Добавлен:
08.07.2017
Размер:
4.08 Mб
Скачать

­Агрегирование(argeration)

Частный случай ассоциации, представляющий отношение часть­целое. Описывается сплошной линией с терминатором в виде не закрашенного ромбика на стороне «целое»

­Композиция

Частный случай агрегирования, в котором время жизни «части» и «целого» совпадают. Кроме того, агрегируемые объекты не разделяемы, т.е. ими может владеть только один агрегат. Терминатор в виде закрашенного ромбика

Все виды ассоциации допускают описание роли в следующей форме:

1.имя роли

2.множественность (multiplicity): 1..10

0..* ­ от нуля до произвольного количества

3.упорядоченность: используется ограничение {ordered}

4.изменяемость: ограничение {frozen} – связь изменить нельзя

5.видимость: +, ­, # ­ public, private, protected

6.спецификация интерфейса

7.квалификация параметра для доступа

Впримере для доступа к строке заказа требуется указание наименование продукта. И для каждого продукта есть только одна строка заказа. Т.е. намек на ассоциативный массив, когда индексом является нечисловое выражение.

Разработчиков часто ставит в тупик кратность квалифицированных ассоциаций. На рис. 5.10 заказ может иметь несколько позиций заказа (Line Items), но кратность квалифицированной ассоциации – это крат ность в контексте квалификатора. Поэтому диаграмма говорит, что

в заказе имеется 0..1 позиций заказа на продукт. Кратность, равная 1, означает, что в заказе должна быть одна позиция заказа для каждого продукта. Кратность * означает, что для любого продукта может суще ствовать несколько позиций заказа, но доступ к позициям заказа ин дексируется по продукту.

4. Реализация(Realisation)

Это семантическая связь между элементами модели, когда один описывает обязательства, а другой их реализует. Изображается пунктиром с терминатором в виде незакрашенного треугольника.

Варианты использования этого отношения:

­класс­интерфейс

­прецедент использования «сотрудничество»

­классы реализации реализуют тип

http://edu.dvgups.ru/METDOC/GDTRAN/YAT/ITIS/PROEK_INF_SIS/METOD/UMK_DO/frame/U MK_DO/M6/L11.htm#11_3­ шпаргалка по нотациям UML (почти то же самое, только кратко и в табличках)

Механизмы расширения UML

Механизмы расширения позволяют лучше адаптировать проект к особенностям разрабатываемого программного продукта.

стереотипы (stereotype)

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

Это ключевое слово в согласованных кавычках. Есть стандартный набор стереотипов, которые можно увидеть в стандарте. Можно вводить и свои стереотипы, описывая семантику того, для чего они введены в проекте нашем. Есть графические стереотипы.

ограничения (constrain)

Семантическая связь между элементами модели, определяющая условия или утверждения, которые должны быть выполнены, иначе система описываемой модели будет недопустимой с последствиями вне зоны действия UML.

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

комментарии

Это синтаксический аналог текстового ограничения на естественном языке, который не анализируется и не выполняется системой.

Рисуется так: «письмо» и присоединяется пунктирной линией.

теговые значения

это свойство элементов модели, определяемое пользователем.

Записываются в фигурных скобках в двух формах:

­ключевое слово

­ключевое слово = значение

В первом случае предполагается, что ключевое слово истинно. Аналогично для второго случая. Ключевое слово {abstract}, например, применяется, чтобы показать, что класс абстрактный. Пример:

11. Основные диаграммы UML

полезный сайт http://book.uml3.ru/content)

Диаграммы UML делятся на две группы — ​статические​и ​динамические диаграммы​.

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

Динамические диаграммыописывают происходящие в системе процессы. К ним относятся диаграммы деятельности, сценариев, диаграммы взаимодействия и диаграммы состояний.

Диаграмма использования (сценариев)(use case diagram) это наиболее общее представление функционального назначения системы.

Диаграмма использования призвана ответить на главный вопрос моделирования: что делает система во внешнем мире?

На диаграмме использования применяются два типа основных сущностей: варианты использования 1 и действующие лица 2, между которыми устанавливаются следующие основные типы отношений:

ассоциация между действующим лицом и вариантом использования 3;

обобщение между действующими лицами 4;

обобщение между вариантами использования 5;

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

комментарии 7. Более того, это настоятельно рекомендуется делать для улучшения читаемости диаграмм.

Основные элементы нотации, применяемые на диаграмме использования, показаны ниже.

Диаграмма классов(class diagram) основной способ описания структуры системы. Это не удивительно, поскольку UML в первую очередь объектно­ориентированный язык, и классы являются основным (если не единственным) "строительным материалом".

На диаграмме классов применяется один основной тип сущностей: классы 1 (включая многочисленные частные случаи классов: интерфейсы, примитивные типы, классы­ассоциации и многие другие), между которыми устанавливаются следующие основные типы отношений:

ассоциация между классами 2 (с множеством дополнительных подробностей);

обобщение между классами 3;

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

Некоторые элементы нотации, применяемые на диаграмме классов, показаны ниже.

Диаграмма деятельности(activity diagram) способ описания поведения на основе указания потоков управления и потоков данных.

Диаграмма деятельности еще один способ описания поведения, который визуально напоминает старую добрую блок­схему алгоритма. Однако за счет модернизированных обозначений, согласованных с объектно­ориентированным подходом, а главное, за счет новой семантической составляющей (свободная интерпретация сетей Петри), диаграмма деятельности UML является мощным средством для описания поведения системы.

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

Диаграмма компонентов (component diagram) показывает взаимосвязи между модулями (логическими или физическими), из которых состоит моделируемая система. Основной тип сущностей на диаграмме компонентов это сами компоненты 1, а также интерфейсы 2, посредством которых указывается взаимосвязь между компонентами. На диаграмме компонентов применяются следующие отношения:

реализации между компонентами и интерфейсами (компонент реализует интерфейс);

зависимости между компонентами и интерфейсами (компонент использует

интерфейс) 3.

На рисунке показаны основные элементы нотации, применяемые на диаграмме компонентов.

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

Таким образом, на диаграмме размещения, по сравнению с диаграммой компонентов, добавляется два типа сущностей: артефакт 1, который является реализацией компонента 2 и узел 3 (может быть как классификатор, описывающий тип узла, так и конкретный экземпляр), а также отношение ассоциации между узлами 4, показывающее, что узлы физически связаны во время выполнения.

На рисунке показаны основные элементы нотации, применяемые на диаграмме размещения. Для того чтобы показать, что одна сущность является частью другой, применяется либо отношение зависимости «deploy» 5, либо фигура одной сущности помещается внутрь фигуры другой сущности 6.

Диаграмма объектов(object diagram) является экземпляром диаграммы классов На диаграмме объектов применяют один основной тип сущностей: объекты 1 (экземпляры классов), между которыми указываются конкретные связи 2 (чаще всего экземпляры ассоциаций).

Диаграммы объектов имеют вспомогательный характер по сути это примеры

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

Основные элементы нотации, применяемые на диаграмме объектов, показаны ниже.

Обзорная диаграмма взаимодействия (interaction overview diagram) является разновидностью диаграммы деятельности с расширенным синтаксисом: в качестве элементов обзорной диаграммы взаимодействия могут выступать ссылки на взаимодействия(interaction use) 1, определяемые диаграммами последовательности.

Основные элементы нотации показаны ниже.

Диаграмма автомата(состояний)(state machine diagram) это один из способов детального описания поведения в UML на основе явного выделения состояний и описания переходов между состояниями.

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

На диаграмме автомата применяют один основной тип сущностей состояния 1, и один тип отношений переходы 2, но и для тех и для других определено множество разновидностей, специальных случаев и дополнительных обозначений. Перечислять их все во вступительном обзоре не имеет смысла.

На следующем рисунке показаны только основные элементы нотации, применяемые на диаграмме автомата.

Диаграмма последовательности