Магазин на медленной сети ловит два заказа с одной корзины: гость ткнул «оплатить» дважды. Студия ловит две заявки и два слота на одно имя.
Страх «вдруг не нажалось» и жадность кнопки без защиты оставляют двойную сборку. В ТЗ пишут: второй клик молчит, тот же жест, тот же номер. На этой неделе запретите двойной заказ и проверьте кнопку на 4G, не на кабеле.
Проблема
Владелец магазина боится, что гость подумает «не нажалось», и просит кнопку живой даже после клика. Владелец студии стыдится надписи «отправляем» и оставляет «записаться» активной. Жадность общая — не делать «сложную защиту». На 4G ответ сервера едет три секунды. Палец бьёт ещё раз. Две оплаты или два письма. Сборка фасует вдвойне. Запись ставит два окна. Гость не виноват. В ТЗ не было «второй клик — тот же жест».
Двойной клик — штатный жест телефона, не редкость дурака. В задании: после первого нажатия кнопка не создаёт второй заказ и вторую заявку, показывает «отправляем», повтор ведёт к тому же номеру. Это принимают на медленной сети. Не принимают «ну не надо два раза жать» как инструкцию гостю. Гостю инструкцию не читают в лифте. Кнопка должна быть глухой ко второму удару сама.
Причина
Магазин: 1–3 двойных оформления в неделю на запуске при живой рекламе — уже не ноль. Каждое — час разбора и риск двойного списания. Студия: двойная заявка в волну — два слота одному человеку, дыра в календаре. Защита в ТЗ и в прототипе — полдня. Разбор без защиты — каждый пик. Смета оплаты без этого пункта продаёт виджет, не кассу.
Масштаб. На 40 карточках и простой корзине правило одно на кнопку «оформить» и «оплатить». На 8 услугах — на «отправить» и «занять окно». Не плодят разные поведения. Связь с резервом номера: второй клик обязан попасть в тот же номер, иначе защита косметическая. В задании оба пункта рядом. Тест только на кабеле врёт: двойной клик живёт там, где долго крутится кружок. Магазин на 10–30 оформлениях в день ловит второй удар чаще в акцию. Студия — в волну записи, когда 4G слабый. В прототипе тот же запрет: два удара, один жест. Если в сером кнопка ещё живая после клика, серое врёт кассе. Приёмку ставят после двух ударов на 4G: одно письмо, один номер, одно списание или один слот.
- Второй клик — тот же заказ или заявка, не соседний.
- Кнопка после первого удара не плодит жест.
- Магазин: две оплаты одной корзины запрещены.
- Студия: два слота на одно отправление запрещены.
Решение
Нажмите кнопку дважды на мобильной сети. Магазин — оплатить. Студия — отправить заявку. Сколько писем и номеров пришло — то и чинят в ТЗ.
- Запишите в ТЗ: после первого клика второй не создаёт сущность.
- Опишите, что видит палец: «отправляем», кнопка немая, не новая форма.
- Свяжите с резервом номера: тот же номер, не +1.
- Проверьте на 4G, не на кабеле офиса. Кабель прячет удар.
- В приёмку: два удара — одно письмо вам и одно гостю.
Проверка
Фраза магазина: «Два нажатия «оплатить» — один заказ, один номер, одно списание». Фраза студии: «Два нажатия «отправить» — одна заявка, один слот». Положите фразы в ТЗ. Если подрядчик говорит «это же очевидно, не пишите», именно пишите: без строки не принимают.
Остановитесь, когда двойной удар на 4G даёт один жест в журнале. Не учите гостя «не нажимайте дважды». Не оставляйте защиту только на главной кнопке, забыв оплату. Пока второй удар плодит соседа, кассу и запись в задании не закрывают.
Чек-лист
- Запишите в ТЗ: после первого клика второй не создаёт сущность.
- Опишите, что видит палец: «отправляем», кнопка немая, не новая форма.
- Свяжите с резервом номера: тот же номер, не +1.
- Проверьте на 4G, не на кабеле офиса. Кабель прячет удар.
- В приёмку: два удара — одно письмо вам и одно гостю.
Назад в раздел
