4. Чтобы добавить отношения зависимости, щелкните по кнопке Dependency
(Отношение зависимости) на панели инструментов, затем по пакету-клиенту и проведите линию связи к пакету-поставщику.Главная диаграмма компонентов для задачи регистрации учебных курсов показана на рис. 11.5.
Компоненты исходного кода
В представлении компонентов модели компоненты исходного кода — это программные файлы, содержащиеся внутри пакетов. Тип файлов зависит от языка программирования (например, в C++ — файлы. h и срр, в Java — .Java, в PowerBuilder — .pbl). Каждый компонент связан с каким-либо языком. Классы в логическом представлении отображаются на компоненты в представлении компонентов. Для C++ один класс отображается в один компонент. Однако иногда на один компонент может быть отображено больше одного класса. Это обычно происходит в том случае, когда между классами существует очень тесная связь. Например, контейнер и его итератор содержатся в одном. h- и одном срр-файле. Значит, класс-контейнер и класс-итератор будут отображаться на один компонент. Я также видела классы, которые используются как шаблон взаимодействия, отображаемый на один физический файл. Нотация языка UML для компонента показана на рис. 11.6.
Программные компоненты в задаче регистрации учебных курсов
Это относительно простая система, вот почему было принято решение обеспечить отображение один в один между классами и компонентами — каждый класс имеет собственный файл заголовка и cpp-файл.
Для создания компонентов в программе Rational Rose:
1. Откройте диаграмму компонентов.
2. Щелкните по кнопке Component
(Компонент) на панели инструментов.3. Щелкните по диаграмме, чтобы поместить на нее компонент. Новый компонент также будет добавлен в список браузера.
4. Введите имя нового компонента.
Простая диаграмма компонентов показана на рис. 11.7.
Отображение классов на компоненты в программе Rational Rose предусматривает выполнение следующих действий:
1. Щелкните правой кнопкой мыши по компоненту в списке браузера.
2. В появившемся контекстно-зависимом меню выберите команду Open Specification
(Открыть параметры).3. Щелкните по вкладке Realize
(Реализация).4. Щелкните правой кнопкой мыши по нужному классу в списке классов.
5. В появившемся контекстно-зависимом меню выберите команду Assign
(Присвоить).6. Щелкните по кнопке OK,
чтобы закрыть диалоговое окно настройки параметров компонента.Класс можно присвоить компоненту путем перетаскивания класса из окна браузера на изображение компонента в браузере или на диаграмме компонентов.
Диалоговое окно настройки параметров компонента учебный курс (Course Offering) показано на рис. 11.8.
Представление процессов
В программе Rational Rose информация для представления процессов создается в виде диаграмм в представлении компонентов, содержащих либо программные, либо исполняемые компоненты. Диаграммы нужны для того, чтобы показать зависимости между компонентами различного типа в системе.
В системе регистрации учебных курсов созданы две динамические библиотеки (DLL) — для обработки информации о предметах и учебных курсах и для работы с базой данных. Такой подход был выбран исходя из возможных изменений в структуре курсов и в стратегии взаимодействия с базой данных.