Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TRPP_gotovoe.doc
Скачиваний:
4
Добавлен:
11.11.2019
Размер:
769.02 Кб
Скачать

Заказ от одного клиента

Клиент в течение некоторого времени может сделать несколько заказов

Каждый из этих заказов может содержать несколько строк заказа, причем каждая строка должна соответствовать единственному товару.

Каждая из ассоциаций имеет два конца. Каждый из концов присоединен к одному из классов этой ассоциации. Конец ассоциации может быть явно помечен некоторой меткой. Такая метка называется именем роли. Часто концы ассоциаций называются ролями.

Например, конец ассоциации от класса «Заказ» к классу «Строка заказа» имеет название позиция заказа.

Если такая метка отсутствует, концу ассоциации присваивается имя класса цели.

Конец ассоциации также обладает кратностью, которая показывает сколько объектов может участвовать в данном отношение.

«*» возле класса задач для ассоциации между «Заказ» и «Клиент» показывает, что с одним и тем же клиентом может быть связано много заказов.

«1» - показывает, что каждый из заказов может поступать только от одного клиента.

В общем случае кратность указывает верхнюю и нижнюю границу количества объектов, которые могут участвовать в отношении.

Символ * означает диапазон 0 . . ∞ - клиент может не сделать ни одного заказа, но верхний предел количества заказов, сделанных одним клиентом, неограничен.

С точки зрения спецификаций ассоциация представляет собой ответственность классов.

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

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

Очевидно, ассоциация несет ответственность за обновление соответствующего отношения.

На диаграмме представлен типичный пример обобщения, который включает индивидуального и корпоративного клиентов. И хотя они обладают некоторыми различиями, у них много общего и одинаковые свойства помещают в класс «Клиент».

Полезные советы по использованию диаграмм классов

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

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

  • на этапе анализа строится концептуальная модель;

  • если работа с конкретным программным обеспечением – используется модель спецификаций;

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

Диаграмма взаимодействия

Предназначена для описания поведения взаимодействия групп объектов.

Существует два вида диаграмм взаимодействия:

  • диаграмма последовательности;

  • диаграмма кооперации.

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

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

объект

Диаграмма последовательности

Управляющая информация представляется двумя способами:

  1. существует некоторое условие, которое указывает когда сообщение может быть передано. Сообщение посылается только, если это условие «истинно».

  2. может оказаться полезным некоторый управляющий маркер, называемый маркером итерации. Он показывает, что сообщение посылается несколько раз для множества принимающих объектов. Такая итерация указывается в [ ] с предшествующей *.

На диаграммах может иметь место возврат, который указывает не новое сообщение, а возврат от переданного ранее сообщения. Возврат изображается пунктирной линией (-----).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]