Представление типов предложений с диаграммой UML - PullRequest
1 голос

Я хочу создать диаграмму uml, которая может представлять предложения, как показано ниже:

"21/03/2020 года пекарь А приобрел у компании по производству муки 20 кг муки типа ААА за 1,20 евро. за килограмм, который он позже использовал для производства 70 кусков хлеба, которые он затем продал различным покупателям своего магазина 23/03/2020 по цене 1,10 евро за штуку. "

Ниже вы можете увидеть мои первые мысли. Это довольно общее, я еще не добавил атрибутов. Моя проблема в том, что я не уверен, как представить, что 2 разных человека совершают транзакцию, покупатель (ie пекарь A) и продавец (компания B), и как показать этого человека (ie пекарь A) может быть как покупателем (ie он покупает у B), так и продавцом (ie A продает хлеб потребителям):

enter image description here

enter image description here

Ответы [ 2 ]

1 голос
/ 30 марта 2020

Первое замечание: диаграмма классов UML может представлять только типы предложений , но не конкретное предложение c, которое, однако, может быть представлено так называемым ' Диаграмма объектов '.

Как представить, что сделку совершают 2 разных человека: покупатель (ie пекарь A) и продавец (компания B)

You Вы уже представили это в своей диаграмме второго класса с ассоциациями между Buyer / Seller и Transaction, но так как вы также определили Buyer и Seller для формирования перекрывающейся сегментации Trader, вы необходимо добавить ограничение "покупатель отличается от продавца" к вашему классу Transaction.

Для полноты вы также должны добавить кратности на обоих концах этих двух ассоциаций "один ко многим" ("1") на конце Buyer / Seller и "*" на конце Transaction).

Как показать, что кто-то (ie пекарь А) может быть одновременно и покупателем (ie он покупает у B) и продавец (ie A продает хлеб покупателям)

Это уже возможно согласно вашей второй диаграмме, где каждые Buyer и Seller являются Trader, и эта сегментация перекрывается (по умолчанию), и, следовательно, трейдер может быть покупателем. в одной транзакции и продавец в другой.

0 голосов
/ 28 марта 2020

Существует гораздо больше типов диаграмм, чем диаграмм классов. Есть ли у вас какие-либо ограничения, что это должна быть одна диаграмма? Если так, то почему? Каждый тип диаграммы ориентирован на определенный вид проектируемой системы, поэтому они go вместе. Целью UML не является отображение всей информации на одной диаграмме. Например, попробуйте дополнить свою диаграмму диаграммой активности или диаграммой последовательности. Вы найдете это полезным.

как показать, что кто-то (ie пекарь А) может быть как покупателем (ie он покупает у Б), так и продавцом (ie А) продает хлеб клиентам)

Вы сделали это уже с абстракцией Trader.

Я не уверен, как представить, что 2 разных человека делают транзакция, покупатель (ie пекарь A) и продавец (компания B)

Просто добавьте их к Transaction в качестве атрибутов.

Подсказка: отношение "Единица / Цена / продукт "не соответствует UML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...