- •Государственное образовательное учреждение высшего профессионального образования
- •Лабораторная работа № 1 Построение модели вариантов использования
- •Заказчик
- •Упражнение 1 . Создание диаграммы вариантов использования
- •Этапы выполнения упражнения
- •Создать действующие лица (актанты), варианты использования и определить отношения между ними.
- •Добавить ассоциации
- •Добавить расширения
- •Добавить включения
- •Указать абстрактные варианты использования
- •Вид диаграммы вариантов использования Main показан на рисунке 1. Добавить описания к действующим лицам (актантам)
- •Бухгалтер: "Вводит и редактирует данные об оплате счетов или о возврате оплаты при аннулировании клиентом просроченного заказа";
- •Добавить описания к вариантам использования
- •Создать файлы сценариев и прикрепить их к вариантам использования
- •Лабораторная работа № 2 Построение модели анализа
- •Поставщик
- •Окно программы
- •Заголовок
- •Подклассы
- •Геометрическая фигура
- •Подклассы
- •Упражнение 2. Создание структуры модели анализа, пакетов реализаций, диаграмм трассировок и классов реализаций
- •Этапы выполнения упражнения
- •Создать кооперации и осуществить трассировку реализаций
- •Создать диаграммы классов анализа для реализации вариантов использования
- •Упражнение 3 . Создание диаграмм взаимодействия
- •Создание диаграмм Взаимодействия
- •Этапы выполнения упражнения
- •Добавление на диаграмму дополнительных объектов
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами
- •Соотнесение сообщений с операциями
- •Создание Кооперативной диаграммы
- •Добавление действующего лица и объектов на диаграмму
- •Добавление сообщений на диаграмму
- •Добавление на диаграмму дополнительных объектов
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами (если при разработке описанной выше диаграммы Последовательности сами классы вы уже создали)
- •Соотнесение объектов с классами (если вы не создавали описанную выше диаграмму Последовательности)
- •Соотнесение сообщений с операциями (если при разработке описанной выше диаграммы Последовательности сами операции вы уже создали)
- •Соотнесение сообщений с операциями (если вы не создавали описанную выше диаграмму Последовательности)
- •Упражнение 3 . Создание диаграмм классов
- •Создание диаграммы Классов
- •Этапы выполнения упражнения Настройка
- •Создание пакетов
- •Создание Главной диаграммы Классов
- •Создание диаграммы Классов для сценария "Ввести новый заказ" со всеми классами.
- •Добавление стереотипов к классам
- •Объединение классов в пакеты
- •Добавление диаграмм Классов к каждому пакету
- •Упражнение 4 . Создание диаграмм классов (учет новых требований)
- •Добавление атрибутов и операций
- •Этапы выполнения упражнения Настройка
- •Добавление нового класса
- •Добавление атрибутов
- •Добавление операций к классу OrderItem
- •Подробное описание операций с помощью диаграммы Классов
- •Подробное описание операций с помощью броузера
- •Подробное описание операций с помощью любого из описанных методов
- •Упражнение 5 . Создание диаграмм классов (добавление связей между классами)
- •Добавление связей
- •Этапы выполнения упражнения Настройка
- •Добавление ассоциаций
- •Упражнение 6 . Создание диаграммы состояний
- •Подробное описание состояний
- •Добавление переходов
- •Подробное описание переходов
- •Упражнение 7 . Создание диаграммы компонентов
- •Этапы выполнения упражнения
- •Создание диаграммы Компонентов системы
- •Размещение компонентов на диаграмме Компонентов системы
- •Добавление оставшихся зависимостей на диаграмму Компонентов системы
- •Соотнесение классов с компонентами
- •Упражнение 8 . Создание диаграммы размещения
- •Создание диаграммы Размещения
- •Этапы выполнения упражнения Добавление узлов к диаграмме Размещения
- •Добавление связей
- •Добавление процессов
- •Показ процессов на диаграмме
- •Этапы выполнения упражнения Ввод тел пакетов на диаграмму Компонентов системы
- •1 . Основы методологии объектно-ориентированного
- •1.1 Методология объектно-ориентированного программирования
- •1.4. Этапы создания аис с использованием uml. Унифицированный процесс разработки программного обеспечения
- •Компоненты языка uml
- •Концептуальный уровень. Модель вариантов использования
- •Заказчик
- •Множество ассоциаций - агрегация
- •Бинарная ассоциация
- •Ас «Продажа товаров по каталогу»
- •Ас тепличного хозяйства
- •Класс в
- •Сотрудник
- •Работает в
- •Лекция №9
- •Лекция № 10 отношение реализации (Realization relationship)
- •Объекты (objects)
- •Шаблоны (параметризованные классы)
- •Рекомендации по построению диаграмм классов
- •Фрагмент диаграммы классов для Асу тепличного хозяйства
- •1.8. Диаграмма состояний
- •Обязательные условия для конечного автомата:
- •Лекция №12
- •Анализ предметной области и разработка концепции построения системы
- •Заказчики
И
Класс А
Источник 2
Источник 1Класс в
Клиент
Класс C
Отношение зависимости является наиболее общим в языке UML. Все остальные могут считаться частным случаем этого отношения.
Ассоциация (association) – описывает связи между экземплярами классов (объектами). Для понимания семантики этой связи нужно оперировать с частными примерами классов (в отличие от зависимости, которые относятся к классу в целом). Кроме того, в ассоциации проставляется множественность участия экземпляров в связи и обязательность. Обозначается непрерывной сплошной линией
Наиболее проста бинарная ассоциация, в которой участвуют в точности два класса или, как исключение, один класс, связанный сам с собой. В бинарной ассоциации может быть указано направление связи – зачернённым треугольником.
Экземпляром этого отношения является, например, пара Иванов – ООО «Ракурс».
В N–арной ассоциацииучаствуют три и более класса, при этом один класс может участвовать в ассоциации более, чем один раз. Каждый экземпляр такой ассоциации - N-мерный кортеж из объектов соответствующих классов.
Графически N-арная ассоциация обозначается ромбом. Пример:тернарная ассоциация из классов: футбольная команда, год, игра ( ).
При этом нас интересуют игры в футбольном чемпионате за несколько последних лет. Каждый класс в ассоциации может играть свою роль, которая может быть проставлена у полюса(конца) ассоциации в виде строки текста. Например: год игры, год проведения чемпионатов мира и т.д., т.е. класс может играть разные роли в разных отношениях.
Важной характеристикой ассоциации является множественность ассоциации. Обозначения множественности такие же, как у атрибутов класса (см. раздел ). Символ “*” обозначает “0. .*”, т.е. необязательность связи. Ассоциация представляет собой ссылки на соответствующие объекты. В процессе работы системы связи могут появляться и исчезать, соответственно списки корректируются у одного или обоих полюсов.
В более сложном случае ассоциация может быть классом (класс – ассоциация,associationclass), в нём присутствуют и свойства класса, и свойства ассоциации. Экземплярами класса являются связи, в которых имеются не только ссылки на объекты, но и конкретные значения атрибутов. Классы – ассоциации могут иметь операции, изменяющие атрибуты связи, могут участвовать в различных ассоциациях, но между собой ассоциаций иметь не могут.
Пример обозначения класса-ассоциации Работает впредставлен на рисунке .
* 1..*
ФирмаСотрудник
окладРаботает в
З
Обладатель
работы
Роль
фирмы
Роль
сотрудника
предоставляет
имеет
1 * * 1
Является
источником
работы
Частным случаем ассоциации является исключающая ассоциация(xor association). Она представляет собой две или более ассоциаций, которые одним полюсом крепятся к единому (базовому) классу.
Показывает, что из нескольких вариантов ассоциация в каждый момент времени может использоваться только одна: счёт в банке может быть открыт для физического лица или организации (юридического лица).
Важным частным случаем ассоциации является агрегация.
Агрегация (Aggregation)– один из классов (агрегат) состоит из (включает в себя, характеризуется) других классов. (отношение часть/ целое (Part of)). Это отношение является фундаментальным при моделировании сложной системы, позволяет декомпозировать систему на составные части. В агрегации принцип наследованияне 7соблюдается. Каждая часть обладает своими атрибутами и поведением. Агрегация в UML обозначается ромбом или