- •Введение в процесс моделирования
- •Жизненный цикл программного обеспечения
- •Понятие технологии разработки программного обеспечения
- •Модели жизненного цикла
- •Rational Objectory Process – модель жизненного цикла
- •Объектно-ориентированный подход к разработке программного обеспечения
- •Сущность объектно-ориентированного подхода
- •Объект и класс
- •Наследование и полиморфизм
- •Унифицированный язык моделирования uml
- •Введение в язык моделирования uml
- •Строительные блоки uml
- •Сущности
- •Отношения
- •Диаграммы
- •Правила языка uml
- •Общие механизмы языка uml
- •Спецификация
- •Дополнения
- •Принятые деления
- •Механизмы расширения
- •Диаграмма вариантов использования
- •Диаграммы классов
- •Шаблоны классов
- •Диаграммы состояний
- •Диаграммы деятельности
- •Состояния действия и состояния деятельности
- •Переходы
- •Ветвление
- •Разделение и слияние
- •Дорожки. Траектория объекта
- •Диаграммы взаимодействий
- •Диаграммы последовательностей
- •Диаграммы кооперации
- •Семантическая эквивалентность
- •Диаграммы компонентов
- •Диаграммы развертывания
- •Литература
Диаграммы компонентов
Диаграммы компонентов - это один из двух видов диаграмм, применяемых при моделировании физических аспектов объектно-ориентированной системы (второй вид - диаграммы развертывания). Они показывают организацию наборов компонентов и зависимости между ними.
Диаграммы компонентов применяются для моделирования статического вида системы с точки зрения реализации. Сюда относится моделирование физических сущностей, развернутых в узле, например исполняемых программ, библиотек, таблиц, файлов и документов. По существу, диаграммы компонентов - это не что иное, как диаграммы классов, сфокусированные на системных компонентах.
Для визуализации статического аспекта физических компонентов и их отношений, а, кроме того, для специфицирования деталей конструкции в UML используются диаграммы компонентов.
Диаграмма компонентов (Component diagram) показывает набор компонентов и отношения между ними. Графически диаграмма компонентов представляется в виде графа с ребрами и вершинами (рисунок 13.1).
Диаграмма компонентов обладает общими свойствами, присущими всем диаграммам - именем и графическим содержанием, которое отражает одну из проекций модели. Отличается она от других диаграмм своим специфичным содержанием.
Диаграммы компонентов обычно включают в себя:
компоненты;
интерфейсы;
отношения зависимости, обобщения, ассоциации и реализации.
Подобно всем прочим, диаграммы компонентов могут содержать примечания и ограничения.
Диаграммы компонентов могут также содержать пакеты или подсистемы - те и другие используются для группирования элементов модели в крупные блоки. Иногда бывает полезно поместить в диаграмму компонентов еще и экземпляры, особенно если вы хотите визуализировать один экземпляр из семейства компонентных систем.
Рисунок 13.1 – Диаграмма компонентов
Во многих отношениях диаграмма компонентов представляет собой разновидность диаграммы классов, в которой внимание обращено прежде всего на системные компоненты.
Диаграммы компонентов используются для моделирования статического вида системы с точки зрения реализации. Этот вид в первую очередь связан с управлением конфигурацией частей системы, составленной из компонентов, которые можно соединять между собой различными способами.
При моделировании статического вида системы с точки зрения реализации диаграммы компонентов, как правило, используются в четырех случаях:
моделирование исходного кода. В большинстве современных объектно-ориентированных языков программирования код пишется в интегрированных средах разработки, которые сохраняют исходные тексты в файлах. Диаграммы компонентов можно применять для моделирования управления конфигурированием этих файлов, которые представляют собой компоненты - рабочие продукты;
моделирование исполняемых версий. Версия - это относительно полный и согласованный набор артефактов, предоставляемый внутреннему или внешнему пользователю. Для системы, составленной из компонентов, версия прежде всего подразумевает те части, которые необходимо поставить для получения работающей системы. При моделировании версий с помощью диаграмм компонентов вы визуализируете, специфицируете и документируете решения, принятые относительно физических составляющих системы, то есть компонентов развертывания;
моделирование физических баз данных. Представляйте себе физическую базу данных как конкретную реализацию схемы, существующую в мире битов. Схемы, по сути дела, описывают API для доступа к хранимой информации; модель же физической базы данных представляет способы хранения этой информации в таблицах реляционной базы данных или на страницах объектно-ориентированной БД. Для представления этих и иных видов физических баз данных вы можете пользоваться диаграммами компонентов;
моделирование адаптивных систем. Некоторые системы абсолютно статичны - их компоненты появляются на сцене, принимают участие в выполнении, а затем покидают сцену. Другие системы более динамичны; они включают мобильных агентов или компоненты, которые мигрируют с целью выравнивания нагрузки и восстановления после сбоев. Для представления таких систем применяются диаграммы компонентов совместно с некоторыми другими диаграммами UML.