ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.11.2023
Просмотров: 153
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
3.3. Порядок выполнения
1. Изучить назначение элементов интерфейса RR для построения диаграммы классов. Рассмотреть типовой пример построения диаграммы для банкомата.
2. Продолжить моделирование системы в соответствии с индивидуальным заданием в виде построения диаграммы классов:
2.1. Определить состав классов различных типов для реализации модели системы (должно быть не менее 6 классов для актёров и прецедентов), создать несколько пакетов и распределить классы по пакетам.
2.2. Для каждого класса установить стереотипы, добавить и специфицировать атрибуты и операции (определить тип аргументов и результата); задать число объектов этого класса, его устойчивость, а также другие свойства.
2.3. Добавить и специфицировать связи различных типов между классами, определить зависимости между пакетами.
2.4. В секции документации для каждого класса ввести комментарии.
2.5. Отобразить диаграмму классов системы, отдельно отобразить диаграммы классов каждого пакета. При изображении диаграммы классов все классы предлагается представить в форме графических стереотипов и отображать атрибуты, операции или сигнатуры операций классов.
3. Оформить отчёт по результатам выполнения лабораторной работы.
3.4. Содержание отчёта
Результаты выполнения лабораторной работы необходимо представить в виде отчёта, который должен содержать следующие разделы:
1. Постановка задачи.
2. Описание пакетов и классов системы.
3. Описание связей между классами проектируемой системы.
4. Окончательный вид диаграммы классов проектируемой системы.
3.5. Варианты заданий
Вариант индивидуального задания соответствует варианту, полученному при выполнении лабораторной работы №2.
3.6. Контрольные вопросы
1. Каково назначение диаграммы классов? Какие типы классов можно создать в среде RR?
2. Какими способами можно создать диаграмму классов в среде RR?
3. Какие инструменты доступны для диаграммы? Какие команды предоставляет контекстное меню класса?
4. Как настроить свойства атрибутов и операций класса?
5. Какие виды связей доступны в диаграмме классов?
6. Каким образом можно детализировать описание класса в среде RR?
7. Что такое стереотип? Какие стереотипы доступны в RR?
8. Каким образом можно добавить новый стереотип в RR?
9. Как создать вложенный класс в RR?
10. Как формируются пакеты классов в RR?
4. Диаграммы взаимодействия
4.1. Цель работы
Целью данной работы является использование диаграмм взаимодействия (диаграммы последовательностей и диаграммы кооперации) при разработке программной системы в среде RR.
4.2. Общие сведения
Диаграмма взаимодействия (interaction diagram)описывает динамический аспект взаимодействия объектов при реализации отдельных прецедентов и оперирует объектами и сообщениями, которыми они обмениваются. На диаграмме взаимодействия отображают один из процессов обработки информации в прецеденте. В случае наличия нескольких альтернативных потоков, создаётся несколько диаграмм взаимодействия для рассматриваемого прецедента.
Существует два типа диаграмм взаимодействия – диаграммы последовательности (sequence diagram) и диаграммы кооперации (collaboration diagram). На диаграммах обоих типов представлена одна и та же информация, но между ними есть два различия. Диаграммы последовательности заостряют внимание на управлении и представляют собой разворот взаимодействия во времени с отображением последовательности выдачи сообщений. Диаграммы кооперации отображают поток данных и показывают взаимодействие объектов независимо от времени.
Диаграмма последовательностей
Диаграммы последовательности можно создавать в представлении прецедентов или в логическом представлении браузера. Такие диаграммы должны находиться непосредственно внутри прецедента или непосредственно внутри пакета.
Для создания новой диаграммы последовательности необходимо:
1. Щёлкнуть правой кнопкой мыши на пакете или прецеденте в браузере.
2. В открывшемся меню выбрать пункт New → Sequence Diagram (Создать → Диаграмма последовательности) и определить имя новой диаграммы.
3. Дважды щёлкнуть на диаграмме в браузере для её открытия.
Либо выполнить операцию меню Browse → Interaction Diagram (Браузер → Диаграмма взаимодействия) и выбрать для построения новую диаграмму последовательности с указанием места её размещения.
При этом появляется новое окно с чистым рабочим листом диаграммы и специальная панель инструментов, содержащая кнопки с изображением графических элементов для разработки диаграммы последовательности (табл.4.1).
Таблица 4.1
Значок | Подсказка | Назначение кнопки |
| Selection Tool | Переключает в режим выделения элементов на диаграмме |
| Text Box | Добавляет на диаграмму текстовую область |
| Note | Добавляет на диаграмму примечание |
| Anchor Note to Item | Добавляет связь примечания с элементом диаграммы |
| Object | Добавляет на диаграмму объект |
| Object Message | Добавляет на диаграмму простое сообщение |
| Message to Self | Добавляет на диаграмму рефлексивное сообщение |
| Return Message | Добавляет сообщение типа возврата из процедуры |
| Destruction Marker | Добавляет на диаграмму символ уничтожения объекта |
| Procedure Call | Добавляет на диаграмму сообщение типа вызова процедуры |
| Asynchronous Message | Добавляет на диаграмму асинхронное сообщение |
Открыть существующую диаграмму последовательности можно с помощью пункта меню Browse → Interaction Diagram (Браузер → Диаграмма взаимодействия) или дважды щёлкнуть по этой диаграмме в логическом представлении или в представлении прецедента браузера.
Добавить объект на диаграмму можно как стандартным образом с помощью кнопки на специальной панели инструментов, так и более удобным способом – с помощью перетаскивания значка класса или актёра из браузера на свободное место рабочего листа диаграммы последовательности.
В результате этого на диаграмме последовательности появится изображение объекта с вертикальной пунктирной линией, означающей линию жизни этого объекта. При необходимости можно задать имя объекта, указать устойчивость его существования, возможность наличия у него нескольких экземпляров, а также добавить документацию, для чего уже известным способом (например, двойным щелчком на изображении объекта на диаграмме) следует вызвать окно свойств объекта (окно спецификации).
Отметим, что каждый объект является реализацией класса, поэтому каждый объект диаграммы последовательности может быть соотнесён с классом. Для этого можно воспользоваться полем Class окна спецификации объекта. По умолчанию поле Class = Unspecified (не определён). После соотнесения класса с объектом название класса появится на диаграмме за именем объекта и двоеточием. При назначении объекту класса можно либо указать уже существующий класс модели, либо создать новый класс. К моменту генерации кода все объекты должны быть соотнесены с классами. Разорвать соотнесение объекта с классом можно следующим образом: щёлкнуть правой кнопкой мыши на объекте, в появившемся меню выбрать пункт Open Specification и в раскрывшемся классе выбрать пункт Unspecified. Если нужно создать для объекта новый класс, то нужно выполнить те же действия, но в списке классов выбрать пункт New (Создать).
Если вы хотите убедиться, что все объекты соотнесены с классами, то выберите в меню модели пункт Report → Show Unresolved Objects (Отчёт → Показать свободные объекты).
В среде RR для каждого объекта можно задать его устойчивость в окне спецификации. Поддерживаются следующие варианты: persistent (устойчивый) – сохраняется в базе данных или другим способом,
обеспечивающим постоянное хранение; static (статичный) – сохраняется в памяти компьютера в течение всего времени работы программы; transient (временный) – сохраняется в течение очень короткого времени (например, пока не закончится выполнение процессов).
Расположив объекты на диаграмме, нужно показать сообщения между ними. Сообщение – это связь между объектами, в которой один из них (клиент) требует от другого (сервера) выполнения каких-либо действий. При генерации кода сообщения транслируются в вызовы функций.
Для добавления сообщения между объектами нужно с помощью левой кнопки мыши нажать кнопку с изображением сообщения на специальной панели инструментов, отпустить левую кнопку мыши, щёлкнуть левой кнопкой мыши на изображении линии жизни 1‑го объекта на диаграмме и отпустить её на изображении линии жизни 2‑го объекта. При этом изображение линии жизни у этой пары объектов изменится на изображение фокуса управления.
Для спецификации свойств добавленного сообщения предназначено окно, которое можно открыть двойным щелчком на изображении сообщения на диаграмме последовательности. Имя сообщения можно выбрать на вкладке General из выпадающего списка операций соответствующего класса-приёмника. Имя сообщения можно выбрать также из контекстного меню сообщения, в котором перечислены все операции класса-приёмника данного сообщения. В контекстном меню можно задать новую операцию, в этом случае следует выбрать строку New operation. При этом откроется окно спецификации свойств новой операции класса-приёмника.
При добавлении сообщений на диаграмму последовательности они получают по умолчанию свой номер в общей последовательности сообщений. Нумерация сообщений на диаграмме последовательности может быть отключена. При необходимости показать номера сообщений следует выполнить операцию меню Tools → Options (Инструменты → Параметры), открыть вкладку Diagram (Диаграмма) и выставить отметку выбора строки Sequence numbering (Нумерация сообщений на диаграмме последовательности) в группе свойств Display.
Для детальной спецификации свойств сообщений можно использовать группы свойств Synchronization (Синхронизация) и Frequency (Частота) на вкладке Detail окна спецификации сообщения. При изменении способа синхронизации передаваемого сообщения изменяется графическое изображение стрелки этого сообщения. Группа свойств Synchronization определяет порядок обмена сообщениями, который может быть выбран из следующих вариантов: Simple – простая посылка сообщения; Synchronous – операция происходит только в том случае,