- •Разработка модели информационной системы средствами uml
- •6.050102 “Компьютерная инженерия”
- •Чернигов чгту 2011
- •3.6.4 Пример выполнения 39
- •3.7.4 Пример выполнения 42
- •3.8 Контрольные вопросы 42
- •Введение. Этапы разработки проекта
- •1 Постановка задачи (системный анализ)
- •1.1 Пример. Описание предметной области
- •2 Анализ требований
- •2.2 Диаграммы потоков данных
- •2.3 Пример выполнения анализа требований для икс видеотека
- •2.4 Контрольные вопросы
- •3 Проектирование
- •3.1 Построение диаграммы вариантов использования
- •3.1.1 Отношение расширения
- •3.1.2 Отношение обобщения
- •3.1.3 Отношение включения
- •3.1.4 Пример построения диаграммы вариантов использования
- •3.1.5 Диаграмма анализа бизнес-процессов
- •Бизнес-процесс
- •Ресурс и информация
- •Событие
- •3.2.2 Линия жизни объекта
- •3.2.3 Фокус управления
- •3.2.4 Сообщения
- •3.2.5 Пример построения диаграммы последовательности
- •3.3 Диаграмма классов
- •3.3.1 Класс
- •3.3.2 Отношения между классами
- •Отношение зависимости
- •Отношение ассоциации
- •Отношение агрегации
- •Отношение композиции
- •Отношение обобщения
- •3.3.3 Объекты
- •3.3.4 Шаблоны или параметризованные классы
- •3.3.5 Рекомендации по построению диаграмм классов
- •3.3.6 Пример выполнения
- •3.4 Диаграммы поведения
- •3.4.1 Диаграмма состояний
- •Состояние
- •Переход
- •3.4.2 Диаграмма деятельности (activity diagram)
- •3.4.3 Пример выполнения
- •3.4.4 Рекомендации по построению диаграмм поведения Диаграмма состояний
- •Диаграмма деятельности
- •3.5 Диаграммы взаимодействия
- •3.6.1 Диаграмма кооперации (collaboration diagram)
- •Кооперация
- •3.6.2 Пример выполнения
- •3.6 Представление компонентов
- •3.6.1 Компоненты
- •3.6.2 Зависимости
- •3.6.3 Рекомендации по построению диаграммы компонентов
- •3.6.4 Пример выполнения
- •3.7 Представление размещения
- •3.7.1 Узел
- •3.7.2 Соединения
- •3.7.3 Рекомендации по построению диаграммы развертывания
- •3.7.4 Пример выполнения
- •3.8 Контрольные вопросы
- •Рекомендованная литература
Кооперация
Понятие кооперации (collaboration) является одним из фундаментальных понятий в языке UML. Оно служит для обозначения множества взаимодействующих с определенной целью объектов в общем контексте моделируемой системы. Цель самой кооперации состоит в том, чтобы специфицировать особенности реализации отдельных наиболее значимых операций в системе. Кооперация определяет структуру поведения системы в терминах взаимодействия участников этой кооперации.
Кооперация может быть представлена на двух уровнях:
На уровне спецификации — показывает роли классификаторов и роли ассоциаций в рассматриваемом взаимодействии.
На уровне примеров — указывает экземпляры и связи, образующие отдельные роли в кооперации.
Диаграмма кооперации уровня спецификации показывает роли, которые играют участвующие во взаимодействии элементы. Элементами кооперации на этом уровне являются классы и ассоциации, которые обозначают отдельные роли классификаторов и ассоциации между участниками кооперации.
Диаграмма кооперации уровня примеров представляется совокупностью объектов (экземпляры классов) и связей (экземпляры ассоциаций). При этом связи дополняются стрелками сообщений. На данном уровне показываются только объекты, имеющие непосредственное отношение к реализации операции или классификатора.
3.6.2 Пример выполнения
Рисунок 3.13 – Диаграмма кооперации на уровне примеров
3.6 Представление компонентов
Все рассмотренные ранее диаграммы относились к логическому уровню представления. Особенность логического представления заключается в том, что различные элементы логического представления, такие как классы, ассоциации, состояния, сообщения, не существуют материально или физически, они лишь отражают наше понимание структуры физической системы или аспекты ее поведения.
Полный проект программной системы представляет собой совокупность моделей логического и физического представлений, которые должны быть согласованы между собой. В языке UML для физического представления моделей систем используются так называемые диаграммы реализации (implementation diagrams), которые включают в себя две отдельные канонические диаграммы: диаграмму компонентов и диаграмму развертывания.
Диаграмма компонентов описывает особенности физического представления системы. Диаграмма компонентов позволяет определить архитектуру разрабатываемой системы, установив зависимости между программными компонентами, в роли которых может выступать исходный, бинарный и исполняемый код.
Диаграмма компонентов разрабатывается для следующих целей:
Визуализации общей структуры исходного кода программной системы.
Спецификации исполнимого варианта программной системы.
Обеспечения многократного использования отдельных фрагментов программного кода.
Представления концептуальной и физической схем баз данных.
Диаграмма компонентов обеспечивает согласованный переход от логического представления к конкретной реализации проекта в форме программного кода. Одни компоненты могут существовать только на этапе компиляции программного кода, другие — на этапе его исполнения. Диаграмма компонентов отражает общие зависимости между компонентами, рассматривая последние в качестве классификаторов.
