Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.Н. Половикова. Методическое пособие по UML.doc
Скачиваний:
35
Добавлен:
18.03.2016
Размер:
764.42 Кб
Скачать

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

Перейдите на диаграмму последовательности «Наполнить виртуальную корзину».

Определим методы классов:

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

  1. Щелкните правой кнопкой на сообщении 1 (Начать заполнение).

  2. В открывшемся меню выберите пункт <new operation> (<создать операцию>). Появится окно спецификации операции.

  3. В поле имени введите имя операции – Begin_to_input. В поле возвращаемый тип выберите тип Boolean

  4. Нажмите на кнопку ОК, чтобы закрыть окно спецификации операции и вернуться на диаграмму.

  5. Повторите шаги с 1 по 4 для соотнесения всех оставшихся сообщений на диаграмме последовательности с операциями на диаграмме классов:

Сообщение 2: соотнести с операцией Display(List_catalogues : List_of_Catalogues), возвращаемые тип: Boolean. Для того чтобы указать передаваемый параметр (List_catalogues) для операции, следует в окне Operation Specification (Спецификация операции) перейти в закладку Detail (Детали), указать название атрибута: List_catalogues и тип List_of_Catalogues.

Сообщение 3: Select_catalogues(N_catolgues : Integer), возвращаемый тип: Integer.

Сообщение 4: To_display_goods( ), тип Boolean.

Сообщение 5: Display(List_goods : List_of_Goods), тип: Boolean..

Сообщение 6: Select_goods(N_goods : Integer), тип: Integer.

Сообщение 7: To_display_information_of_goods(N_goods : Integer), тип: Goods.

Сообщение 8: Display(Information_of_goods : Goods), тип: Boolean.

Сообщение 9: Confirm_select( ) (Подтвердить выбор), тип: Boolean.

Сообщение 10: Insert_good_to_basket(N_goods : Integer, Count_goods : Integer), тип: Boolean.

Сообщение 11: Refresh(Information_basket : Basket, Summa : Double), тип: Double. Видимость для данной операции следует указать: Privet.

Сообщение 12: Display(Information_basket : Basket, Summa : Double), тип Boolean.

Сообщение 13: End_to_input( ), тип Boolean.

Определим атрибуты классов:

Определим атрибуты для класса Basket (Корзина), исходя из анализа имён существительных в документации к диаграмме прецедентов.

  1. Перейдем на диаграмму классов «Наполнить виртуальную корзину».

  2. Двойным щелчком мыши откроим окно Class Specification for Basket.

  3. Перейдем в закладку Attributes.

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

  5. В появившемся окне укажем имя атрибута - Num_basket, тип: Integer, Начальное значение: 1, Видимость: Public.

  6. Нажмём кнопку OK.

Анализ построенных классов показал необходимость создания двух новых классов: User (Пользователь) и класс Order (Заказ). Класс User нужен для спецификации каждого объекта класса Виртуальная корзина с конкретным заказчиком (пользователем). Класс Order нужен для сохранения в Корзине информации по всем выбранным товарам с указанием его количества. Для класса User (Пользователь) следует определить 4 атрибута: Last_name: String, First_name: String, Ser_name: String, Num: Integer; для класса Order (Заказ) 2 атрибута: Goods: Goods, N_goods: Integer. Видимость атрибутов для классов должна быть как на рис. 4L.2. Диаграмма последовательности должна выглядеть как на рис. 4L.3.

Самостоятельно продолжите разработку диаграммы классов:

  1. определите необходимые атрибуты для классов: Goods, Forma_of_Input_Output, List_of_Goods, List_of_Catalogues.

  2. создайте недостающие классы (например, классы Organization (Юридическое лицо) и Individual (Физическое лицо)).