Диаграмма компонентов служит частью физического
Диаграмма компонентов служит частью физического представления модели, играет важную роль в процессе ООАП и является необходимой для генерации программного кода. Общие рекомендации по построению диаграммы компонентов были рассмотрены в лекции 12 курса «Основы объектно-ориентированного моделирования в нотации UML». Для разработки диаграмм компонентов в браузере проекта предназначено отдельное представление компонентов (Component View), в котором уже содержится диаграмма компонентов с пустым содержанием и именем по умолчанию Main (Главная).
Активизация диаграммы компонентов может быть выполнена одним из следующих способов:
- Щелкнуть на кнопке с изображением диаграммы компонентов на стандартной панели инструментов.
- Раскрыть представление компонентов в браузере (Component View) и дважды щелкнуть на пиктограмме Main (Главная).
- Через пункт меню BrowseComponent Diagram (БраузерДиаграмма компонентов).
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы компонентов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы компонентов (табл. 12.1).
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Component | Добавляет на диаграмму компонент | |
Package | Добавляет на диаграмму пакет | |
Dependency | Добавляет на диаграмму отношение зависимости | |
Subprogram Specification | Добавляет на диаграмму спецификацию подпрограммы | |
Subprogram Body | Добавляет на диаграмму тело подпрограммы | |
Main Program | Добавляет на диаграмму главную программу | |
Package Specification | Добавляет на диаграмму спецификацию пакета | |
Package Body | Добавляет на диаграмму тело пакета | |
Task Specification | Добавляет на диаграмму спецификацию задачи | |
Task Body | Добавляет на диаграмму тело задачи | |
Generic Subprogram | Добавляет на диаграмму типовую подпрограммы(по умолчанию отсутствует) | |
Generic Package | Добавляет на диаграмму типовой пакет (по умолчанию отсутствует) | |
Database | Добавляет на диаграмму базу данных (по умолчанию отсутствует) |
Как видно из этой таблицы, по умолчанию на панели инструментов отсутствуют только три графических элемента из рассмотренных ранее элементов диаграммы компонентов, а именно - кнопки с пиктограммами типовой подпрограммы, типового пакета и базы данных. При необходимости их можно добавить на специальную панель диаграммы компонента стандартным способом.
Программа IBM Rational Rose 2003 не поддерживает графические стереотипы, рассмотренные в лекции 12 курса «Основы объектно-ориентированного моделирования в нотации UML», и предлагает целый ряд собственных стереотипов. Графическое изображение этих стереотипов и их краткая характеристика приводятся в следующей таблице (табл. 12.2). При этом каждому из компонентов, как правило, соответствует отдельный файл исходной сборки программного приложения.
Subprogram Specification | Спецификация подпрограммы. Содержит описание переменных, процедур и функций и не содержит определений классов | |
Subprogram Body | Тело подпрограммы. Содержит реализацию процедур и функций, не относящихся к каким-то классам, при этом не содержит определений классов или реализаций операций других классов | |
Main Program | Главная программа. Реализует базовую логику работы программного приложения и содержит ссылки на другие компоненты модели | |
Package Specification | Спецификация пакета. Содержит определение класса, его атрибутов и операций. В языке программирования С++ спецификации пакета соответствует отдельный файл с расширением «h» | |
Package Body | Тело пакета. Содержит код реализации операций класса. В языке программирования С++ спецификации пакета соответствует отдельный файл с расширением «cpp» | |
Task Specification | Спецификация задачи. Может содержать определение класса, его атрибутов и операций, которые предполагается использовать в независимом потоке управления | |
Task Body | Тело задачи. Может содержать реализацию операций класса, которые имеют независимый поток управления. | |
Generic Subprogram | Типовая подпрограмма. Содержит описание переменных, процедур и функций, которые могут быть использованы в нескольких программных приложениях. При этом типовая подпрограмма не содержит определений классов | |
Generic Package | Типовой пакет. Содержит определение класса, его атрибутов и операций, которое может быть использовано в нескольких программных приложениях | |
Database | База данных. Содержит определение одного или нескольких классов, их атрибутов и, возможно, операций. При этом соответствующие классы могут быть реализованы в форме одной или нескольких таблиц базы данных |