Work with UML

33
WORK WITH UML Универсальный язык моделирования (UML) Studybook for students Author Dudnik Oxana

Transcript of Work with UML

Page 1: Work with UML

WORK WITH UMLУниверсальный язык моделирования (UML)

Studybook for students

Author Dudnik Oxana

Page 2: Work with UML

Язык UML - это графический язык моделирования общего назначения,

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

при разработке программных систем.

Page 3: Work with UML

UML: Строительные блоки

Существует три вида строительных блоков UML:

•Сущности (Elements)

•Отношения (Relationships)

•Диаграммы (Diagrams)

Page 4: Work with UML

Сущности (Elements) - это абстракции; отношения объединяют эти абстракции

друг с другом; а диаграммы группируют совокупность

связанных сущностей посредством отношений.

Page 5: Work with UML

UML: СущностиВыделяют всего четыре типа сущностей

(Elements):1.Структурные

2.Поведенческие3.Группирующие4.Аннотационные

Page 6: Work with UML

СтруктурныеЭти сущности подобны существительным в языке.

1.Класс-Совокупность объектов с общими атрибутами, операциями,

отношениями и семантикой. Графически класс обозначается в виде прямоугольника с тремя полями: имя класса,

атрибуты (свойства) класса и операции (методы) класса.

Page 7: Work with UML

2. ИнтерфейсСовокупность операций, которые определяют сервис

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

Над именем интерфейса дополнительно указывается слово "интерфейс" ("interface").

Page 8: Work with UML

3.Кооперация (Collaboration)

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

совместно для обеспечения кооперативного поведения, большего, чем сумма всех элементов. Графически

кооперация обозначается в виде пунктирного эллипса.

Page 9: Work with UML

4.Прецедент (Use case)

Описание последовательности действий, выполняемых системой для получения наблюдаемого результата,

значимого для актера. Графически прецедент обозначается в виде эллипса, внутри которого указано имя прецедента.

Page 10: Work with UML

5.Активный класс

Класс, представители которого являются активными объектами и вовлечены в один или несколько процессов или потоков и могут инициировать деятельность по контролю.

Page 11: Work with UML

6.Компонент

Физическая заменяемая часть системы, которая соответствует и обеспечивает реализацию набора

интерфейсов.

Page 12: Work with UML

7.Узел (Node)

Физический элемент, который существует во время выполнения программы и представляет собой

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

Page 13: Work with UML

ПоведенческиеОпределяют динамическую составляющую элементов UML.

1.Автомат

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

события.

2.Взаимодействие

Состоит из набора сообщений, которыми обмениваются объекты в рамках конкретного контекста для достижения определенной

цели.

Page 14: Work with UML

Группирующие 1.Пакет

Универсальный механизм организации элементов в группы.

Page 15: Work with UML

Аннотационные 1. Примечание

Просто символ для обозначения комментариев, закрепленных за другими элементами или совокупностями элементов.

Page 16: Work with UML

UML: Отношения

Зависимость Ассоциация

Агрегирование

Композиция

Обобщение

Реализация

Page 17: Work with UML

1.Зависимость

Зависимость - это семантическое отношение между двумя сущностями, при котором изменение в одной сущности может оказать влияние на семантику другой сущности.

Стрелка показывает направление зависимости. На диаграмме MyClass1 находится в зависимости от MyClass2.

Изменения в MyClass2 оказывают влияние на MyClass1.

Page 18: Work with UML

2.АссоциацияАссоциация - структурное отношение, описывающее

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

объектов должно соответствовать каждому объекту на противоположном конце ассоциации.

1 Один и только один

0..* или * Ноль, один, или много

1..* Один или много

a..b Между a и ba,ba или b

Ассоциация может быть направленной или ненаправленной . Ненаправленная ассоциация означает, что не было принято решение относительно направленности или

двунаправленности ассоциации. На рисунке отображена ненаправленная ассоциация.

Page 19: Work with UML
Page 20: Work with UML

Различают два типа ассоциаций:

АгрегированиеАгрегирование отражает отношение между целым и частью.

Агрегирование обозначается на одном конце ассоциации, в то время как второй конец остается немаркированным. На рисунке,

Myclass2 является частью Myclass1.

Page 21: Work with UML

Композиция

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

обладает дополнительным ограничением - объект может быть частью только одного композита, а композит, в свою очередь, отвечает за время жизни всех своих составных

частей - а именно, за их создание и уничтожение. На рисунке, MyClass1 не может существовать без MyClass2.

Page 22: Work with UML

3.Обобщение

Обобщение - это отношение типа "родитель-потомок". MyClass2 - суперкласс (родитель), а MyClass1 - подкласс (потомок). На языке программирования Java, обобщение

реализуется посредством дочерних объектов с использованием зарезервированного слова extends.

Page 23: Work with UML

4.Реализация

Реализация - это отношение между интерфейсом и реализованным классом. В языке Java реализация выполняется реализацией интерфейса с использованием зарезервированного

слова implements.

Page 24: Work with UML

UML: ДиаграммыВ данной работе обсуждаются следующие UML диаграммы:

1. Диаграмма прецедентов

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

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

4. Диаграмма взаимодействий

5. Диаграмма состояний

6. Диаграмма деятельности

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

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

Page 25: Work with UML

1. Диаграмма прецедентов

Page 26: Work with UML

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

Page 27: Work with UML

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

Page 28: Work with UML

4.Диаграмма взаимодействий

Page 29: Work with UML

5.Диаграмма состояний

Page 30: Work with UML

6.Диаграмма деятельности

Page 31: Work with UML

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

Page 32: Work with UML

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

Page 33: Work with UML

УСПЕХОВ!!!!!!