Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
проект ис / Методичка по КИС.docx
Скачиваний:
158
Добавлен:
12.04.2015
Размер:
621.04 Кб
Скачать

Лабораторная работа №7. Диаграмма компонентов (Component Diagram). Диаграмма развертывания (Deployment Diagram). Диаграмма пакетов

Общее описание

С помощью диаграммы компонентов описываются компоненты программного обеспечения (программные компоненты). Программный компонент является частью системы. Он обеспечивает интерфейс с другими компонентами. В UML1.xкомпонентами считались таблицы, файлы данных, документы, исполняемые файлы и динамически подключаемые библиотеки. Для уточнения этих понятий, при моделировании эти компоненты назывались: компонентами развертывания, рабочими и исполняемыми компонентами. ВUML2.0 перечисленные понятия имеют одно имя –артефакт (фрагмент информации, используемый или генерируемый системой).

Компонент определяет функциональность системы. Т.е. представляет реализацию одного или нескольких классов.

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

Цели построения модели компонентов:

  • Заказчик увидит структуру законченной системы

  • Разработчики смогут представить себе структуру будущей системы

  • Редакторы, ответственные за написание инструкций и справочной документации смогут лучше понять суть разработки.

  • Компоненты можно использовать в дальнейшем многократно

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

Замещение: Один компонент можно заменить другим, если новый компонент имеет такой же интерфейс. Разработчику, который пытается заменить или повторно использовать компонент, будет намного удобнее, если информация компонентного интерфейса легко доступна в форме модели. Если же – нет, разработчик вынужден идти более длинным путем обратного проектирования (реинжиниринга) на основе кода.

Построение в PowerDesigner

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

рис.3.34.

В свойствах компонента указывается имя (поля NameиCode), стереотип (полеStereotype), в поле Type – указывается тип компонента (стандартный или специальный – компонент, включающийEJB,JSP,Servlet). Чтобы создать новый интерфейс, необходимо перейти на вкладкуInterfacesв свойствах компонента. Вы можете создать новый интерфейс (кнопка) или добавить уже ранее созданные интерфейсы (кнопка). При создании нового, откроется окно со свойствами интерфейса, где необходимо ввести имя, добавить атрибуты и операции. Например: создадим компонентCalculatorи добавим ему интерфейс:

рис.3.35.

Вот, что получим в результате:

рис.3.36.

Компонент может содержать классы (это классы, обеспечивающие выполнение компонента). Обычно один класс является главным, а другие используются для выполнения функций компонента. Классы не имеют обозначения в диаграмме компонентов (как, например, интерфейсы). Но отношение между классом и компонентом можно увидеть в свойствах компонента на вкладке Classes. Причем вы можете добавить либо новый класс (кнопка), либо выбрать ранее созданный в другой диаграмме класс (кнопка).

Вы можете добавить файл (вкладка Files в свойствах компонента). Во вкладкеOperationsможно увидеть операции, которые были объявлены в свойствах интерфейса компонента.

Вы можете создать диаграмму классов для выбранного компонента, чтобы более детально рассмотреть классы и интерфейсы. Для этого, нажмите на компонент правой кнопкой мыши и выберите из меню Create/Update Class Diagram.

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

Чтобы показать взаимосвязь между артефактом (например, исполняемым кодом) и реализующим его компонентом, используется инструмент Generalizationи в свойствах указывается стереотип <<Реализует>>:

рис.3.37.

Зависимость между компонентами изображается с помощью инструмента Dependency.

Диаграмма развертывания (Deployment Diagram)

Общее описание

Аппаратные средства очень важны в многокомплексных системах. В современном компьютерном мире такие системы являются распределенными, предоставляют большие возможности и могут использоваться на множестве различных платформ. Вопросы развертывания аппаратных средств должны быть хорошо проработаны еще в процессе проектирования. Язык UMLпредоставляет систему обозначений для создания проекта развертывания аппаратных средств.

Диаграммы развертывания отображают способ воплощения артефактов в физической системе и способ соединения аппаратных средств между собой. Главным аппаратным элементом является узел – общее название для любого вычислительного ресурса.

В UML1.xвыделяли два типа узлов: процессоры (узлы, выполняющие команды компонента) и устройства (периферийные аппаратные средства, которые не выполняют команды компонентов, а осуществляют интерфейс с внешним миром).

В UML2.0 устройство формально определяется как узел, выполняющий артефакты (исполняемый код).

Построение в PowerDesigner

Узел изображается в виде куба, с которым связано определенное имя и необязательное ключевое слово <<устройство>>:

рис.3.38.

В PowerDesignerдля изображения узла используется инструментNode. Для соединения узлов, используется инструментNode Association.

В UML2.0 появилось новое понятие – спецификация развертывания – артефакт, обеспечивающий параметры для другого артефакта. Для изображения спецификации развертывания используется инструментDependency.

Рассмотрим несколько примеров:

  1. Кольцевая сеть с маркерным доступом

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

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

рис.3.39.

  1. Сеть ARC

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

рис.3.40.

Задание для самостоятельной работы:

Изобразить сеть Ethernet. Компьютеры соединяются с сетью посредством кабельных соединительных устройств, называемых Т-образными разъемами (Т-коннектор). Одна часть внутренней локальной сети может быть соединена с другой посредством повторителя – устройства, которое усиливает сигнал перед его отправлением.

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

Общее описание и построение в PowerDesigner

Данная диаграмма помогает более глубоко понять другие диаграммы.

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

рис.3.41.

Рис. Отношения обобщения и зависимости между пакетам

В PowerDesignerпакеты можно создать в любой диаграмме. Для этого применяется инструментPackage. При этом вWorkspace автоматически создается пакет, в который вложена та диаграмма, где был создан пакет. Пакет также можно создать, если вWorkspaceнажать на любой созданной ранее диаграмме правой кнопкой мыши и далее выбратьConvert to package. В результате будет создать пакет, а выбранная диаграмма переместиться автоматически в папкуPackage.

Чтобы изобразить обобщение используется инструмент Generalization, зависимость – инструментDependency, уточнение – инструментDependencyи в свойствах в полеStereotypeпрописать «уточняет».

Пакет может объединяться с другим пакетом. Отношение объединения – это отношение зависимости между пакетом, который объединяет (т.е. источником), и пакетом, который объединяется (целевой). В результате объединения получается преобразование пакета-источника.

Соседние файлы в папке проект ис