Work with UML

Post on 12-Aug-2015

41 views 1 download

Transcript of Work with UML

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

Studybook for students

Author Dudnik Oxana

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

6.Компонент

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

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

7.Узел (Node)

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

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

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

1.Автомат

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

события.

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

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

цели.

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

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

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

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

UML: Отношения

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

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

Композиция

Обобщение

Реализация

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Композиция

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

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

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

3.Обобщение

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

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

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

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

слова implements.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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