Материал: MiSPISiT_laboratorny_praktikum

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
  1. Что означает символ, выделенный на рисунке?

  1. Как называется тип сообщения, пример которого изображен на рисунке?

  1. Какой буквой на рисунке обозначена линия жизни объекта?

Содержание отчета

  1. Титульный лист;

  2. Цель работы;

  3. Выполненное индивидуальное задание. Список индивидуальных заданий приводится в конце методического пособия. Необходимо привести пример диаграммы последовательности, которая отразит взаимодействие актёра с системой, а также взаимодействие объектов внутри самой системы;

  4. Ответы на 5 контрольных вопросов;

  5. Выводы.

Лабораторная работа №7

Цель: приобрести навыки построения диаграммы компонентов, познакомиться с основными элементами диаграммы, изучить их назначение и обозначение.

Теоретическая часть

Диаграмма компонентов помогает моделировать физический аспект объектно-ориентированного программного обеспечения. Она иллюстрирует архитектуру программных компонентов и связи между ними. Эти программные компоненты включают в себя: компоненты времени выполнения, исполняемые компоненты, а также исходный код компонентов.

Рисунок 44 – Пример диаграммы компонентов

Для построения диаграммы компонентов используется следующая нотация:

Иконка

Определение

Агрегация

Компонент

Ограничение

Обобщение

Интерфейс

Примечание

Реализация

Ассоциация

Композиция

Спецификация экземпляра компонента

Связь

Port

Usage

Агрегация

Тип ассоциации, который при обозначении на одном из концов помечен как агрегация – это означает, что элемент агрегирует в себе другой элемент, указанный на другом конце связи.

Рисунок 45 – Обозначение ассоциации агрегация

Свойства

Имя

Имя агрегации.

Видимость

Определяет, где появляется агрегация в других пространствах имен в рамках общей модели, и её доступность.

Начало ассоциации

Источник агрегации.

Конец ассоциации

Объект агрегации.

Документация

Описание агрегации.

Абстрактная

Если истинно, значит, агрегация не обеспечивает полное объявление и не может быть создана. Абстрактная агрегация предназначена для использования другими агрегациями.

Специализация

Указывает, возможно ли в дальнейшем специализировать агрегацию. Если это значение истинно, значит, агрегацию специализировать в дальнейшем нельзя.

Производная

Указывает, является ли агрегация производной от других элементов модели, например, агрегаций или ограничений.

Ассоциация

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

Свойства

Имя

Имя ассоциации.

Видимость

Определяет, где появляется ассоциация в других пространствах имен в рамках общей модели, и её доступность.

Начало ассоциации

Источник ассоциации.

Конец ассоциации

Объект ассоциации.

Документация

Описание ассоциации.

Абстрактная

Если истинно, значит, ассоциация не обеспечивает полное объявление и не может быть создана. Абстрактная ассоциация предназначена для использования другими ассоциациями.

Специализация

Указывает, возможно ли в дальнейшем специализировать ассоциацию. Если это значение истинно, значит, ассоциацию специализировать в дальнейшем нельзя.

Производная

Указывает, является ли ассоциация производной от других элементов модели, например, ассоциаций или ограничений.

Компонент

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

Компонент определяет поведение с точки зрения предоставляемых и требуемых интерфейсов. Таким образом, компонент служит типом соответствия, определенный этими предоставляемыми и требуемыми интерфейсами. Один компонент может быть замещён другим, только в том случае, когда их типы совместимы. Большие куски функциональности системы могут быть собраны за счёт повторного использования компонентов, как частей общего компонента или сборки компонентов, и связаны вместе их необходимыми и предоставляемыми интерфейсами.

Компонент моделируется на протяжении всего жизненного цикла разработки и постепенно уточняется в процессе развёртывания и во время выполнения. Спецификация развертывания может определять значения, которые параметризируют выполнение компонентов.

Рисунок 46 – Обозначение компонента

Свойства

Имя

Имя компонента.

Видимость

Определяет, где появляется компонент в других пространствах имен в рамках общей модели, и его доступность.

Документация

Описание компонента.

Абстрактный

Если истинно, значит, компонент не обеспечивает полное объявление и не может быть создан. Абстрактный компонент предназначен для использования другими компонентами.

Специализация

Указывает, возможно ли в дальнейшем специализировать компонент. Если это значение истинно, значит, компонент специализировать в дальнейшем нельзя.

Родительский

Указывает, имеет ли компонент родителя.

Активный

Определяет, может ли объект, тип которого этот компонент, являться активным или нет.

Тип создания экземпляра

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

Композиция

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

Рисунок 47 – Обозначение композиции

Свойства

Имя

Имя композиции.

Видимость

Определяет, где появляется композиция в других пространствах имен в рамках общей модели, и её доступность.

Начало ассоциации

Источник композиции.

Конец ассоциации

Объект композиции.

Документация

Описание композиции.

Абстрактная

Если истинно, значит, композиция не обеспечивает полное объявление и не может быть создана. Абстрактная композиция предназначена для использования другими композициями.

Специализация

Указывает, возможно ли в дальнейшем специализировать композицию. Если это значение истинно, значит, композицию специализировать в дальнейшем нельзя.

Производная

Указывает, является ли композиция производной от других элементов модели, например, композиций или ограничений.

Ограничение

Условие или ограничение, которое выражается в тексте на естественном языке или на машиночитаемом языке, с целью декларирования некоторой семантики элемента.

Рисунок 48 – Обозначение ограничения

Свойства

Имя

Имя ограничения. Оно не является обязательным и обычно опускается.

Выражение

Условие, по которому происходит сравнение чего-либо.

Документация

Описание ограничения

Зависимость

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

Имя

Имя зависимости.

Поставщик

Элемент, от которого зависит какой-либо другой элемент.

Клиент

Элемент, который зависит от элемента или множества элементов поставщиков.

Видимость

Определяет, где появляется зависимость в других пространствах имен в рамках общей модели, и её доступность.

Документация

Описание зависимости

Рисунок 49 – Обозначение зависимости

Обобщение

Обобщение – это отношение между более общим классификатором и более конкретным классификатором. Каждый экземпляр конкретного классификатора косвенно является общим классификатором. Таким образом, более конкретный классификатор наследует черты общего классификатора.

Рисунок 50 – Обозначение обобщения

Имя

Имя обобщения

Общий

Определяет общий классификатор в отношение обобщение.

Конкретный

Определяет конкретный классификатор в отношение обобщение.

Видимость

Определяет, где появляется отношение обобщение в других пространствах имен в рамках общей модели, и его доступность.

Документация

Описание отношения обобщение

Заменяемый

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