Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Евгений / идз1 / Пособие_Об_анал1.doc
Скачиваний:
16
Добавлен:
31.03.2015
Размер:
1.1 Mб
Скачать

Человек-клерк по заказам - заказ-экземпляр строки заказа -экземпляр товара

Рассмотрим обязанности "человека" и "клерка по заказам"; обязанности других объектов уже рассмат­ривались ранее.

Человек

Ранее использовалась схема, изображенная на рис. 2.20.

Рис. 2.20. Человек — для магазина

Определим обязанности данного объекта.

Что я знаю.

  • Сходство: имя, адрес, телефон.

Кого я знаю.

— Добавляется: клерк по заказам (актер-участник), клиент для связи (актер-участник).

Что я делаю: выполняю основные действия.

Результат показан на рис. 2.21.

Рис. 2.21. Человек — для центра заказов

Клерк по заказам

Используем повторно аналогичные классы. Прежде мы работали с объектом cashier (кассир) (рис. 2.22).

Рис. 2.22. Кассир — для магазина

По аналогии определим обязанности клерка по заказам.

Что я знаю.

  • Сходство: номер (достаточно для данного приложения).

Кого я знаю.

— Сходство: человек (актер-участник).

  • Добавляется: заказы (участник-транзакция).

Что я делаю.

— Сходство: оцениваю за интервал времени производительность, количество (денег), количество (заказов). Результат изображен на рис. 2.23.

Рис. 2.23. Клерк по заказам — для центра заказов

Человек-клиент для связи - заказ-экземпляр строки заказа - экземпляр товара

В данном случае нужно определить обязанности только для объекта customer contact (клиент для связи).

Клиент для связи

Это абсолютно новый объект, которого не было в приложениях для магазина и склада. Однако уже создан другой объект — "участник" (абстракция человека). Определим его обязанности и возможности их использования в данной модели.

Что я знаю.

  • Добавляется: номер прямого телефона.

Кого я знаю.

— Сходство: заказы (участник-транзакция).

— Добавляется: человек (актер-участник), заказ (участник-транзакция), клиент (группа-член

группы).

Что я делаю.

— Сходство: количество (денег и заказов) за интервал времени, количество (заказов)

за интервал времени.

Результат показан на рис. 2.24.

Рис. 2.24. Клиент для связи — для центра заказов

Актер – участник – транзакция - следующая транзакция-экземпляр строки следующей транзакции - экземпляр товара

Организация – клиент – заказ - поставка-экземпляр строки поставки -экземпляр товара

Обязанности всех перечисленных объектов, кроме поставки и экземпляра строки поставки, уже рассматривались выше.

Поставка

Рассмотрим обязанности этого объекта. Что я знаю: дата. Кого я знаю: склад (участник-транзакция), экземпляры строки поставки (транзакция-экземпляр строки транзакции). Что я делаю: выполняю основные действия. Результат изображен на рис. 2.25.

Рис. 2.25. Поставка — для центра заказов

Экземпляр строки поставки

Рассмотрим обязанности этого объекта.

Что я знаю: количество.

Кого я знаю: поставка, экземпляр строки заказа.

Что я делаю: выполняю основные действия.

Результат показан на рис. 2.26.

Рис. 2.26. Экземпляр строки поставки — для центра заказов

Экземпляр строки транзакции - экземпляр строки следующей транзакции

Экземпляр строки заказа - экземпляр строки поставки.

Обязанности этих объектов были определены ранее.

Член группы Клиент-клиент для связи

Эти два объекта уже рассматривались выше. Клиент — это группа, а клиент для связи — член данной группы.

Что может делать клиент среди множества клиентов, которому он принадлежит? Он может ис­кать активного в данный момент клиента для связи. Однако мы на время отложим изучение этого вопроса.

Актер-участник/группа - член группы/контейнер- экземпляр строки контейнера - экземпляр товара

Организация - дистрибьютор-склад — экземпляр строки склада -экземпляр товара

Обязанности объектов "организация" и "экземпляр товара" уже были изучены ранее. Определим те­перь обязанности остальных.

Дистрибьютор

Дистрибьютор — новый объект. Его можно считать большим контейнером, включающим в себя скла­ды, экземпляры товаров, клерков по заказам и клиентов. Определим его обязанности.

Что я знаю: имя.

Кого я знаю: склад (группа-член группы), клерк по заказам (группа-член группы), клиент (группа-член группы), экземпляры товаров (группа-член группы).

Что я делаю. Используем следующую стратегию.

#93. Стратегия "Вопрос, вычисление, отбор"

Для объекта нужно выяснить:

Какие вопросы можно задать?

Какие вычисления можно произвести? Какой текущий контроль нужно осуществлять в дальнейшем? Какие вычисления можно произвести во всем множестве (позволяя каждому работнику выполнить свою часть дела)?

Какой отбор можно произвести на всем множестве (также позволяя каждому работнику выполнить свою часть дела)?

Вопросы:

— о количестве (заказов) за период времени;

  • о количестве (денег) за период времени.

Вычисления (за период времени):

— степени заполнения склада;

— процента находящихся в запасе (заказов).

Что касается отбора, то данный объект, будучи множеством складов, может потребовать от каж­дого склада оценить свою степень "удобства" для конкретного клиента (например, в зависимости от близости к нему).

Добавим объекту distributor службу:

— выбор (лучшего) склада для заказа. Добавим объекту warehouse службу:

— оценка собственного "удобства" для клиента. Виды отбора:

— определить клиента по номеру;

  • определить экземпляр товара по номеру. Добавим эти обязанности к модели (рис. 2.27).

Рис. 2.27. Дистрибьютор — для центра заказов

Склад

Применим управление представлением для повторного использования того, что уже было сделано прежде. На рис. 2.28 изображено то, что мы имеем.

Рис. 2.28. Склад — для приложения склада

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

Что я знаю.

  • Повторное использование: имя.

Кого я знаю.

— Добавляется:

заказы (участник-транзакция), экземпляр строки склада (транзакция-экземпляр строки транзакции).

Что я делаю.

— Добавляется: выбрать новый заказ, количество (заказов) за период времени.

—Добавляется: приемлемость ставки для клиента (определяется при рассмотрении обязанностей дистрибьютора). Результат показан на рис. 2.29.

Рис. 2.29. Склад — для центра заказов

Соседние файлы в папке идз1