Report - VasilyShaytan/DSA GitHub Wiki
Разработать архитектуру для ПО системы закупки и доставки роботов в школы
Система позволяет клиенту (представителю школы) оформлять онлайн-заказ закупки роботов и компонентов у менеджера доставки(представитель компании). Менеджер осуществляет сбор и отправку компонентов со своего склада, либо при нехватке компонентов на складе менеджер делает заказ у поставщиков роботов и компонентов.
- Клиент - представитель школы. Оформляет заказ у менеджера на приобретение необходимых роботов (роботы и робототехнические изделия в дальнейшем будем называть товаром) и компонентов. Роботы оформляются в виде некоторого количества единиц компонентов.
- Менеджер доставки получив заказ проверяет наличие компонентов заказа на собственном складе. При наличии товаров на складе менеджер проверяет их на качество и формирует доставку. При отсутствии, либо несоответствии товаров качеству менеджер делает заказ у поставщиков (возможно сразу необходимое количество для поддержания всего склада при наличии множества клиентов).
- Поставщики осуществляют доставку товаров на склад менеджера с собственных.
Клиент формирует заказ на поставку, указывая объемы и необходимое количество единиц
Клиент подтверждает заказ
Менеджер получает заявку на оформление заказа
Менеджер подсчитывает стоимость
Менеджер оповещает клиента о цене
Клиент оплачивает 30% стоимости заказа
Менеджер делает проверку наличия товаров на складе
Менеджер подтверждает наличие товаров на складе
Клиент оплачивает всю стоимость
Менеджер отправляет заказ
Клиент подтверждает принятие заказа
Клиент отправляет заявку на отмену заказа
Менеджер обрабатывает заказ на отмену
Происходит приостановка сбора товаров
Менеджер взимает 15% стоимости заказа и возвращает клиенту остальные 15%
Проверка наличия товаров складе
При наличии товаров оформляем доставку
При отсутствии товаров подсчитываем необходимое количество и оформляем заказы у поставщиков на закупку дополнительного товара (необходимо поддержание минимального количества компонентов, которые должны быть всегда на складе)
Поставщики принимают заявки у менеджера
Поставщики вычисляют стоимость каждой заявки
Поставщики делают сбор товаров и производят доставку
Менеджер подтверждает принятие доставок
Менеджер оплачивает доставки
https://www.gliffy.com/go/share/sorc62ct439ei772awoj
- Клиент заходит в систему и просматривает каталог всех имеющихся товаров. Про каждый товар имеется описание о имеющемся количестве на складе менеджера и цене за единицу товара
- Клиент выбирает необходимые товары с указанием количества каждого, вносит данные о школе и отправляет заявку
- Менеджер получает заявку, связывается с клиентом и договаривается о сроках передачи заказа и стоимости, возможных рисках (отмена заказа, задержка заказа) и способах оплаты
- Клиент вносит 30% оплату, для этого пользуется электронными деньгами или банковской картой
- Менеджер проверяет наличие необходимых товаров на складе (сбор необходимого товара). Менеджер вносит в базу данных изменения касательно выбранных товаров и переназначает их количество. Товары и заявки располагаются в базе денных
- Менеджер оформляет доставку конечному клиенту (подтверждает второй раз)
- Клиент осуществляет полную оплату
- При доставке товаров клиенту, клиент подтверждает заказ
- Менеджер переносит заказ в архив
Альтернатива: Изменение выбранных позиций в заказе.
В пунктах 2 и 3 при подтверждении заказа клиент может в течении некоторого времени вернутся и переоформить заказ, если чего-то недостает, или требуется что-то изменить
Альтернатива: Изменение способа оплаты на этапе Возможны альтернативные методы оплаты заказа Альтернатива: Недостает количество товаров В пункте 6 менеджер может изменить сроки доставки, если сам заметит недостающее количество привезенных товаров Альтернатива: Бракованный заказ В пункте 8 может быть ошибка при заказе, в данном случае клиент может перезаказать, указав при этом причины.
- Если до пункта 7 клиент передумал насчет заказа, то клиент отправляет заявку на отмену заказа
- Менеджер получает заявку на отмену
- Менеджер договаривается с клиентом и возвращает ему около 20% предоплаты, остальное забирает себе
- Менеджер приостанавливает сбор товаров. Менеджер вносит данные в базу
- Менеджер отменяет заказ и переносит его в архив
- Менеджер проверяет товары на складе
- При отсутствии товаров менеджер формирует заявки поставщикам
- При браке товаров на складе менеджер также формирует необходимые заявки поставщикам
- Менеджер отправляет заявки
- Поставщики принимают заявки
- Поставщики договариваются о сроках доставки на склад и стоимости всех товаров
- Поставщики доставляют товары на склад
- Менеджер оплачивает доставки Альтернатива: Брак Менеджер переоформляет доставку в случае недоставки части товаров или их браке. Происходит пересчет оплаты.
https://go.gliffy.com/go/publish/11901272 https://www.gliffy.com/go/share/s5a7eev4xejnkwg1iu9o
Диаграмма основных функций создания (товара, заказа, платежа)
https://www.gliffy.com/go/share/sf5oqwkw2qmttyiksqfn
Диаграмма функция создания и оформления заказов
https://www.gliffy.com/go/share/s66k02ttuqwyp5onwq10
Диаграмма функции предзаказа
https://www.gliffy.com/go/share/slt8c7hloykqvwdpm5oc