Зачем создавать запись в базе данных Заказа до того, как Клиент завершит размещение Заказа?

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

Одна из вещей, которую я не могу понять, это то, почему система создает уникальную запись Order для потенциального клиента еще до того, как клиент разместит заказ.

Итак, что происходит, когда заказ поступает и выбирает, что он хочет купить, а затем, до того, как отображается кнопка Place your order, запись заказа уже сохраняется для потенциального клиента.

В результате этого — что меня беспокоит — в системе тысячи брошенных заказов, когда пользователь так и не нажал последнюю кнопку Place your order, чтобы завершить распродажа.

Разве запись о заказе не должна создаваться только после того, как пользователь нажмет "Разместить заказ"? Зачем делать иначе?


person Francis Macomber    schedule 20.02.2011    source источник


Ответы (3)


Судя по тому, что вы сказали, приложение предоставляет очень полезный функционал. Он запоминает все, что выбрал пользователь, поэтому он может закрыть страницу, проверить другие торговые точки, подумать еще, вернуться на ваш сайт и увидеть свой заказ, сохраненный для него.

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

person Nikita Rybak    schedule 20.02.2011
comment
+1. Это также ожидаемая базовая функциональность. Если клиенту нужно отказаться от заказа (например, чтобы разобраться с моими непослушными детьми...), он должен иметь возможность вернуться позже и закончить свой заказ, не беспокоясь о тайм-ауте сеанса. - person David; 20.02.2011

Фрэнсис, для этого есть много причин, первая и главная из которых — аналитика, и хотя есть и другие способы добиться этого, это хороший способ узнать (а) был ли отказ от заказа и (б) на каком этапе процесса . Это также хорошо для того, чтобы позволить пользователю вернуться и «оформить заказ» через 2 дня :)

person VisualStudioTutorials.com    schedule 20.02.2011

Работает ли система в обычном режиме электронной коммерции с отдельными объектами «корзина» и «заказ»? Или он работает, просто создавая сущность заказа, когда пользователь добавляет элементы в свой заказ, а затем завершает это?

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

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

person Stephen    schedule 04.03.2011