- •Разработка модели информационной системы средствами uml
- •6.050102 “Компьютерная инженерия”
- •Чернигов чгту 2011
- •3.6.4 Пример выполнения 39
- •3.7.4 Пример выполнения 42
- •3.8 Контрольные вопросы 42
- •Введение. Этапы разработки проекта
- •2 Анализ требований
- •1 Постановка задачи (системный анализ)
- •1.1 Пример. Описание предметной области
- •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 Контрольные вопросы
- •Рекомендованная литература
3.6.1 Компоненты
Для представления физических сущностей в языке UML применяется специальный термин — компонент (component). Компонент реализует некоторый набор интерфейсов и служит для общего обозначения элементов физического представления модели.
В метамодели языка UML компонент является потомком классификатора. Он предоставляет организацию в рамках физического пакета ассоциированным с ним элементам модели. Как классификатор, компонент может иметь также свои собственные свойства, такие как атрибуты и операции.
3.6.2 Зависимости
Зависимость не является ассоциацией, а служит для представления только факта наличия такой связи, когда изменение одного элемента модели оказывает влияние или приводит к изменению другого элемента модели. Отношение зависимости на диаграмме компонентов изображается пунктирной линией со стрелкой, направленной от клиента (зависимого элемента) к источнику (независимому элементу).
Зависимости могут отражать связи модулей программы на этапе компиляции и генерации объектного кода. Применительно к диаграмме компонентов зависимости могут связывать компоненты и импортируемые этим компонентом интерфейсы, а также различные виды компонентов между собой.
Также на диаграмме могут быть представлены отношения зависимости между компонентами и реализованными в них классами. Эта информация имеет важное значение для обеспечения согласования логического и физического представлений модели системы.
3.6.3 Рекомендации по построению диаграммы компонентов
Разработка диаграммы компонентов предполагает использование информации как о логическом представлении модели системы, так и об особенностях ее физической реализации. До начала разработки необходимо определиться с выбором языковой платформы и операционной системы.
После этого можно приступать к общей структуризации диаграммы компонентов. В первую очередь, необходимо решить, из каких физических частей (файлов) будет состоять программная система. На этом этапе следует обратить внимание на такую реализацию системы, которая обеспечивала бы не только возможность повторного использования кода за счет рациональной декомпозиции компонентов, но и создание объектов только при их необходимости.
После общей структуризации физического представления системы необходимо дополнить модель интерфейсами и схемами базы данных. При разработке интерфейсов следует обращать внимание на согласование различных частей программной системы. Включение в модель схемы базы данных предполагает спецификацию отдельных таблиц и установление информационных связей между таблицами.
3.6.4 Пример выполнения
Рисунок 3.14 – Диаграмма Компонентов системы
3.7 Представление размещения
Физическое представление программной системы не может быть полным, если отсутствует информация о том, на какой платформе и на каких вычислительных средствах она реализована. Этому есть несколько причин:
сложные программные системы могут реализовываться в сетевом варианте на различных вычислительных платформах и технологиях доступа к распределенным базам данных;
интеграция программной системы с Интернетом определяет необходимость решения дополнительных вопросов при проектировании системы, таких как обеспечение безопасности, устойчивости доступа к информации и т.д.
технологии доступа и обработки данных в схеме "клиент-сервер" требует размещения больших баз данных в различных сегментах корпоративной сети, их резервного копирования для обеспечения необходимой производительности системы в целом.
Диаграмма развертывания (синоним — диаграмма размещения) применяется для представления общей конфигурации и топологии распределенной программной системы и содержит распределение компонентов по отдельным узлам системы. Кроме того, диаграмма развертывания показывает наличие физических соединений — маршрутов передачи информации между аппаратными устройствами, задействованными в реализации системы.
Диаграмма развертывания предназначена для визуализации элементов и компонентов программы, существующих лишь на этапе ее исполнения (runtime). При этом представляются только компоненты-экземпляры программы, являющиеся исполнимыми файлами или динамическими библиотеками.
Итак, перечислим цели, преследуемые при разработке диаграммы развертывания:
Определить распределение компонентов системы по ее физическим узлам.
Показать физические связи между всеми узлами реализации системы на этапе ее исполнения.
Выявить узкие места системы и реконфигурировать ее топологию для достижения требуемой производительности.
