ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Пример выполнения лабораторной работы. Для создания кооперативной диаграммы достаточно открыть диаграмму последовательности и нажать клавишу F5.
Для создания кооперативной диаграммы достаточно открыть диаграмму последовательности и нажать клавишу F5. Далее необходимо определить обязанности (responsibilities), атрибуты и ассоциации классов Обязанность (responsibility) – действия, которые объект обязан выполнять по запросу других объектов. Обязанность преобразуется в одну или более операций класса на шаге проектирования. Обязанности определяются, исходя из сообщений на диаграммах взаимодействия, и документируются в классах в виде операций «анализа», которые появляются там автоматически в процессе построения диаграмм взаимодействия (соотнесения сообщений с операциями). Так, диаграмма классов VOPC (classes only) после построения диаграмм взаимодействия должна принять вид, изображенный на рисунке 2.16. Атрибуты классов анализа определяются исходя из знаний о предметной области, требований к системе и глоссария. Перед добавлением атрибутов к классам необходимо выполнить предварительные настройки: 1) в меню модели выберите пункт меню Tools -> Options; 2) перейдите на вкладку Diagram; 3) убедитесь, что переключатель Show All Attributes помечен; 4) убедитесь, что переключатели Suppress Attributes и Suppress Operations не помечены.
Рисунок 2.16 – Диаграмма классов VOPC (classes only) с операциями «анализа»
Чтобы добавить атрибуты: 1) щелкните правой кнопкой мыши на классе Student; 2) в открывшемся меню выберите пункт New Attribute; 3) введите новый атрибут address; 4) нажмите клавишу Enter; 5) повторите шаги 1-4, добавив атрибуты name и studentID. Добавьте атрибуты к классам CourseOffering, Shedule и PrimaryScheduleOfferingInfo, как показано на рисунке 2.17. Связи между классами (ассоциации) определяются на основе диаграмм взаимодействия. Если два объекта взаимодействуют (обмениваются сообщениями), между ними должна существовать связь (путь взаимодействия).
Рисунок 2.17 – Классы с операциями «анализа» и атрибутами
Рисунок 2.18 – Диаграмма Entity Classes (классы-сущности)
Для ассоциаций задаются множественность и, возможно, направление навигации. Могут использоваться множественные ассоциации, агрегации и классы ассоциаций. Добавим связи к классам, принимающим участие в варианте использования Register for Courses.
Для отображения связей между классами построим три новые диаграммы классов в кооперации Register forCourses пакета Use-Case Realization – Register for Courses (рисунки 2.18 – 2.20). Добавлены два новых класса – подклассы FulltimeStudent (студент очного отделения) и ParttimeStudent (студент вечернего отделения).
Рисунок 2.19 – Диаграмма CourseOfferingInfo
На диаграмме рисунка 2.20 показаны классы ассоциаций, описывающие связи между классами Schedule и CourseOffering и добавлен суперкласс ScheduleOfferingInfo. Ассоциации создают непосредственно на диаграмме классов. Панель инструментов диаграммы классов содержит кнопки для создания как одно-, так и двунаправленных ассоциаций. Чтобы на диаграмме классов создать ассоциацию: 1) нажмите на панели инструментов кнопку Association; 2) проведите мышью линию ассоциации от одного класса к другому.
Рисунок 2.20 – Полная диаграмма классов VOPC (без атрибутов
Чтобы задать возможности навигации по ассоциации: 1) щелкните правой кнопкой мыши на связи с того конца, на котором хотите показать стрелку; 2) в открывшемся меню выберите пункт Navigable. Чтобы создать рефлексивную ассоциацию: 1) на панели инструментов диаграммы нажмите кнопку Association; 2) проведите линию ассоциации от класса до какого-нибудь места вне класса; 3) отпустите кнопку мыши; 4) проведите линию ассоциации назад к классу. Для создания агрегаций проделайте следующие операции: 1) нажмите кнопку Aggregation панели инструментов; 2) проведите линию агрегации от класса-части к целому. Чтобы поместить на диаграмму классов рефлексивную агрегацию: 1) на панели инструментов диаграммы нажмите кнопку Aggregation; 2) проведите линию агрегации от класса до какого-нибудь места вне класса; 3) отпустите кнопку мыши; 4) проведите линию агрегации назад к классу. При создании обобщения может потребоваться перенести некоторые атрибуты или операции из одного класса в другой. Если, например, понадобится перенести их из подкласса в суперкласс Employee, в браузере для этого достаточно просто перетащить атрибуты или операции из одного класса в другой. Не забудьте удалить другую копию атрибута из второго подкласса, если он имеется. Чтобы поместить обобщение на диаграмму классов: 1) нажмите кнопку Generalization панели инструментов; 2) проведите линию обобщения от подкласса к суперклассу. Спецификации связей касаются имен ассоциаций, ролевых имен, множественности и классов ассоциаций. Чтобы задать множественность связи: 1) щелкните правой кнопкой мыши на одном конце связи; 2) в открывшемся меню выберите пункт Multiplicity; 3) укажите нужную множественность; 4) повторите то же самое для другого конца связи. Чтобы задать связи ролевое имя: 1) щелкните правой кнопкой мыши на ассоциации с нужного конца; 2) в открывшемся меню выберите пункт role Name; 3) введите ролевое имя. Чтобы задать элемент связи (класс ассоциаций): 1) откройте окно спецификации требуемой связи; 2) перейдите на вкладку Detail; 3) задайте элемент связи в поле Link Element. Аналогично выполняется анализ варианта использования Close Registration и дальнейшее построение соответствующих диаграммы взаимодействия и классов. Не нашли, что искали? Воспользуйтесь поиском:
|