Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 2. Анализ и моделирование на UML.docx
Скачиваний:
18
Добавлен:
21.09.2019
Размер:
547.87 Кб
Скачать

Каркасы

Каркас - это архитектурный образец, предлагающий расширяемый шаблон для приложений в некоторой конкретной области. Например, в системах реального времени часто применяется архитектурный образец "циклический исполнитель", делящий время на кадры и подкадры, в которых обработка протекает в строгих временных рамках. Выбор такого образца вместо управляемой событиями архитектуры оказывает влияние на всю систему. Этот образец (равно как и его альтернатива) является настолько общим, что имеет смысл назвать его каркасом. Каркас - это больше чем механизм. Фактически можно считать, что каркас - это род микроархитектуры, включающий в себя множество механизмов, совместно работающих для разрешения типичной для данной предметной области проблемы. Специфицируя каркас, вы описываете скелет архитектуры со всеми управляющими органами, которые раскрываются пользователям, желающим адаптировать этот каркас для применения в нужном контексте. В UML каркас моделируется в виде стереотипного пакета. Раскрыв этот пакет, вы увидите механизмы, существующие в любом из видов системной архитектуры. В частности, можно обнаружить параметризованные кооперации, а также прецеденты, поясняющие, как работать с каркасом, или простые кооперации, представляющие набор абстракций, на базе которых можно строить систему, например путем порождения производных классов.

27.Управление моделями.

Пакет Управление моделями. Специфицирует базовые элементы языка, которые необходимы для формирования всех модельных представлений. Именно в нем определяется семантика модели, пакета и подсистемы. Эти элементы служат своеобразными контейнерами для группировки других элементов модели. Пакет является метаклассом и предназначен для организации других элементов модели, таких как другие пакет, классификаторы и ассоциации. Пакет может содержать ограничения и зависимости между элементами модели в самом пакете. Каждый элемент пакета имеет видимость только внутри данного пакета. Модель является подклассом имен, которая предназначена для вполне определенной цели. Именно эта цель предопределяет те компоненты, которые должны быть включены в модель, а то, рассмотрение которых не является обязательным. Для одной и той же физической системы могут быть определены различные модели, каждая из которых специфицирует систему с различных точек зрения. Пример _ логическая модель, модель вариантов использования. При этом каждая такая модель имеет свою собственную точку зрения на физическую систему и свой уровень абстракции. Модели могут быть вложенными друг в друга. Со своей стороны, пакет может включать в себя несколько различных моделей одной и той же системы.

28. Диаграмма пакетов.

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

Пакеты связываются друг с другом специальным отношением - зависимостью (dependence). Это направленное отношение, и идет оно от того пакета, который зависит, к пакету, который необходим тому, первому, зависимому. Это означает, что используемый пакет содержит описание конструкций, которые зависимый пакет импортирует, а не реализует сам. Зависимость не ограничивается только диаграммами пакетов, но может быть использована и для связи других UML-конструкций, например, может связывать два случая использования: один из них может зависеть от другого. Для графического описания пакетов применяется специальный графический символ - большой прямоугольник с небольшим прямоугольником, присоединенным к левой части верхней стороны первого. Одним из типов отношений между пакетами является отношение вложенности или включения пакетов друг в друга. С одной стороны, это отношение может быть изображено с помощью отрезков линий аналогично графическому представлению дерева.

Основные пакеты:

  • Основные элементы

  • Элементы поведения

  • Управление моделями.