11624

Особенности разработки диаграмм классов в среде IBM Rational Rose 2003

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа №2 часть1 Особенности разработки диаграмм классов в среде IBM Rational Rose 2003 Диаграмма классов является основным логическим представлением модели и содержит детальную информацию о внутреннем устройстве объектноориентированной программной системы и...

Русский

2013-04-10

176.5 KB

27 чел.

Лабораторная работа №2, часть1

Особенности разработки диаграмм классов в среде IBM Rational Rose 2003

Диаграмма классов является основным логическим представлением модели и содержит детальную информацию о внутреннем устройстве объектно-ориентированной программной системы или, используя современную терминологию, об архитектуре программной системы. Активизировать рабочее окно диаграммы классов можно несколькими способами:

  •  окно диаграммы классов появляется по умолчанию в рабочем окне диаграммы после создания нового проекта;
  •  щелкнуть на кнопке с изображением диаграммы классов на стандартной панели инструментов;
  •  раскрыть логическое представление (Logical View) в браузере проекта и дважды щелкнуть на пиктограмме Main (Главная);
  •  выполнить операцию главного меню: BrowseClass Diagram (ОбзорДиаграмма классов).

При этом появляется новое окно с чистым рабочим листом диаграммы классов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы классов (табл. 3.1). Назначение отдельных кнопок панели можно узнать также из всплывающих подсказок.

Таблица 3.1. Назначение кнопок специальной панели инструментов для диаграммы классов

Графическое изображение

Всплывающая подсказка

Назначение кнопки

Selection Tool

Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме

Text Box

Добавляет на диаграмму текстовую область

Note

Добавляет на диаграмму примечание

Anchor Note to Item

Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы

Class

Добавляет на диаграмму класс

Interface

Добавляет на диаграмму интерфейс

Unidirectional Association

Добавляет на диаграмму направленную ассоциацию

Association Class

Добавляет на диаграмму ассоциацию класс

Package

Добавляет на диаграмму пакет

Dependency or Instantiates

Добавляет на диаграмму отношение зависимости

Generalization

Добавляет на диаграмму отношение обобщения

Realize

Добавляет на диаграмму отношение реализации

На специальной панели инструментов по умолчанию присутствует только часть пиктограмм элементов, которые могут быть использованы для построения диаграммы классов. Добавить кнопки с пиктограммами других графических элементов таких как, например, отношения агрегации и композиции, шаблон, класс бизнес-сущность, управляющий класс, или удалить ненужные кнопки можно с помощью настройки специальной панели инструментов. Соответствующее диалоговое окно настройки специальной панели инструментов для диаграммы классов можно вызвать аналогично другим панелям с помощью операции контекстного меню Customize (Настройка) при позиционировании курсора на специальной панели инструментов.

Добавление класса на диаграмму классов и редактирование его свойств

Для добавления класса на диаграмму классов нужно с помощью левой кнопки мыши нажать кнопку с изображением пиктограммы класса на специальной панели инструментов, отпустить левую кнопку мыши и щелкнуть левой кнопкой мыши на свободном месте рабочего листа диаграммы. На диаграмме появится изображение класса с маркерами изменения его геометрических размеров и предложенным средой именем по умолчанию NewClass.

Продолжая разработку модели банкомата в качестве сквозного примера проекта, построим для этой модели следующую каноническую диаграмму - диаграмму классов. С этой целью следует изменить предложенное по умолчанию имя диаграммы Main на Диаграмма классов ATM, а имя добавленного на диаграмму класса - на Транзакция Банкомата (рис. 3.1).


Рис. 3.1.  Диаграмма классов модели банкомата после добавления на нее класса Транзакция Банкомата

Поскольку разрабатываемая модель банкомата на начальных этапах работы над проектом используется для анализа общей архитектуры проекта и согласования ее с различными участниками рабочей группы, имена классов, их атрибутов и операций для большей наглядности и понимания задаются на русском языке с пробелами и записываются символами кириллицы. В последующем по мере выполнения проекта и реализации модели на некотором языке программирования, имена соответствующих классов, атрибутов и операций должны быть преобразованы в символы латиницы. При этом имена этих элементов модели должны быть записаны без пробелов. В контексте управляемой моделью архитектуры первую модель еще называют независимой от платформы реализации, а вторую - зависимой от платформы реализации.

Для класса Транзакция Банкомата можно уточнить его назначение в модели с помощью указания стереотипа и пояснительного текста в форме документации. С этой целью двойным щелчком левой кнопкой мыши на изображении этого класса на диаграмме или в браузере проекта следует открыть диалоговое окно спецификации свойств этого класса (рис. 3.2) и на вкладке General (Общие) выбрать из вложенного списка Stereotype стереотип entity (сущность).


Рис. 3.2.  Диалоговое окно спецификации свойств класса Транзакция Банкомата при выборе из вложенного списка стереотипа entity

Выбор данного стереотипа означает, что соответствующий класс предназначен для хранения информации, которая должна сохраняться в системе после уничтожения объектов данного класса. Далее в секцию документации данного класса можно ввести поясняющий текст: "Используется для сохранения информации о выполненных банкоматом транзакциях" и нажать кнопку Apply или OK, чтобы сохранить результаты редактирования свойств выбранного класса. После назначения стереотипа классу Транзакция банкомата текст данного стереотипа в угловых скобках появится выше имени данного класса (рис. 3.3).


Рис. 3.3.  Диаграмма классов модели банкомата после выбора стереотипа для класса Транзакция Банкомата

Для отдельного класса можно уточнить также и другие его свойства, доступные для редактирования на вкладке Detail (Подробно) окна спецификации свойств этого класса. Например, на этой вкладке с помощью вложенного списка Multiplicity (Кратность) можно задать количество объектов или экземпляров данного класса, для чего следует выбрать строку с буквой n. Данное значение означает, что у класса Транзакция банкомата может быть любое конечное число экземпляров (рис. 3.4). Поле ввода с именем Space (Пространство) служит для указания объема абсолютной или относительной памяти, которая требуется, по оценке разработчика, для реализации каждого объекта данного класса. Применительно к рассматриваемой модели это поле можно оставить пустым.


Рис. 3.4.  Диалоговое окно спецификации свойств класса Транзакция Банкомата, открытое на вкладке Detail (Подробно)

Далее можно задать устойчивость классов в группе выбора Persistence. При этом выбор свойства Persistent (Устойчивый) означает, что информация об объектах данного класса должна быть сохранена в системе. Выбор свойства Transient (Временный) означает, что нет необходимости сохранять информацию об объектах данного класса в системе после завершения работы программного приложения. Применительно к рассматриваемой модели следует выбрать свойство Persistent.

В группе выбора Concurrency (Параллельность) можно специфицировать условия на возможность реализации объектов данного класса в параллельных потоках управления. Для выбора могут быть использованы следующие свойства:

  •  Sequential (Последовательный) - свойство по умолчанию, которое означает, что объекты класса будут вести себя нормально только при наличии одного потока управления, т. е. соответствующие операции объектов должны выполняться последовательно. В то же время при наличии нескольких потоков управления стабильное поведение объектов класса не гарантируется.
  •  Guarded (Безопасный) - означает, что при наличии нескольких потоков управления объекты класса будут вести себя ожидаемым от них образом. Для этого объекты в различных потоках должны взаимодействовать друг с другом для того, чтобы гарантировать отсутствие конфликта между ними.
  •  Active (Активный) - означает, что класс должен иметь свой собственный поток управления.
  •  Synchronous (Синхронный) - означает, что объекты класса будут вести себя ожидаемым от них образом при наличии нескольких потоков управления. При этом нет необходимости во взаимодействии объектов в различных потоках управления, поскольку объекты данного класса могут самостоятельно разрешать возможные конфликты.

Для того, чтобы специфицировать класс как абстрактный, т.е. не имеющий экземпляров, следует на этой же вкладке выставить отметку в свойстве Abstract (Абстрактный). Применительно к рассматриваемой модели для класса Транзакция банкомата следует выбрать свойства Persistent и Sequential, а отметку для свойства Abstract оставить пустой.

Следует заметить, что для предотвращения потери информации о разрабатываемой модели и результатов редактирования свойств ее графических элементов необходимо периодически сохранять модель во внешнем файле. Для этого следует выполнить операцию главного меню: FileSave (ФайлСохранить) или нажать комбинацию клавиш: Ctrl+S. Для этой же цели служит соответствующая кнопка на стандартной панели инструментов (см. табл. 1.1).

Стереотипы классов и их графическое представление

На разрабатываемой диаграмме классов выбран текстовый способ изображения стереотипов классов, при котором стереотип записывается в угловых кавычках выше имени соответствующего класса. Программа IBM Rational Rose 2003 позволяет альтернативно представлять стереотипы в форме специальных графических изображений (как в браузере проекта) или в форме небольших декоративных значков в верхней секции прямоугольника класса на диаграмме, а также вообще отказаться от изображения стереотипов.

Изменить изображение стереотипа для отдельного класса можно, например, с помощью одной из вложенных операций контекстного меню: OptionsStereotype Display (ПараметрыИзображение стереотипа). В качестве примера можно представить изображение класса Транзакция Банкомата в форме специальной графической пиктограммы стереотипа. С этой целью следует выполнить операцию контекстного меню: OptionsStereotype DisplayIcon (ПараметрыИзображение стереотипаПиктограмма). Соответствующее графическое изображение стереотипа <<entity>> для класса Транзакция Банкомата в форме пиктограммы будет иметь следующий вид (рис. 3.5, а).

Для сравнения можно выбрать изображение класса Транзакция Банкомата в форме декоративного графического стереотипа. С этой целью выполним операцию контекстного меню: OptionsStereotype DisplayDecoration (ПараметрыИзображение стереотипаДекорация). Соответствующее графическое изображение стереотипа <<entity>> для класса Транзакция Банкомата в форме декорации будет иметь следующий вид (рис. 3.5, б).


Рис. 3.5.  Графические способы изображения стереотипа <<entity>> для класса Транзакция Банкомата

Изменить изображение стереотипов одновременно для нескольких классов диаграммы можно с помощью одной из вложенных операций главного меню: FormatStereotype Display (ФорматИзображение стереотипов). В этом случае необходимо выделить все классы модели в окне диаграммы классов или в браузере проекта. Для выделения группы классов на диаграмме или в браузере проекта следует, удерживая нажатой клавишу Ctrl или Shift на клавиатуре, последовательно щелкать на их изображении левой кнопкой мыши.

Выделить все графические элементы на диаграмме классов, также как и на любой другой диаграмме модели, можно с помощью выполнения операции главного меню: EditSelect All (РедактированиеВыделить все) или с помощью комбинации клавиш Ctrl+А. Следует отметить, что выбор того или иного способа изображения стереотипов классов на диаграмме классов определяется разработчиком исходя из его личных предпочтений, и не оказывает влияния на содержательный аспект логического представления модели.

Продолжая разработку модели банкомата, добавим на диаграмму второй класс с именем Контроллер Банкомата, для которого в окне спецификации свойств выберем стереотип control (управляющий класс), а в качестве документации введем текст: "Реализует логику функционирования банкомата". При этом атрибуты и операции у данного класса будут отсутствовать. Соответствующий фрагмент диаграммы классов после добавления управляющего класса Контроллер Банкомата будет иметь следующий вид (рис. 3.6).


Рис. 3.6.  Фрагмент диаграммы классов модели банкомата после добавления на нее класса Контролер Банкомата

Продолжая разработку модели банкомата, добавим на диаграмму третий класс с именем Устройство чтения карточки, для которого в окне спецификации свойств выберем стереотип boundary (граничный класс). Применение этого стереотипа означает, что данный класс находится на границе моделируемой системы, в качестве которой рассматривается модель банкомата. После этого в секцию документации данного класса можно ввести поясняющий текст: "Устанавливается на банкомате".

Далее следует добавить класс с именем IКонтроллер Банка, для которого выбрать стереотип Interface (Интерфейс), означающий, что банкомат пользуется услугами Банка при обработке своих транзакций. Заметим, что первой буквой в имени этого класса является английское "I", которое служит в языке UML для указания интерфейса. Соответствующий фрагмент диаграммы классов после добавления на нее классов Устройство чтения карточки и IКонтроллер Банка будет иметь следующий вид (рис. 3.7).


Рис. 3.7.  Фрагмент диаграммы классов модели банкомата после добавления на нее классов Устройство чтения карточки и Контролер Банкомата

Практические действия по добавлению атрибутов и операций классов, редактированию их свойств, по добавлению отношений в процессе продолжения разработки диаграммы классов для модели банкомата, а также окончательный вид диаграммы классов для разрабатываемой модели банкомата будут рассмотрены в следующих лабораторных.


 

А также другие работы, которые могут Вас заинтересовать

81495. Биосинтез мочевины. Связь орнитинового цикла с ЦТК. Происхождение атомов азота мочевины. Нарушения синтеза и выведения мочевины. Гипераммонемии 382.01 KB
  Мочевина - основной конечный продукт азотистого обмена, в составе которого из организма выделяется до 90% всего выводимого азота. Экскреция мочевины в норме составляет 25 г/сут. При повышении количества потребляемых с пищей белков экскреция мочевины увеличивается.
81496. Обмен безазотистого остатка аминокислот. Гликогенные и кетогенные аминокислоты. Синтез глюкозы из аминокислот. Синтез аминокислот из глюкозы 162.72 KB
  В ходе катаболизма аминокислот происходит отщепление аминогруппы и выделение аммиака. Другим продуктом дезаминирования аминокислот служит их безазотистый остаток в виде α-кетокислот. Катаболизм аминокислот происходит практически постоянно. За сутки в норме в организме человека распадается примерно 100 г аминокислот, и такое же количество должно поступать в составе белков пищи.
81497. Трансметилирование. Метионин и S-аденозилметионин. Синтез креатина, адреналина и фосфатидилхолинов 166.74 KB
  Метальная группа метионина мобильный одноуглеродный фрагмент используемый для синтеза ряда соединений. Перенос метильной группы метионина на соответствующий акцептор называют реакцией трансметилирования имеющей важное метаболическое значение. Метальная группа в молекуле метионина прочно связана с атомом серы поэтому непосредственным донором этого одноутлеродного фрагмента служит активная форма аминокислоты. Реакция активация метионина Активной формой метионина является Sаденозилметионин SM сульфониевая форма аминокислоты...
81498. Метилирование ДНК. Представление о метилировании чужеродных и лекарственных соединений 108.02 KB
  Метилирование ДНК это модификация молекулы ДНК без изменения самой нуклеотидной последовательности ДНК что можно рассматривать как часть эпигенетическойсоставляющей генома. Метилирование ДНК заключается в присоединении метильной группы к цитозину в позиции С5 цитозинового кольца. У человека за процесс метилирования ДНК отвечают три фермента называемые ДНКметилтрансферазами 1 3 и 3b DNMT1 DNMT3 DNMT3b соответственно.
81499. Источники и образование одноуглеродных групп. Тетрагидрофолиевая кислота и цианкобаламин и их роль в процессах трансметилирования 168.87 KB
  Образование и использование одноуглеродных фрагментов. Ещё один источник формального и формиминофрагментов гистидин. Все образующиеся производные Н4фолата играют роль промежуточных переносчиков и служат донорами одноуглеродных фрагментов при синтезе некоторых соединений: пуриновых оснований и тимидиловой кислоты необходимых для синтеза ДНК и РНК регенерации метионина синтезе различных формиминопроизводных формиминоглицина и т. Перенос одноуглеродных фрагментов к акцептору необходим не только для синтеза ряда соединений но и для...
81500. Антивитамины фолиевой кислоты. Механизм действия сульфаниламидных препаратов 104.02 KB
  В медицинской практике в частности в онкологии нашли применение некоторые синтетические аналоги антагонисты фолиевой кислоты. Аминоптерин является наиболее активным цитостатикомантагонистом фолиевой кислоты; отличается высокой токсичностью вследствие чего показан лишь при тяжёлых формах псориаза. ПАБК необходима микроорганизмам для синтеза фолиевой кислоты которая превращается в фолиниевую кислоту участвующую в синтезе нуклеиновых кислот.
81501. Обмен фенилаланина и тирозина. Фенилкетонурия; биохимический дефект, проявление болезни, методы предупреждения, диагностика и лечение 261.77 KB
  Тирозин условно заменимая аминокислота поскольку образуется из фенилаланина. Метаболизм феиилаланина Основное количество фенилаланина расходуется по 2 путям: включается в белки; превращается в тирозин. Превращение фенилаланина в тирозин прежде всего необходимо для удаления избытка фенилаланина так как высокие концентрации его токсичны для клеток.
81502. Алкаптонурия и альбинизм: биохимические дефекты, при которых они развиваются. Нарушение синтеза дофамина, паркинсонизм 403.53 KB
  Нарушение синтеза дофамина паркинсонизм. Заболевание развивается при недостаточности дофамина в чёрной субстанции мозга. Для лечения паркинсонизма предлагаются следующие принципы: заместительная терапия препаратамипредшественниками дофамина производными ДОФА леводопа мадопар наком и др. подавление инактивации дофамина ингибиторами МАО депренил ниаламид пиразидол и др.
81503. Декарбоксилирование аминокислот. Структура биогенных аминов (гистамин, серотонин, γ-аминомасляная кислота, катехоламины). Функции биогенных аминов 239.46 KB
  Процесс отщепления карбоксильной группы аминокислот в виде СО2 получил название декарбоксилирования. В живых организмах открыты 4 типа декарбоксилирования аминокислот. αДекарбоксилирование характерное для тканей животных при котором от аминокислот отщепляется карбоксильная группа стоящая по соседству с αуглеродным атомом.