В настоящее время я работаю над диаграммой последовательности для системы аукционов, которая выступает посредником между клиентами и компаниями.Разработка диаграммы последовательности для аукционной системы
Однако у меня возникли трудности с дизайном системы, и я был бы признателен за некоторые рекомендации, особенно если я попытаюсь затянуть диаграмму UML.
Вся идея системы заключается в том, что клиент создает бронирование через мобильное приложение, которое загружается в приложение аукциона, где компании могут предлагать цену за него. Если компания выигрывает заявку, приложение аукциона дает им ценовой диапазон, в котором они могут дать клиенту котировку (т. Е. Если компания A выиграет заявку на кошение газона клиента X, то приложение аукциона устанавливает ценовой диапазон от 15 до 20 долларов США для работы, а котировка компании A должна находиться между этим диапазоном). Затем клиент может принять предложение и продолжить работу или отклонить ее.
шаги заключаются в следующем:
1. Customer creates a booking on booking app
1.1 Booking app saves booking (recursive as customer can save more than one
booking)
1.2 Job is uploaded to auction app where other companies can bid for it. In the
next step, a company will bid for job.
In the event of an unsuccessful bid:
2. Company makes bid for job on auction application
2.1 Message sent to company telling them that they failed to win the job
In the event of a successful bid:
3. Company makes bid for job on auction application
3.1 Message sent to company telling them that they won the job
4. Auction app sends price limit message for the job that the company has just
won (to prevent overcharging). In the next step, the company needs to set a
quote
In the event that a customer rejects a set quote
5. Company sets quote for the job that they won
5.1 Auction app sends the quote message to the auction app
6. Quote displayed to customer on mobile application
7. Customer rejects the quote
7.1 The rejection message is sent to the auction app
8. The rejection message is displayed to the company
In the event that a customer accepts a set quote
9. Company sets quote for the job that they won
9.1 Auction app sends the quote message to the auction app
10. Quote displayed to customer on mobile application
11. Customer accepts the quote
11.1 The acceptance message is sent to the auction app
12. The acceptance message is displayed to the company
13. End booking process
Это UML-схема:
У меня 3 вопроса:
- Когда
BidSuccess=False
(т.е. заявка компании на работу не удалась), они могут выбрать ставку на другую работу и выиграть (поэтому, войдя в филиалBidSuccess=True
). Возможно ли это передать на диаграмме последовательности. Если да, то как? - На шагах 5-13 существует много избыточности, может ли схема последовательности лучше конструироваться здесь? Как бы я пошел на слияние 5,5,1,6 и 9,9,1,10, но позволил им вернуть разные результаты в зависимости от
CustomerAcceptQuote
. - Возможно, моя самая большая проблема заключается в том, поставил ли я петлю/альт-охранник на место. Я думаю, что использовал их правильно, но, пожалуйста, поправьте меня, если они не будут.
Спасибо, что нашли время, чтобы прочитать это.