Рекомендация: Импорт зависимостей при реализации
Установление зависимостей между подсистемами - важный аспект формирования структуры модели реализации. В данной рекомендации приведены замечания по работе с зависимостями.
Взаимосвязи
Связанные элементы
Основное описание

Объяснение

Установление зависимостей между подсистемами - важный аспект формирования структуры модели реализации. Элемент подсистемы-клиента можно скомпилировать в элементы подсистемы-поставщика только если подсистема-клиент импортирует систему-поставщик. Для установления таких зависимостей используйте импорт зависимостей от одной системы к другой, с направлением в сторону подсистемы, от которой установлена зависимость.

Пример:

Следующая диаграмма компонентов иллюстрирует импорт зависимостей между подсистемами реализации.

Диаграмма, описанная в тексте.

Для подсистемы Банковские услуги по телефону установлен импорт зависимости к подсистеме Коммерческие услуги, благодаря чему элементы Банковских услуг по телефону можно компилировать в общие (видимые) элементы Коммерческих услуг.

Использование

Архитектурный контроль

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

Подсистемы можно распределить по уровням

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

  • Верхний уровень - уровень приложения - содержит службы приложения.
  • Следующий, бизнес-уровень, содержит бизнес-компоненты, используемые в нескольких приложениях.
  • Связующий уровень содержит различные компоненты, например, компоновщики интерфейсов GUI, интерфейсы для СУБД, независимые от платформы службы операционной системы и компоненты OLE (электронные таблицы и редакторы диаграмм).
  • Нижний уровень, уровень программного обеспечения системы, содержит следующие компоненты: операционная система, интерфейсы для отдельных видов аппаратного обеспечения и т.п.

Диаграмма, описанная в тексте.

Пример разделенной на уровни модели реализации для банковской системы. Стрелки показывают импорт зависимостей между подсистемами.