Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций по ПрИС.doc
Скачиваний:
11
Добавлен:
14.11.2019
Размер:
1.33 Mб
Скачать

2.11.2Основные виды компонентов

В UML выделяют три вида компонентов:

  1. Компоненты размещения (развёртывания)Deployment components. Обеспечивают непосредственное выполнение системой своих функций. К таким компонентам относятся динамически подключаемые библиотеки DDL и исполняемые программы EXE в форме файлов .dll и .exe, а также Web-страницы на языке гипертекстовой разметки в форме файлов .html и файлы справочной системы .hlp.

  2. Компоненты – рабочие продуктыWork product components. Как правило, это файлы с исходными текстами программ, из которых создаются компоненты развёртывания. Например, для языка C++ – это файлы с расширениями .h и .cpp. Такие продукты не принимают непосредственного участия в работе исполняемой системы, но являются рабочими продуктами, из которых система создаётся.

  3. Компоненты исполненияExecution components. Эти компоненты создаются как следствие работы системы. Например, объект COM++, экземпляр которого создаётся из DLL. Часто компоненты исполнения зависят от конкретной технологии реализации компонентов (язык программирования, прикладные интерфейсы, серверы и серверные технологии).

2.11.3Основные стереотипы компонентов

В UML допускается явное указание стереотипа компонента. Определены следующие стереотипы компонентов:

  1. Исполнимыйexecutable. Физически заменяемая часть системы, которая может быть исполнена.

  2. Библиотекаlibrary. Файл динамической или статической библиотеки.

  3. Пакетpackage. Реализация логических пакетов. Например, классов.

  4. Спецификация задачиtask specification, Тело задачи task body. Реализация отдельной задачи. Для языка C++ – это файлы с исходным текстом программы: файлы описания .h и файлы реализации .cpp. Как правило, указанные в этом пункте стереотипы используются для детализации структуры пакетов классов.

  5. СхемаSchema. Реализация логической структуры базы данных.

  6. Апплетapplet. Переносимая программа на языке JAVA в форме байт-кода, распространяемая через Web-страницы.

  7. Внедряемые объектыActiveX. Реализация элементов средствами технологии ActiveX.

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

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

Диаграмма компонентов – диаграмма, на которой показаны состав и зависимости между компонентами программной системы.

Если система состоит ровно из одного исполняемого файла, моделировать компоненты необязательно. Если же система состоит из нескольких исполняемых файлов (например, сервера и клиентов) и ассоциированных с ними библиотек, справочных систем, Web-страниц, то моделирование компонентов обязательно. Оно помогает при визуализации и документировании решений, принятых относительно физической системы, а также в управлении конфигурацией различных частей информационной системы.

Для лучшей организации и чтения модели, компоненты (как и классы) можно объединять в пакеты. Как правило, для каждого пакета логического представления системы создаётся один пакет их реализации с таким же именем.

Н апример, диаграмма компонентов верхнего уровня иерархии может выглядеть так:

Для каждого из пакетов диаграммы компонентов создаётся своя диаграмма компонентов пакета, в которой отображается структура реализованных в них классах. Зависимости между компонентами диаграмм (заголовочными файлами и файлами с исходными текстами) отражают порядок их компиляции. Примеры можно увидеть в файле Упражнения.doc.

Для каждой компоненты определяется язык реализации: C++, VC++, JAVA, Visual Basic, Oracle 8, CORBA.

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

Е щё один пример диаграммы компонентов системы, на которой показан исполняемый компонент Main.exe. Данный компонент зависит от компонентов размещения Index.html, Dialog.dll и Context.hlp, а также пакета заголовочных файлов Main.h, от которого в свою очередь зависит пакет с исходными текстами программ Main.cpp.