- •Дисциплина «Архитектура информационных систем»
- •Лабораторная работа № 7
- •Разработка диаграммы компонентов в Rational Rose.
- •Теоретическое введение
- •Диаграмма компонентов и особенности ее построения
- •Компоненты
- •Интерфейсы
- •Зависимости между компонентами
- •Рекомендации по построению диаграммы компонентов
- •Практические задания
- •Добавление компонента на диаграмму компонентов и редактирование его свойств
- •Добавление отношения зависимости и редактирование его свойств
- •Окончательное построение диаграммы компонентов модели банкомата
- •Контрольные вопросы
Волгоградский государственный университет. Кафедра информационных систем и компьютерного моделирования.
Архитектура информационных систем. Лабораторная работа №7. Разработка диаграммы компонентов в Rational Rose.
к.т.н., доц. В.В. Полубояров
которая обеспечивала бы возможность повторного использования кода за счет рациональной декомпозиции компонентов, а также создание объектов только при их необходимости.
Общая производительность программной системы существенно зависит от рационального использования вычислительных ресурсов. Для этой цели необходимо большую часть описаний классов, их операций и методов вынести в динамические библиотеки, оставив в исполняемых компонентах только самые необходимые для инициализации программы фрагменты программного кода.
После общей структуризации физического представления системы необходимо дополнить модель интерфейсами и схемами базы данных. При разработке интерфейсов следует обращать внимание на согласование различных частей программной системы. Включение в модель схемы базы данных предполагает спецификацию отдельных таблиц и установление информационных связей между ними.
Завершающий этап построения диаграммы компонентов связан с установлением и нанесением на диаграмму взаимосвязей между компонентами, а также отношений реализации. Эти отношения должны иллюстрировать все важнейшие аспекты физической реализации системы, начиная с особенностей компиляции исходных текстов программ и заканчивая исполнением отдельных частей программы на этапе ее выполнения. Для этой цели можно использовать различные графические стереотипы компонентов.
При разработке диаграммы компонентов следует придерживаться общих принципов создания моделей на языке UML. В частности, в первую очередь необходимо использовать уже имеющиеся в языке UML и общепринятые графические и текстовые стереотипы. В большинстве типовых проектов этого набора достаточно для представления компонентов и зависимостей между ними.
Если же проект содержит физические элементы, описание которых отсутствует в языке UML, то следует воспользоваться механизмом расширения. В частности, можно применить дополнительные стереотипы для отдельных нетиповых компонентов или помеченные значения для уточнения отдельных характеристик компонентов.
Наконец, следует обратить внимание на то, что диаграмма компонентов, как правило, разрабатывается совместно с диаграммой развертывания, на которой представляется информация о физическом размещении компонентов программной системы по ее отдельным узлам.
Практические задания
Диаграмма компонентов служит частью физического представления модели, играет важную роль в процессе ООАП и является необходимой для генерации программного кода.
9
Волгоградский государственный университет. Кафедра информационных систем и компьютерного моделирования.
Архитектура информационных систем. Лабораторная работа №7. Разработка диаграммы компонентов в Rational Rose.
к.т.н., доц. В.В. Полубояров
Для разработки диаграмм компонентов в браузере проекта предназначено отдельное представление компонентов (COMPONENT VIEW), в котором уже содержится диаграмма компонентов с пустым содержанием и именем по умолчанию MAIN (Главная).
Активизация диаграммы компонентов может быть выполнена одним из следующих способов:
∙Щелкнуть на кнопке с изображением диаграммы компонентов на стандартной панели инструментов.
∙Раскрыть представление компонентов в браузере (COMPONENT VIEW) и дважды щелкнуть на пиктограмме MAIN (Главная).
∙Через пункт меню BROWSE | COMPONENT DIAGRAM (БРАУЗЕР | ДИАГРАММА КОМПОНЕНТОВ).
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы компонентов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы компонентов (Таблица 1).
Таблица 1 Назначение кнопок специальной панели инструментов диаграммы компонентов
Графическое |
Всплывающая |
Назначение кнопки |
изображение |
подсказка |
|
|
|
|
|
Selection Tool |
Превращает изображение курсора в форму стрелки для |
|
|
последующего выделения элементов на диаграмме |
|
|
|
|
Text Box |
Добавляет на диаграмму текстовую область |
|
|
|
|
Note |
Добавляет на диаграмму примечание |
|
|
|
|
Anchor Note to |
Добавляет на диаграмму связь примечания с |
|
Item |
соответствующим графическим элементом диаграммы |
|
|
|
|
Component |
Добавляет на диаграмму компонент |
|
|
|
|
Package |
Добавляет на диаграмму пакет |
|
|
|
|
Dependency |
Добавляет на диаграмму отношение зависимости |
|
|
|
|
Subprogram |
Добавляет на диаграмму спецификацию подпрограммы |
|
Specification |
|
|
|
|
|
Subprogram Body |
Добавляет на диаграмму тело подпрограммы |
|
|
|
|
Main Program |
Добавляет на диаграмму главную программу |
|
|
|
10
Волгоградский государственный университет. Кафедра информационных систем и компьютерного моделирования.
Архитектура информационных систем. Лабораторная работа №7. Разработка диаграммы компонентов в Rational Rose.
|
|
|
к.т.н., доц. В.В. Полубояров |
||
|
|
|
|
|
|
|
|
Package |
Добавляет на диаграмму спецификацию пакета |
||
|
|
Specification |
|
|
|
|
|
|
|
|
|
|
|
Package Body |
Добавляет на диаграмму тело пакета |
|
|
|
|
|
|
|
|
|
|
Task Specification |
Добавляет на диаграмму спецификацию задачи |
|
|
|
|
|
|
|
|
|
|
Task Body |
Добавляет на диаграмму тело задачи |
|
|
|
|
|
|
|
|
|
|
Generic |
Добавляет на диаграмму типовую подпрограммы (по |
|
|
|
|
Subprogram |
умолчанию отсутствует) |
||
|
|
|
|
|
|
|
|
Generic Package |
Добавляет на диаграмму типовой пакет (по умолчанию |
|
|
|
|
|
отсутствует) |
||
|
|
|
|
|
|
|
|
Database |
Добавляет на диаграмму базу данных (по умолчанию |
|
|
|
|
|
отсутствует) |
||
|
|
|
|
|
|
Как видно из этой таблицы, по умолчанию на панели инструментов отсутствуют только три графических элемента из рассмотренных ранее элементов диаграммы компонентов, а именно - кнопки с пиктограммами типовой подпрограммы, типового пакета и базы данных. При необходимости их можно добавить на специальную панель диаграммы компонента стандартным способом.
Программа IBM Rational Rose предлагает ряд собственных стереотипов. Графическое изображение этих стереотипов и их краткая характеристика приводятся в следующей таблице (Таблица 2).
Таблица 2 Графическое изображение стереотипов компонентов и их характеристика
Графическое |
Название |
Характеристика стереотипа компонента |
изображение и имя |
стереотипа |
|
по умолчанию |
|
|
|
|
|
|
Subprogram |
Спецификация подпрограммы. Содержит описание |
|
Specification |
переменных, процедур и функций и не содержит |
|
|
определений классов |
|
|
|
11
Волгоградский государственный университет. Кафедра информационных систем и компьютерного моделирования.
Архитектура информационных систем. Лабораторная работа №7. Разработка диаграммы компонентов в Rational Rose.
|
|
к.т.н., доц. В.В. Полубояров |
|
|
|
|
|
|
Subprogram |
Тело подпрограммы. Содержит реализацию процедур |
|
|
Body |
и функций, не относящихся к каким-то классам, при |
|
|
|
этом не содержит определений классов или |
|
|
|
реализаций операций других классов |
Main Program |
Главная программа. Реализует базовую логику работы |
|
программного приложения и содержит ссылки на |
|
другие компоненты модели |
Package |
Спецификация пакета. Содержит определение класса, |
Specification |
его атрибутов и операций. В языке программирования |
|
С++ спецификации пакета соответствует отдельный |
|
файл с расширением «h» |
Package Body |
Тело пакета. Содержит код реализации операций |
|
класса. В языке программирования С++ спецификации |
|
пакета соответствует отдельный файл с расширением |
|
«cpp» |
Task |
Спецификация задачи. Может содержать определение |
Specification |
класса, его атрибутов и операций, которые |
|
предполагается использовать в независимом потоке |
|
управления |
|
|
Task Body |
Тело задачи. Может содержать реализацию операций |
|
класса, которые имеют независимый поток управления. |
12