Подробное описание операций с помощью броузера

• Найдите в броузере класс OrderItem.

• Чтобы раскрыть этот класс, щелкните на значке "+" рядом с ним. В броузере появятся его атрибуты и операции.

• Дважды щелкните на операции GetIInfo(), чтобы открыть окно ее спецификации.

• В раскрывающемся списке Return class (возвращаемый класс) укажите String.

• Щелкните на кнопке ОК, закрыв окно спецификации операции.

• Дважды щелкните в броузере на операции SetInfo класса OrderItem, чтобы открыть окно ее спецификации.

• В раскрывающемся списке Return class укажите Boolean.

• Перейдите на вкладку Detail (Подробно).

• Щелкните правой кнопкой мыши на белом поле в области аргументов, чтобы добавить туда новый параметр.

• В открывшемся меню выберите пункт Insert. Rose добавит туда аргумент под названием argname.

• Щелкните один раз на этом слове, чтобы выделить его, и измените имя аргумента на ID.

• Щелкните на колонке Type, открыв раскрывающийся список типов. В нем выберите тип Integer.

• Щелкните на колонке Default, чтобы добавить значение аргумента по умолчанию. Введите туда число 0.

• Нажмите на кнопку ОК, закрыв окно спецификации операции.

• Дважды щелкните на операции Create() класса OrderItem, чтобы открыть окно ее спецификации.

• В раскрывающемся списке Return class укажите Boolean.

• Нажмите на кнопку ОК, закрыв окно спецификации операции.

Подробное описание операций с помощью любого из описанных методов

• Используя броузер или диаграмму Классов, введите следующую сигнатуру операций класса OrderDetail:

Open() : Boolean

SubmitInfo() : Boolean

Save() : Boolean

• Используя броузер или диаграмму Классов, введите следующую сигнатуру операций класса OrderOptions:

Create() : Boolean

• Используя броузер или диаграмму Классов, введите следующую сигнатуру операций класса OrderMgr:

SaveOrder(OrderID : Integer) : Boolean

• Используя броузер или диаграмму Классов, введите следующую сигнатуру операций класса TransactionMgr:

SaveOrder(OrderID : Integer) : Boolean

Commit() : Integer

Упражнение 5 . Создание диаграмм классов (добавление связей между классами)

В этом упражнении будут определены связи между классами, участвующими в варианте использования "Ввести новый заказ".

 

Добавление связей

Добавим связи к классам, принимающим участие в варианте использования "Ввести новый заказ".

Этапы выполнения упражнения

Настройка

• Найдите в броузере диаграмму Классов "Ввод нового заказа"

• Дважды щелкните на ней, чтобы открыть ее.

• Проверьте, имеется ли на панели инструментов диаграммы кнопка Unidirectional Association. Если ее нет, продолжайте настройку, выполнив этапы 4 и 5. Если есть, приступайте к выполнению самого упражнения.

• Щелкните правой кнопкой мыши на панели инструментов диаграммы и в открывшемся меню выберите пункт Customize.

• Добавьте на панель кнопку , называющуюся Create A Unidirectional Association.

Добавление ассоциаций

• Нажмите кнопку панели инструментов Unidirectional Association.

• Нарисуйте ассоциацию от класса ВыборЗаказа (OrderOptions) к классу ДеталиЗаказа (OrderDetail).

• Повторите этапы 1 и 2, создав еще ассоциации:

# От класса OrderDetail к классу МенеджерЗаказов (OrderMgr)

# От класса OrderMgr к классу Заказ (Order)

# От класса OrderMgr к классу МенеджерТранзакций (TransactionMgr)

# От класса TransactionMgr к классу Order

# От класса TransactionMgr к классу ПозицияЗаказа (OrderItem)

# От класса Order к классу OrderItem

• Щелкните правой кнопкой мыши на однонаправленной ассоциации между классами OrderOptions и OrderDetail, со стороны класса OrderOptions.

• В открывшемся меню выберите пункт Multiplicity > Zero or One.

• Щелкните правой кнопкой мыши на другом конце однонаправленной ассоциации.

• В открывшемся меню выберите пункт Multiplicity > Zero or One.

• Повторите этапы 4 - 7, добавив на диаграмму значения множественности для остальных ассоциаций, как показано на рисунке 11.

 

 

Рис. 11. Ассоциации сценария "Ввести новый заказ".